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 | ARI 1 - 3 MIA | MIA | 0.573 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | ARI 1 - 4 MIA | MIA | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 7 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5731 |
| 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.061 | 6.187 | - | Base ML historical model prediction |
| 2 | variance_applied | 3 | 6 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 1 | 3 | 0.5731 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 1 | 3 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 1 | 3 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 1 | 4 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.5068942190305207,
"base_low_score_probability": 0.41831238779174146,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.08858183123877922,
"confidence": 0.7058800000000001,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.2117600000000002
},
"prediction": "low_scoring",
"expected_total_runs": 4,
"pre_simulation_expected_total_runs": 7.0,
"low_score_model_expected_total_runs": 7.0,
"final_simulation_total_runs": 5,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 91,
"near_bucket_sample_size": 25,
"medium_bucket_sample_size": 91,
"wide_bucket_sample_size": 174,
"global_sample_size": 174,
"bucket_scope": "pooled_0.08",
"sparse_bucket": false,
"empirical_hit_rate": 0.5604,
"bayesian_hit_rate": 0.5505,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8349,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6275,
"calibrated_pick_probability": 0.5731,
"predicted_side": "home"
}{
"applied": false,
"home": {
"team": "MIA",
"games": 68,
"wins": 33,
"losses": 35,
"win_pct": 0.4852941176470588,
"runs_scored": 294,
"runs_allowed": 302,
"run_differential": -8,
"run_differential_per_game": -0.11764705882352941,
"available": true
},
"away": {
"team": "ARI",
"games": 67,
"wins": 34,
"losses": 33,
"win_pct": 0.5074626865671642,
"runs_scored": 289,
"runs_allowed": 311,
"run_differential": -22,
"run_differential_per_game": -0.3283582089552239,
"available": true
},
"run_differential_edge_per_game": 0.2107,
"win_pct_edge": -0.0222,
"quality_edge": 0.1775,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "MIA",
"guardrail_predicted_team": "MIA",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "MIA",
"output_opponent_team": "ARI",
"final_score_winner": "MIA",
"pre_simulation_winner": "MIA",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 1,
"home_runs": 3,
"score_text": "ARI 1 - 3 MIA",
"winner": "MIA"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 4,
"score_text": "ARI 1 - 4 MIA",
"winner": "MIA"
},
"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": "MIA",
"games": 68,
"wins": 33,
"losses": 35,
"win_pct": 0.4852941176470588,
"runs_scored": 294,
"runs_allowed": 302,
"run_differential": -8,
"run_differential_per_game": -0.11764705882352941,
"available": true
},
"away": {
"team": "ARI",
"games": 67,
"wins": 34,
"losses": 33,
"win_pct": 0.5074626865671642,
"runs_scored": 289,
"runs_allowed": 311,
"run_differential": -22,
"run_differential_per_game": -0.3283582089552239,
"available": true
}
}
}{
"applied": true,
"raw_margin": 2.1766,
"final_margin": 1.5,
"margin_cap": 1.5,
"season_quality_edge": 0.1775,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 1.337,
"home_runs": 2.837
}
}{
"applied": false,
"raw_confidence": 0.573148,
"final_confidence": 0.573148,
"confidence_cap": 0.66,
"score_gap": 1.5,
"calibration_sample_size": 91,
"calibration_empirical_hit_rate": 0.5604,
"calibration_bayesian_hit_rate": 0.5505,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.1775,
"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": 1,
"home_runs": 3,
"score_text": "ARI 1 - 3 MIA",
"winner": "MIA"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 4,
"score_text": "ARI 1 - 4 MIA",
"winner": "MIA"
},
"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": 1,
"home_runs": 3,
"confidence": 0.573148,
"home_win_probability": 0.573148,
"away_win_probability": 0.426852,
"predicted_score_text": "ARI 1 - 3 MIA",
"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": "ARI",
"original_runs": 1,
"run_delta": 0.1022,
"adjusted_runs": 1,
"lineup": {
"players_used": 8,
"total_weight": 43.0,
"quality": 0.24178911106144402,
"contact": 0.17238588379667072,
"power": -0.035287531923000534,
"discipline": 0.29612998296929366,
"xwoba": 0.3236744186046512,
"recent_xwoba": 0.3236744186046512,
"barrel": 7.744186046511627,
"ab_hard_contact": -0.1448381246172754,
"ab_bat_speed": 69.54466388559793,
"ab_strikeout_rate": 0.19027169953153192,
"available_players": 7,
"top_players": [
{
"player_id": "682998",
"player_name": "Corbin Carroll",
"position": "RF",
"weight": 6.0,
"quality": 0.9633573892127324,
"contact": 1.056308143712934,
"power": 1.280328066678114,
"discipline": 0.28840177366493136,
"xwoba": 0.368,
"recent_xwoba": 0.368,
"barrel": 13.4,
"ab_hard_contact": 1.5277041907051283,
"ab_bat_speed": 74.37748888888889,
"ab_strikeout_rate": 0.22724358974358974,
"available": 1.0
},
{
"player_id": "606466",
"player_name": "Ketel Marte",
"position": "2B",
"weight": 7.0,
"quality": 0.9603237980168586,
"contact": 1.163267161771542,
"power": 0.9812739103857903,
"discipline": 0.11781203007518791,
"xwoba": 0.368,
"recent_xwoba": 0.368,
"barrel": 10.7,
"ab_hard_contact": 0.6814782077157939,
"ab_bat_speed": 73.25293096891535,
"ab_strikeout_rate": 0.15133333333333332,
"available": 1.0
},
{
"player_id": "678489",
"player_name": "Jorge Barrosa",
"position": "CF",
"weight": 5.0,
"quality": -0.6210929394507624,
"contact": -2.0,
"power": -1.474949940091488,
"discipline": -0.5704551656920078,
"xwoba": 0.204,
"recent_xwoba": 0.204,
"barrel": 6.1,
"ab_hard_contact": -1.3405226113535884,
"ab_bat_speed": 65.31755341880343,
"ab_strikeout_rate": 0.3148148148148148,
"available": 1.0
},
{
"player_id": "672515",
"player_name": "Gabriel Moreno",
"position": "DH",
"weight": 5.0,
"quality": 0.4871877212193895,
"contact": 1.1002784199263036,
"power": 0.8663533694981597,
"discipline": 0.5371185776942355,
"xwoba": 0.378,
"recent_xwoba": 0.378,
"barrel": 11.2,
"ab_hard_contact": -0.12245641956061917,
"ab_bat_speed": 70.22562934027778,
"ab_strikeout_rate": 0.2078125,
"available": 1.0
},
{
"player_id": "694410",
"player_name": "LuJames Groover",
"position": "1B",
"weight": 4.0,
"quality": -0.0,
"contact": -0.6494571428571422,
"power": -1.1888761904761898,
"discipline": -0.5871428571428572,
"xwoba": 0.237,
"recent_xwoba": 0.237,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26223456790123,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "663969",
"player_name": "Tyler Phillips",
"quality": 0.04274904269574542,
"contact": 0.3577206495562698,
"command": -0.26209546760674585,
"movement": -0.0422338532944415,
"xwoba": 0.31,
"whiff": 28.2,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "MIA",
"original_runs": 3,
"run_delta": 0.4188,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 47.0,
"quality": -0.026843800122946893,
"contact": -0.08044793827187327,
"power": -0.20898981814389178,
"discipline": 0.13320935523130709,
"xwoba": 0.3091702127659575,
"recent_xwoba": 0.3091702127659575,
"barrel": 6.468085106382977,
"ab_hard_contact": -0.23015502549182937,
"ab_bat_speed": 69.7842495204146,
"ab_strikeout_rate": 0.19742385012250285,
"available_players": 9,
"top_players": [
{
"player_id": "691594",
"player_name": "Javier Sanoja",
"position": "3B",
"weight": 5.0,
"quality": -0.3822243865388464,
"contact": -0.6058620068263412,
"power": -1.120396653462865,
"discipline": 0.48524060150375925,
"xwoba": 0.262,
"recent_xwoba": 0.262,
"barrel": 1.6,
"ab_hard_contact": -0.6311711644954058,
"ab_bat_speed": 68.79073688271605,
"ab_strikeout_rate": 0.09583333333333334,
"available": 1.0
},
{
"player_id": "805300",
"player_name": "Jakob Marsee",
"position": "CF",
"weight": 6.0,
"quality": -0.4421757484692798,
"contact": -0.42138339108560063,
"power": -0.9045888804972294,
"discipline": 0.781424584187742,
"xwoba": 0.308,
"recent_xwoba": 0.308,
"barrel": 3.6,
"ab_hard_contact": -0.9359680861350751,
"ab_bat_speed": 68.07094100091827,
"ab_strikeout_rate": 0.24636363636363637,
"available": 1.0
},
{
"player_id": "672640",
"player_name": "Otto Lopez",
"position": "SS",
"weight": 7.0,
"quality": 0.5094306089946756,
"contact": 0.9266632868364774,
"power": 0.5155714688365178,
"discipline": -0.3179000911369334,
"xwoba": 0.341,
"recent_xwoba": 0.341,
"barrel": 7.6,
"ab_hard_contact": 0.3201912814922492,
"ab_bat_speed": 70.77178737373738,
"ab_strikeout_rate": 0.15454545454545454,
"available": 1.0
},
{
"player_id": "665923",
"player_name": "Esteury Ruiz",
"position": "LF",
"weight": 3.0,
"quality": -0.17400631776029138,
"contact": -1.3674375616913423,
"power": -0.4936375101259003,
"discipline": -0.30831822202565246,
"xwoba": 0.28,
"recent_xwoba": 0.28,
"barrel": 8.8,
"ab_hard_contact": -1.2548454406132608,
"ab_bat_speed": 70.84042250233426,
"ab_strikeout_rate": 0.23039215686274508,
"available": 1.0
},
{
"player_id": "683357",
"player_name": "Owen Caissie",
"position": "RF",
"weight": 4.0,
"quality": -0.11387409095297671,
"contact": -0.569237387462412,
"power": 0.5386161134189885,
"discipline": -1.1501848643347499,
"xwoba": 0.289,
"recent_xwoba": 0.289,
"barrel": 13.0,
"ab_hard_contact": 0.20965560171309086,
"ab_bat_speed": 72.7720919599724,
"ab_strikeout_rate": 0.41811594202898555,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "518876",
"player_name": "Merrill Kelly",
"quality": -0.8536976115190895,
"contact": -1.7242598841507144,
"command": -0.6560954676067456,
"movement": -0.4651767496138256,
"xwoba": 0.414,
"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": 1,
"home_runs": 3,
"predicted_score_text": "ARI 1 - 3 MIA",
"confidence": 0.573148,
"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": 1,
"home_runs": 3,
"score_text": "ARI 1 - 3 MIA",
"winner": "MIA"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 4,
"score_text": "ARI 1 - 4 MIA",
"winner": "MIA"
},
"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 ARI | True | 1.0203 | 1.0229 | 0.8889 | 8 | 1 |
| Home MIA | True | 1 | 1 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RF | Corbin Carroll | 11 | 1.0827 | 1.1024 | negative_batter_regression | 0.3680 | 0.2690 | 0.4880 | 13.40 | 50.80 | 92 | 12.70 | 28 | 21.60 | 12.10 | -0.8571 |
| 3B | Nolan Arenado | 56 | 1.0006 | 0.0075 | neutral | 0.3200 | 0.2530 | 0.3860 | 6.80 | 31.10 | 85.30 | 18.80 | 23.30 | 20 | 8.90 | -0.6000 |
| DH | Gabriel Moreno | 69 | 1.0569 | 0.7589 | positive_batter_regression | 0.3780 | 0.2830 | 0.4880 | 11.20 | 46.60 | 89.60 | 13.10 | 17.30 | 18.20 | 10.30 | 0.9714 |
| 2B | Ketel Marte | 134 | 1.1029 | 1.3725 | positive_batter_regression | 0.3680 | 0.2990 | 0.5040 | 10.70 | 44.40 | 90.70 | 10.60 | 21.90 | 15.50 | 7.20 | 1.2857 |
| SS | Geraldo Perdomo | 64 | 1.0185 | 0.2462 | neutral | 0.3340 | 0.2690 | 0.3490 | 3 | 31.80 | 87.40 | 12.40 | 11.50 | 12 | 13.50 | 0.4857 |
| 1B | LuJames Groover | 439 | 0.9738 | -0.3493 | positive_batter_regression | 0.2370 | 0.2530 | 0.2900 | 0 | 41.70 | 87.40 | 10.90 | 16.70 | 20 | 0 | 1.6571 |
| LF | Tommy Troy | 283 | 1.0062 | 0.0830 | neutral | 0.3380 | 0.2450 | 0.4010 | 8.10 | 27 | 85 | 12.50 | 25 | 18.20 | 14.50 | 0.1429 |
| CF | Jorge Barrosa | 339 | 0.9415 | -0.7797 | negative_batter_regression | 0.2040 | 0.1440 | 0.2230 | 6.10 | 19.70 | 85.40 | 17.90 | 27.50 | 29.90 | 7.50 | -1.2286 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Liam Hicks | 43 | 0.9916 | -0.1123 | negative_batter_regression | 0.3220 | 0.2520 | 0.3720 | 4.60 | 32.50 | 85.70 | 15.10 | 10.90 | 9.20 | 10 | -0.9714 |
| 1B | Kyle Stowers | 434 | 1.0145 | 0.1935 | neutral | 0.3100 | 0.2300 | 0.4010 | 8.80 | 50 | 90.70 | 14.50 | 35.10 | 29.30 | 8.50 | 0.3143 |
| SS | Otto Lopez | 8 | 1.0456 | 0.6081 | negative_batter_regression | 0.3410 | 0.2980 | 0.4590 | 7.60 | 45.30 | 90.50 | 6.30 | 20.80 | 15.80 | 3.50 | -0.9429 |
| 2B | Xavier Edwards | 19 | 1.0329 | 0.4384 | neutral | 0.3450 | 0.2800 | 0.4180 | 6 | 32.30 | 87.20 | 11.40 | 14.20 | 12.20 | 12.50 | -0.7429 |
| RF | Owen Caissie | 536 | 1.0060 | 0.0794 | neutral | 0.2890 | 0.2030 | 0.3810 | 13 | 45.70 | 91.50 | 15.80 | 35.30 | 40.70 | 7.70 | -0.0857 |
| 3B | Javier Sanoja | 192 | 0.9624 | -0.5010 | negative_batter_regression | 0.2620 | 0.2330 | 0.3000 | 1.60 | 31 | 87.30 | 10.60 | 13.10 | 11.70 | 6.50 | -1.3143 |
| CF | Jakob Marsee | 297 | 0.9811 | -0.2515 | neutral | 0.3080 | 0.2200 | 0.3110 | 3.60 | 35.70 | 86.80 | 19.10 | 19.10 | 22.30 | 13.90 | 0.2571 |
| C | Joe Mack | 314 | 0.9923 | -0.1022 | neutral | 0.2820 | 0.2370 | 0.3650 | 6.60 | 37.70 | 90.20 | 9.90 | 23.80 | 29.80 | 5.30 | 0.0286 |
| LF | Esteury Ruiz | 275 | 0.9732 | -0.3574 | negative_batter_regression | 0.2800 | 0.1730 | 0.3350 | 8.80 | 29.40 | 87.70 | 27.60 | 36 | 31.10 | 11.50 | -1.9429 |
{
"home": {
"applied": true,
"offense_factor": 1.0,
"raw_average_factor": 1.0,
"team_espn_average_rank": 235.33,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "689414",
"player_name": "Liam Hicks",
"offense_factor": 0.9916,
"quality_score": -0.1123,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "689414",
"espn_id": 4725251,
"player_name": "Liam Hicks",
"team": "MIA",
"role": "batter",
"espn_rank": 43,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 43,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 215.0,
"ab_rank": 118,
"r_value": 35.0,
"r_rank": 58,
"h_value": 57.0,
"h_rank": 87,
"avg_value": 0.2651162,
"avg_rank": 62.0,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 12.0,
"hr_rank": 38,
"rbi_value": 48.0,
"rbi_rank": 7,
"tb_value": 101.0,
"tb_rank": 549,
"bb_value": 25.0,
"bb_rank": 74,
"so_value": 23.0,
"so_rank": 313,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.348,
"obp_rank": "55",
"slg_value": 0.4697674,
"slg_rank": "43",
"ops_value": 0.8177674,
"ops_rank": 12.0,
"war_value": 1.96,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 199.0,
"k_percent": 9.2,
"bb_percent": 10.0,
"woba": 0.356,
"xwoba": 0.322,
"xba": 0.252,
"xslg": 0.372,
"sweet_spot_percent": 25.9,
"barrel_batted_rate": 4.6,
"hard_hit_percent": 32.5,
"exit_velocity_avg": 85.7,
"launch_angle_avg": 15.1,
"whiff_percent": 10.9,
"swing_percent": 42.4
},
"components": {
"expected_quality": 0.0138,
"regression_edge": -0.9714,
"xwoba_edge": 0.5143,
"xba_edge": 0.4,
"xslg_edge": -0.0286,
"barrel_edge": -0.5111,
"hard_hit_edge": -0.8571,
"exit_velocity_edge": -1.24,
"sweet_spot_edge": -1.2333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "669065",
"player_name": "Kyle Stowers",
"offense_factor": 1.0145,
"quality_score": 0.1935,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669065",
"espn_id": 42796,
"player_name": "Kyle Stowers",
"team": "MIA",
"role": "batter",
"espn_rank": 434,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 434,
"gp_value": 45.0,
"gp_rank": 247,
"ab_value": 167.0,
"ab_rank": 191,
"r_value": 19.0,
"r_rank": 202,
"h_value": 36.0,
"h_rank": 215,
"avg_value": 0.2155688,
"avg_rank": null,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 20.0,
"rbi_rank": 191,
"tb_value": 64.0,
"tb_rank": 918,
"bb_value": 16.0,
"bb_rank": 181,
"so_value": 55.0,
"so_rank": 86,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2941176,
"obp_rank": "-",
"slg_value": 0.3832335,
"slg_rank": "-",
"ops_value": 0.6773511,
"ops_rank": null,
"war_value": -0.18,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 138.0,
"k_percent": 29.3,
"bb_percent": 8.5,
"woba": 0.299,
"xwoba": 0.31,
"xba": 0.23,
"xslg": 0.401,
"sweet_spot_percent": 32.5,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 14.5,
"whiff_percent": 35.1,
"swing_percent": 54.0
},
"components": {
"expected_quality": 0.3076,
"regression_edge": 0.3143,
"xwoba_edge": 0.1714,
"xba_edge": -0.2286,
"xslg_edge": 0.3857,
"barrel_edge": 0.4222,
"hard_hit_edge": 1.6429,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": -0.1333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "672640",
"player_name": "Otto Lopez",
"offense_factor": 1.0456,
"quality_score": 0.6081,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "672640",
"espn_id": 41917,
"player_name": "Otto Lopez",
"team": "MIA",
"role": "batter",
"espn_rank": 8,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 8,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 266.0,
"ab_rank": 12,
"r_value": 41.0,
"r_rank": 31,
"h_value": 91.0,
"h_rank": 1,
"avg_value": 0.3421052,
"avg_rank": 1.0,
"2b_value": 18.0,
"2b_rank": 5,
"3b_value": 3.0,
"3b_rank": 5,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 30.0,
"rbi_rank": 92,
"tb_value": 130.0,
"tb_rank": 506,
"bb_value": 10.0,
"bb_rank": 268,
"so_value": 45.0,
"so_rank": 140,
"sb_value": 11.0,
"sb_rank": 21,
"obp_value": 0.3697183,
"obp_rank": "31",
"slg_value": 0.4887218,
"slg_rank": "34",
"ops_value": 0.8584401,
"ops_rank": 65.0,
"war_value": 3.1,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 229.0,
"k_percent": 15.8,
"bb_percent": 3.5,
"woba": 0.374,
"xwoba": 0.341,
"xba": 0.298,
"xslg": 0.459,
"sweet_spot_percent": 30.7,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 45.3,
"exit_velocity_avg": 90.5,
"launch_angle_avg": 6.3,
"whiff_percent": 20.8,
"swing_percent": 48.9
},
"components": {
"expected_quality": 0.8606,
"regression_edge": -0.9429,
"xwoba_edge": 1.0571,
"xba_edge": 1.7143,
"xslg_edge": 1.2143,
"barrel_edge": 0.1556,
"hard_hit_edge": 0.9714,
"exit_velocity_edge": 0.68,
"sweet_spot_edge": -0.4333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "669364",
"player_name": "Xavier Edwards",
"offense_factor": 1.0329,
"quality_score": 0.4384,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669364",
"espn_id": 41326,
"player_name": "Xavier Edwards",
"team": "MIA",
"role": "batter",
"espn_rank": 19,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 19,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 250.0,
"ab_rank": 35,
"r_value": 42.0,
"r_rank": 27,
"h_value": 76.0,
"h_rank": 7,
"avg_value": 0.304,
"avg_rank": 10.0,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 4.0,
"3b_rank": 3,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 113.0,
"tb_rank": 507,
"bb_value": 36.0,
"bb_rank": 25,
"so_value": 35.0,
"so_rank": 212,
"sb_value": 11.0,
"sb_rank": 21,
"obp_value": 0.3902439,
"obp_rank": "12",
"slg_value": 0.452,
"slg_rank": "54",
"ops_value": 0.8422439,
"ops_rank": 42.0,
"war_value": 2.65,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 235.0,
"k_percent": 12.2,
"bb_percent": 12.5,
"woba": 0.371,
"xwoba": 0.345,
"xba": 0.28,
"xslg": 0.418,
"sweet_spot_percent": 39.6,
"barrel_batted_rate": 6.0,
"hard_hit_percent": 32.3,
"exit_velocity_avg": 87.2,
"launch_angle_avg": 11.4,
"whiff_percent": 14.2,
"swing_percent": 39.9
},
"components": {
"expected_quality": 0.6307,
"regression_edge": -0.7429,
"xwoba_edge": 1.1714,
"xba_edge": 1.2,
"xslg_edge": 0.6286,
"barrel_edge": -0.2,
"hard_hit_edge": -0.8857,
"exit_velocity_edge": -0.64,
"sweet_spot_edge": 1.05,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "683357",
"player_name": "Owen Caissie",
"offense_factor": 1.006,
"quality_score": 0.0794,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683357",
"espn_id": 4917685,
"player_name": "Owen Caissie",
"team": "MIA",
"role": "batter",
"espn_rank": 536,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 536,
"gp_value": 58.0,
"gp_rank": 157,
"ab_value": 161.0,
"ab_rank": 203,
"r_value": 19.0,
"r_rank": 202,
"h_value": 35.0,
"h_rank": 222,
"avg_value": 0.2173913,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 33.0,
"rbi_rank": 61,
"tb_value": 62.0,
"tb_rank": 1131,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 74.0,
"so_rank": 22,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.2802197,
"obp_rank": "-",
"slg_value": 0.3850931,
"slg_rank": "-",
"ops_value": 0.6653128,
"ops_rank": null,
"war_value": -0.64,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 147.0,
"k_percent": 40.7,
"bb_percent": 7.7,
"woba": 0.292,
"xwoba": 0.289,
"xba": 0.203,
"xslg": 0.381,
"sweet_spot_percent": 47.8,
"barrel_batted_rate": 13.0,
"hard_hit_percent": 45.7,
"exit_velocity_avg": 91.5,
"launch_angle_avg": 15.8,
"whiff_percent": 35.3,
"swing_percent": 46.2
},
"components": {
"expected_quality": 0.1522,
"regression_edge": -0.0857,
"xwoba_edge": -0.4286,
"xba_edge": -1.0,
"xslg_edge": 0.1,
"barrel_edge": 1.3556,
"hard_hit_edge": 1.0286,
"exit_velocity_edge": 1.08,
"sweet_spot_edge": 2.4167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "691594",
"player_name": "Javier Sanoja",
"offense_factor": 0.9624,
"quality_score": -0.501,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "691594",
"espn_id": 5073992,
"player_name": "Javier Sanoja",
"team": "MIA",
"role": "batter",
"espn_rank": 192,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 192,
"gp_value": 51.0,
"gp_rank": 206,
"ab_value": 143.0,
"ab_rank": 231,
"r_value": 10.0,
"r_rank": 324,
"h_value": 38.0,
"h_rank": 199,
"avg_value": 0.2657342,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 24.0,
"rbi_rank": 151,
"tb_value": 54.0,
"tb_rank": 1508,
"bb_value": 10.0,
"bb_rank": 268,
"so_value": 18.0,
"so_rank": 357,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3137254,
"obp_rank": "-",
"slg_value": 0.3776223,
"slg_rank": "-",
"ops_value": 0.6913477,
"ops_rank": null,
"war_value": 0.54,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 119.0,
"k_percent": 11.7,
"bb_percent": 6.5,
"woba": 0.308,
"xwoba": 0.262,
"xba": 0.233,
"xslg": 0.3,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 1.6,
"hard_hit_percent": 31.0,
"exit_velocity_avg": 87.3,
"launch_angle_avg": 10.6,
"whiff_percent": 13.1,
"swing_percent": 51.7
},
"components": {
"expected_quality": -0.8631,
"regression_edge": -1.3143,
"xwoba_edge": -1.2,
"xba_edge": -0.1429,
"xslg_edge": -1.0571,
"barrel_edge": -1.1778,
"hard_hit_edge": -1.0714,
"exit_velocity_edge": -0.6,
"sweet_spot_edge": -0.3833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "805300",
"player_name": "Jakob Marsee",
"offense_factor": 0.9811,
"quality_score": -0.2515,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805300",
"espn_id": 4866735,
"player_name": "Jakob Marsee",
"team": "MIA",
"role": "batter",
"espn_rank": 297,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 297,
"gp_value": 66.0,
"gp_rank": 45,
"ab_value": 227.0,
"ab_rank": 98,
"r_value": 36.0,
"r_rank": 55,
"h_value": 46.0,
"h_rank": 155,
"avg_value": 0.2026431,
"avg_rank": 157.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 3.0,
"3b_rank": 5,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 16.0,
"rbi_rank": 242,
"tb_value": 69.0,
"tb_rank": 1008,
"bb_value": 38.0,
"bb_rank": 21,
"so_value": 61.0,
"so_rank": 57,
"sb_value": 16.0,
"sb_rank": 7,
"obp_value": 0.3333333,
"obp_rank": "82",
"slg_value": 0.3039647,
"slg_rank": "163",
"ops_value": 0.637298,
"ops_rank": 81.0,
"war_value": 0.1,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 233.0,
"k_percent": 22.3,
"bb_percent": 13.9,
"woba": 0.299,
"xwoba": 0.308,
"xba": 0.22,
"xslg": 0.311,
"sweet_spot_percent": 28.6,
"barrel_batted_rate": 3.6,
"hard_hit_percent": 35.7,
"exit_velocity_avg": 86.8,
"launch_angle_avg": 19.1,
"whiff_percent": 19.1,
"swing_percent": 39.0
},
"components": {
"expected_quality": -0.3342,
"regression_edge": 0.2571,
"xwoba_edge": 0.1143,
"xba_edge": -0.5143,
"xslg_edge": -0.9,
"barrel_edge": -0.7333,
"hard_hit_edge": -0.4,
"exit_velocity_edge": -0.8,
"sweet_spot_edge": -0.7833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "691788",
"player_name": "Joe Mack",
"offense_factor": 0.9923,
"quality_score": -0.1022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691788",
"espn_id": 4872695,
"player_name": "Joe Mack",
"team": "MIA",
"role": "batter",
"espn_rank": 314,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 314,
"gp_value": 28.0,
"gp_rank": 353,
"ab_value": 87.0,
"ab_rank": 335,
"r_value": 11.0,
"r_rank": 310,
"h_value": 22.0,
"h_rank": 309,
"avg_value": 0.2528735,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 13.0,
"rbi_rank": 268,
"tb_value": 29.0,
"tb_rank": 1987,
"bb_value": 5.0,
"bb_rank": 364,
"so_value": 28.0,
"so_rank": 270,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2934782,
"obp_rank": "-",
"slg_value": 0.3333333,
"slg_rank": "-",
"ops_value": 0.6268115,
"ops_rank": null,
"war_value": 0.05,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 61.0,
"k_percent": 29.8,
"bb_percent": 5.3,
"woba": 0.281,
"xwoba": 0.282,
"xba": 0.237,
"xslg": 0.365,
"sweet_spot_percent": 32.8,
"barrel_batted_rate": 6.6,
"hard_hit_percent": 37.7,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 9.9,
"whiff_percent": 23.8,
"swing_percent": 48.1
},
"components": {
"expected_quality": -0.2688,
"regression_edge": 0.0286,
"xwoba_edge": -0.6286,
"xba_edge": -0.0286,
"xslg_edge": -0.1286,
"barrel_edge": -0.0667,
"hard_hit_edge": -0.1143,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": -0.0833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "665923",
"player_name": "Esteury Ruiz",
"offense_factor": 0.9732,
"quality_score": -0.3574,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "665923",
"espn_id": 39680,
"player_name": "Esteury Ruiz",
"team": "MIA",
"role": "batter",
"espn_rank": 275,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 275,
"gp_value": 33.0,
"gp_rank": 325,
"ab_value": 52.0,
"ab_rank": 396,
"r_value": 14.0,
"r_rank": 264,
"h_value": 11.0,
"h_rank": 392,
"avg_value": 0.2115384,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 7.0,
"rbi_rank": 352,
"tb_value": 26.0,
"tb_rank": 1469,
"bb_value": 7.0,
"bb_rank": 320,
"so_value": 19.0,
"so_rank": 346,
"sb_value": 11.0,
"sb_rank": 21,
"obp_value": 0.3114754,
"obp_rank": "-",
"slg_value": 0.5,
"slg_rank": "-",
"ops_value": 0.8114754,
"ops_rank": null,
"war_value": 0.17,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 41.0,
"k_percent": 31.1,
"bb_percent": 11.5,
"woba": 0.348,
"xwoba": 0.28,
"xba": 0.173,
"xslg": 0.335,
"sweet_spot_percent": 35.3,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 29.4,
"exit_velocity_avg": 87.7,
"launch_angle_avg": 27.6,
"whiff_percent": 36.0,
"swing_percent": 48.3
},
"components": {
"expected_quality": -0.6073,
"regression_edge": -1.9429,
"xwoba_edge": -0.6857,
"xba_edge": -1.8571,
"xslg_edge": -0.5571,
"barrel_edge": 0.4222,
"hard_hit_edge": -1.3,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": 0.3333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0203,
"raw_average_factor": 1.0229,
"team_espn_average_rank": 174.38,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "RF",
"player_id": "682998",
"player_name": "Corbin Carroll",
"offense_factor": 1.0827,
"quality_score": 1.1024,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "682998",
"espn_id": 42404,
"player_name": "Corbin Carroll",
"team": "ARI",
"role": "batter",
"espn_rank": 11,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 11,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 236.0,
"ab_rank": 75,
"r_value": 42.0,
"r_rank": 27,
"h_value": 67.0,
"h_rank": 35,
"avg_value": 0.2838983,
"avg_rank": 24.0,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 8.0,
"3b_rank": 1,
"hr_value": 11.0,
"hr_rank": 44,
"rbi_value": 33.0,
"rbi_rank": 61,
"tb_value": 131.0,
"tb_rank": 184,
"bb_value": 33.0,
"bb_rank": 37,
"so_value": 59.0,
"so_rank": 65,
"sb_value": 7.0,
"sb_rank": 57,
"obp_value": 0.3736263,
"obp_rank": "27",
"slg_value": 0.5550847,
"slg_rank": "8",
"ops_value": 0.928711,
"ops_rank": 35.0,
"war_value": 2.95,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 21.6,
"bb_percent": 12.1,
"woba": 0.398,
"xwoba": 0.368,
"xba": 0.269,
"xslg": 0.488,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 13.4,
"hard_hit_percent": 50.8,
"exit_velocity_avg": 92.0,
"launch_angle_avg": 12.7,
"whiff_percent": 28.0,
"swing_percent": 45.0
},
"components": {
"expected_quality": 1.4272,
"regression_edge": -0.8571,
"xwoba_edge": 1.8286,
"xba_edge": 0.8857,
"xslg_edge": 1.6286,
"barrel_edge": 1.4444,
"hard_hit_edge": 1.7571,
"exit_velocity_edge": 1.28,
"sweet_spot_edge": -0.3333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "571448",
"player_name": "Nolan Arenado",
"offense_factor": 1.0006,
"quality_score": 0.0075,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "571448",
"espn_id": 31261,
"player_name": "Nolan Arenado",
"team": "ARI",
"role": "batter",
"espn_rank": 56,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 56,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 206.0,
"ab_rank": 127,
"r_value": 30.0,
"r_rank": 90,
"h_value": 53.0,
"h_rank": 110,
"avg_value": 0.2572815,
"avg_rank": 73.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 30.0,
"rbi_rank": 92,
"tb_value": 89.0,
"tb_rank": 789,
"bb_value": 21.0,
"bb_rank": 121,
"so_value": 47.0,
"so_rank": 130,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3404255,
"obp_rank": "71",
"slg_value": 0.4320388,
"slg_rank": "72",
"ops_value": 0.7724643,
"ops_rank": 1.0,
"war_value": 1.73,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 192.0,
"k_percent": 20.0,
"bb_percent": 8.9,
"woba": 0.341,
"xwoba": 0.32,
"xba": 0.253,
"xslg": 0.386,
"sweet_spot_percent": 37.3,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 31.1,
"exit_velocity_avg": 85.3,
"launch_angle_avg": 18.8,
"whiff_percent": 23.3,
"swing_percent": 45.4
},
"components": {
"expected_quality": 0.1076,
"regression_edge": -0.6,
"xwoba_edge": 0.4571,
"xba_edge": 0.4286,
"xslg_edge": 0.1714,
"barrel_edge": -0.0222,
"hard_hit_edge": -1.0571,
"exit_velocity_edge": -1.4,
"sweet_spot_edge": 0.6667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "672515",
"player_name": "Gabriel Moreno",
"offense_factor": 1.0569,
"quality_score": 0.7589,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "672515",
"espn_id": 42464,
"player_name": "Gabriel Moreno",
"team": "ARI",
"role": "batter",
"espn_rank": 69,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 69,
"gp_value": 43.0,
"gp_rank": 258,
"ab_value": 143.0,
"ab_rank": 231,
"r_value": 22.0,
"r_rank": 179,
"h_value": 38.0,
"h_rank": 199,
"avg_value": 0.2657342,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 62.0,
"tb_rank": 1189,
"bb_value": 17.0,
"bb_rank": 171,
"so_value": 30.0,
"so_rank": 250,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3454545,
"obp_rank": "-",
"slg_value": 0.4335664,
"slg_rank": "-",
"ops_value": 0.7790209,
"ops_rank": null,
"war_value": 1.59,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 119.0,
"k_percent": 18.2,
"bb_percent": 10.3,
"woba": 0.344,
"xwoba": 0.378,
"xba": 0.283,
"xslg": 0.488,
"sweet_spot_percent": 38.8,
"barrel_batted_rate": 11.2,
"hard_hit_percent": 46.6,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 13.1,
"whiff_percent": 17.3,
"swing_percent": 43.5
},
"components": {
"expected_quality": 1.4732,
"regression_edge": 0.9714,
"xwoba_edge": 2.1143,
"xba_edge": 1.2857,
"xslg_edge": 1.6286,
"barrel_edge": 0.9556,
"hard_hit_edge": 1.1571,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.9167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "606466",
"player_name": "Ketel Marte",
"offense_factor": 1.1029,
"quality_score": 1.3725,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "606466",
"espn_id": 32512,
"player_name": "Ketel Marte",
"team": "ARI",
"role": "batter",
"espn_rank": 134,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 134,
"gp_value": 63.0,
"gp_rank": 100,
"ab_value": 254.0,
"ab_rank": 25,
"r_value": 37.0,
"r_rank": 52,
"h_value": 63.0,
"h_rank": 57,
"avg_value": 0.2480314,
"avg_rank": 89.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 11.0,
"hr_rank": 44,
"rbi_value": 40.0,
"rbi_rank": 28,
"tb_value": 112.0,
"tb_rank": 276,
"bb_value": 20.0,
"bb_rank": 131,
"so_value": 43.0,
"so_rank": 157,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2996389,
"obp_rank": "129",
"slg_value": 0.4409448,
"slg_rank": "64",
"ops_value": 0.7405837,
"ops_rank": 193.0,
"war_value": 0.91,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 220.0,
"k_percent": 15.5,
"bb_percent": 7.2,
"woba": 0.323,
"xwoba": 0.368,
"xba": 0.299,
"xslg": 0.504,
"sweet_spot_percent": 33.6,
"barrel_batted_rate": 10.7,
"hard_hit_percent": 44.4,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 10.6,
"whiff_percent": 21.9,
"swing_percent": 49.1
},
"components": {
"expected_quality": 1.3866,
"regression_edge": 1.2857,
"xwoba_edge": 1.8286,
"xba_edge": 1.7429,
"xslg_edge": 1.8571,
"barrel_edge": 0.8444,
"hard_hit_edge": 0.8429,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": 0.05,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "672695",
"player_name": "Geraldo Perdomo",
"offense_factor": 1.0185,
"quality_score": 0.2462,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672695",
"espn_id": 41355,
"player_name": "Geraldo Perdomo",
"team": "ARI",
"role": "batter",
"espn_rank": 64,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 64,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 221.0,
"ab_rank": 109,
"r_value": 28.0,
"r_rank": 111,
"h_value": 54.0,
"h_rank": 103,
"avg_value": 0.2443438,
"avg_rank": 100.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 3.0,
"3b_rank": 5,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 78.0,
"tb_rank": 914,
"bb_value": 36.0,
"bb_rank": 25,
"so_value": 32.0,
"so_rank": 235,
"sb_value": 8.0,
"sb_rank": 50,
"obp_value": 0.3460076,
"obp_rank": "60",
"slg_value": 0.3529411,
"slg_rank": "131",
"ops_value": 0.6989487,
"ops_rank": 191.0,
"war_value": 1.64,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 211.0,
"k_percent": 12.0,
"bb_percent": 13.5,
"woba": 0.317,
"xwoba": 0.334,
"xba": 0.269,
"xslg": 0.349,
"sweet_spot_percent": 36.4,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 31.8,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 12.4,
"whiff_percent": 11.5,
"swing_percent": 39.9
},
"components": {
"expected_quality": 0.2194,
"regression_edge": 0.4857,
"xwoba_edge": 0.8571,
"xba_edge": 0.8857,
"xslg_edge": -0.3571,
"barrel_edge": -0.8667,
"hard_hit_edge": -0.9571,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": 0.5167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "694410",
"player_name": "LuJames Groover",
"offense_factor": 0.9738,
"quality_score": -0.3493,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "694410",
"espn_id": 4752206,
"player_name": "LuJames Groover",
"team": "ARI",
"role": "batter",
"espn_rank": 439,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 439,
"gp_value": 4.0,
"gp_rank": 525,
"ab_value": 15.0,
"ab_rank": 498,
"r_value": 0.0,
"r_rank": 526,
"h_value": 3.0,
"h_rank": 483,
"avg_value": 0.2,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 1.0,
"rbi_rank": 480,
"tb_value": 3.0,
"tb_rank": 2602,
"bb_value": 0.0,
"bb_rank": 510,
"so_value": 3.0,
"so_rank": 506,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2,
"obp_rank": "-",
"slg_value": 0.2,
"slg_rank": "-",
"ops_value": 0.4,
"ops_rank": null,
"war_value": -0.19,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 20.0,
"bb_percent": 0.0,
"woba": 0.179,
"xwoba": 0.237,
"xba": 0.253,
"xslg": 0.29,
"sweet_spot_percent": 16.7,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 41.7,
"exit_velocity_avg": 87.4,
"launch_angle_avg": 10.9,
"whiff_percent": 16.7,
"swing_percent": 47.1
},
"components": {
"expected_quality": -1.1724,
"regression_edge": 1.6571,
"xwoba_edge": -1.9143,
"xba_edge": 0.4286,
"xslg_edge": -1.2,
"barrel_edge": -1.5333,
"hard_hit_edge": 0.4571,
"exit_velocity_edge": -0.56,
"sweet_spot_edge": -2.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "694371",
"player_name": "Tommy Troy",
"offense_factor": 1.0062,
"quality_score": 0.083,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694371",
"espn_id": 4837403,
"player_name": "Tommy Troy",
"team": "ARI",
"role": "batter",
"espn_rank": 283,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 283,
"gp_value": 16.0,
"gp_rank": 426,
"ab_value": 47.0,
"ab_rank": 406,
"r_value": 10.0,
"r_rank": 324,
"h_value": 12.0,
"h_rank": 382,
"avg_value": 0.2553191,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 374,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 1.0,
"rbi_rank": 480,
"tb_value": 17.0,
"tb_rank": 2154,
"bb_value": 8.0,
"bb_rank": 301,
"so_value": 10.0,
"so_rank": 429,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3636363,
"obp_rank": "-",
"slg_value": 0.3617021,
"slg_rank": "-",
"ops_value": 0.7253384,
"ops_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 14.0,
"k_percent": 18.2,
"bb_percent": 14.5,
"woba": 0.333,
"xwoba": 0.338,
"xba": 0.245,
"xslg": 0.401,
"sweet_spot_percent": 21.6,
"barrel_batted_rate": 8.1,
"hard_hit_percent": 27.0,
"exit_velocity_avg": 85.0,
"launch_angle_avg": 12.5,
"whiff_percent": 25.0,
"swing_percent": 40.9
},
"components": {
"expected_quality": 0.1911,
"regression_edge": 0.1429,
"xwoba_edge": 0.9714,
"xba_edge": 0.2,
"xslg_edge": 0.3857,
"barrel_edge": 0.2667,
"hard_hit_edge": -1.6429,
"exit_velocity_edge": -1.52,
"sweet_spot_edge": -1.95,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "678489",
"player_name": "Jorge Barrosa",
"offense_factor": 0.9415,
"quality_score": -0.7797,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "678489",
"espn_id": 41259,
"player_name": "Jorge Barrosa",
"team": "ARI",
"role": "batter",
"espn_rank": 339,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 339,
"gp_value": 46.0,
"gp_rank": 240,
"ab_value": 96.0,
"ab_rank": 314,
"r_value": 11.0,
"r_rank": 310,
"h_value": 16.0,
"h_rank": 355,
"avg_value": 0.1666666,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 7.0,
"rbi_rank": 352,
"tb_value": 30.0,
"tb_rank": 1647,
"bb_value": 8.0,
"bb_rank": 301,
"so_value": 32.0,
"so_rank": 235,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2380952,
"obp_rank": "-",
"slg_value": 0.3125,
"slg_rank": "-",
"ops_value": 0.5505952,
"ops_rank": null,
"war_value": 0.0,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 87.0,
"k_percent": 29.9,
"bb_percent": 7.5,
"woba": 0.247,
"xwoba": 0.204,
"xba": 0.144,
"xslg": 0.223,
"sweet_spot_percent": 34.8,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 19.7,
"exit_velocity_avg": 85.4,
"launch_angle_avg": 17.9,
"whiff_percent": 27.5,
"swing_percent": 43.7
},
"components": {
"expected_quality": -1.8147,
"regression_edge": -1.2286,
"xwoba_edge": -2.5,
"xba_edge": -2.5,
"xslg_edge": -2.1571,
"barrel_edge": -0.1778,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -1.36,
"sweet_spot_edge": 0.25,
"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 ARI | True | 579 | -0.9669 | 0.7120 | 1.0822 | 0.9573 | 1.0100 | 1.1959 | negative_pitcher_regression | 0.4140 | 0.3740 | 14.30 | 9.70 | 23.50 | 16.50 | 44.80 | |
| Home MIA | True | 55 | 0.0227 | 0.5280 | 0.9981 | 0.9967 | 1.0275 | 0.9769 | neutral | 0.3100 | 0.2960 | 19 | 11.60 | 28.20 | 6.20 | 34.90 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away ARI | True | None | 98 | 88.95 | 2303 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0427 | |
| Home MIA | True | None | 38 | 89.19 | 2049 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0291 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 0.9990 |
| home_runs_vs_away_pitcher | 1.0585 |
| home_pitcher_quality_edge | 0.9896 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "663969",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 132.0,
"k_percent": 19.0,
"bb_percent": 11.6,
"woba": 0.296,
"xwoba": 0.31,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 34.9,
"avg_best_speed": 76.853,
"avg_hyper_speed": 93.3945,
"whiff_percent": 28.2,
"swing_percent": 44.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.2629,
"command_and_miss": -0.2379,
"regression_edge": -0.4,
"xwoba_edge": 0.1429,
"barrel_edge": 0.2444,
"hard_hit_edge": 0.5,
"whiff_edge": 0.3714,
"bb_edge": -0.65,
"pitch_design_score": -0.0291
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663969",
"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": 89.19478705671403,
"release_spin_rate": 2048.648353212873,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.19478705671403,
"release_spin_rate": 2048.648353212873,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1948,
"release_spin_rate": 2048.6484,
"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.0291,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2076,
"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.0227,
"sample_weight": 0.528,
"run_prevention_factor": 0.9981,
"strikeout_factor": 0.9967,
"walk_factor": 1.0275,
"homer_factor": 0.9769,
"woba_minus_xwoba": -0.014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663969",
"espn_id": 41247,
"player_name": "Tyler Phillips",
"team": "MIA",
"role": "pitcher",
"espn_rank": 55,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 55,
"gp_value": 18.0,
"gp_rank": 186,
"gs_value": 2.0,
"gs_rank": 203,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.0769,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 43.1,
"ip_rank": 135,
"h_value": 37.0,
"h_rank": 138,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 22.0,
"bb_rank": 74,
"k_value": 36.0,
"k_rank": 168,
"k_per_9_value": 7.4769225,
"k_per_9_rank": 33,
"whip_value": 1.3615,
"whip_rank": null,
"war_value": 1.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "518876",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 178.0,
"k_percent": 14.3,
"bb_percent": 9.7,
"woba": 0.374,
"xwoba": 0.414,
"sweet_spot_percent": 43.8,
"barrel_batted_rate": 16.5,
"hard_hit_percent": 44.8,
"avg_best_speed": 79.2091,
"avg_hyper_speed": 95.292,
"whiff_percent": 23.5,
"swing_percent": 48.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.8991,
"command_and_miss": -0.68,
"regression_edge": -1.1429,
"xwoba_edge": -2.5,
"barrel_edge": -2.0444,
"hard_hit_edge": -0.9143,
"whiff_edge": -0.3,
"bb_edge": -0.175,
"pitch_design_score": -0.0427
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "518876",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 98,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 98,
"pitch_usage": 0.0,
"release_speed": 88.95200342697242,
"release_spin_rate": 2303.202452073771,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 98,
"pitch_usage": 0.0,
"release_speed": 88.95200342697242,
"release_spin_rate": 2303.202452073771,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.952,
"release_spin_rate": 2303.2025,
"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.0427,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3047,
"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.9669,
"sample_weight": 0.712,
"run_prevention_factor": 1.0822,
"strikeout_factor": 0.9573,
"walk_factor": 1.01,
"homer_factor": 1.1959,
"woba_minus_xwoba": -0.04,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "518876",
"espn_id": 32968,
"player_name": "Merrill Kelly",
"team": "ARI",
"role": "pitcher",
"espn_rank": 579,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 579,
"gp_value": 10.0,
"gp_rank": 380,
"gs_value": 10.0,
"gs_rank": 104,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 5.7085,
"era_rank": null,
"w_value": 5.0,
"w_rank": 30,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 58.1,
"ip_rank": 104,
"h_value": 62.0,
"h_rank": 70,
"er_value": 37.0,
"er_rank": 31,
"hr_value": 13.0,
"hr_rank": 14,
"bb_value": 25.0,
"bb_rank": 39,
"k_value": 37.0,
"k_rank": 157,
"k_per_9_value": 5.7085714,
"k_per_9_rank": 40,
"whip_value": 1.4914,
"whip_rank": null,
"war_value": -0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 0.999,
"home_runs_vs_away_pitcher": 1.0585,
"home_pitcher_quality_edge": 0.9896
},
"score_before": {
"away_runs": 1.0,
"home_runs": 3.0
},
"score_after": {
"away_runs": 0.999,
"home_runs": 3.1756,
"home_win_probability": 0.7028
},
"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 ARI | 19-42 | 0.311 | 0.90 | 2.60 | -106 | cold | strong | |
| Home MIA | 19-41 | 0.317 | 1.10 | 3.20 | -127 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away ARI | 34-33 | 0.507 | -22 | -0.328 | True |
| Home MIA | 33-35 | 0.485 | -8 | -0.118 | True |
| Signal | - | - | 0.211 | 0.177 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target ARI | - | - | 1 | - | - | - | - |
| Game target MIA | - | - | 3 | - | - | - | - |
| Player finalized ARI | 47 | 11 | 7 | 0 | 5 | 6 | 10 |
| Player finalized MIA | 47 | 12 | 8 | 0 | 7 | 4 | 12 |
| Player model fractional ARI | 47.10 | 11.05 | 6.24 | 1.55 | 5.33 | 5.15 | 10.15 |
| Player model fractional MIA | 48.83 | 12.27 | 7.17 | 1.33 | 6.87 | 4.88 | 11.74 |
| Simulation box ARI | 31 | 4 | 1 | 1 | 1 | 2 | 3 |
| Simulation box MIA | 35 | 11 | 4 | 0 | 4 | 2 | 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 ARI | Starter | Merrill Kelly | 5 | 4 | 5 | 7 | 1 | 4.69 | 1.31 | True |
| Away ARI | Middle Reliever | Kevin Ginkel | 1 | 0 | 1 | 3 | 0 | 4.55 | 1.35 | True |
| Away ARI | Middle Reliever | Paul Sewald | 2 | 0 | 0 | 1 | 1 | 4.32 | 1.31 | True |
| Home MIA | Starter | Tyler Phillips | 5 | 0 | 3 | 1 | 0 | 3.38 | 1.40 | True |
| Home MIA | Middle Reliever | Ryan Gusto | 1.10 | 0 | 0 | 2 | 0 | 4.80 | 1.36 | True |
| Home MIA | Middle Reliever | Anthony Bender | 1.20 | 0 | 0 | 0 | 0 | 3.14 | 0.89 | True |
| Home MIA | Middle Reliever | Pete Fairbanks | 1 | 1 | 0 | 1 | 2 | 4.98 | 1.57 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | ARI | pitcher | Starter | Merrill Kelly | worse | 3 | 2 | 1 | 0 | 3 | predicted_IP | -3.0000 | deboost | worse |
| home | MIA | batter | C | Joe Mack | better | 10 | 5 | 5 | 6 | 4 | predicted_H | 2.2300 | boost | better |
| away | ARI | pitcher | Middle Reliever | Kevin Ginkel | better | 3 | 1 | 2 | 3 | 0 | predicted_ER | -2.0000 | deboost | better |
| away | ARI | pitcher | Middle Reliever | Paul Sewald | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 1.9000 | boost | better |
| home | MIA | batter | DH | Liam Hicks | worse | 10 | 5 | 5 | 4 | 6 | predicted_SO | 1.6400 | boost | worse |
| home | MIA | batter | RF | Owen Caissie | better | 10 | 5 | 5 | 6 | 4 | predicted_RBI | 1.4600 | boost | better |
| home | MIA | batter | 1B | Kyle Stowers | worse | 11 | 0 | 11 | 1 | 10 | predicted_SO | -1.2330 | deboost | better |
| home | MIA | batter | SS | Otto Lopez | worse | 10 | 2 | 8 | 3 | 7 | predicted_H | -1.2200 | deboost | worse |
| home | MIA | batter | 3B | Javier Sanoja | worse | 10 | 5 | 5 | 4 | 6 | predicted_H | 1.2000 | boost | better |
| away | ARI | batter | RF | Corbin Carroll | worse | 12 | 4 | 8 | 5 | 7 | predicted_AB | -1.1800 | deboost | worse |
| home | MIA | batter | CF | Jakob Marsee | better | 11 | 5 | 6 | 6 | 5 | predicted_H | 1.1800 | boost | better |
| away | ARI | batter | CF | Jorge Barrosa | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -1.1100 | deboost | better |
| away | ARI | batter | DH | Gabriel Moreno | worse | 11 | 5 | 6 | 4 | 7 | predicted_H | 1.0600 | boost | better |
| home | MIA | batter | 2B | Xavier Edwards | better | 11 | 7 | 4 | 6 | 5 | predicted_H | 1.0200 | boost | better |
| away | ARI | batter | 1B | LuJames Groover | worse | 8 | 2 | 6 | 1 | 7 | predicted_BB | 1.0000 | boost | better |
| away | ARI | batter | SS | Geraldo Perdomo | worse | 12 | 3 | 9 | 4 | 8 | predicted_H | -0.9600 | deboost | worse |
| away | ARI | batter | LF | Tommy Troy | worse | 11 | 2 | 9 | 3 | 8 | predicted_R | -0.9200 | deboost | worse |
| away | ARI | batter | C | Aramis Garcia | boosted | 8 | 5 | 3 | 4 | 4 | predicted_HR | 0.8790 | boost | better |
| home | MIA | batter | LF | Esteury Ruiz | worse | 10 | 2 | 8 | 2 | 8 | predicted_BB | 0.8540 | boost | better |
| away | ARI | batter | 3B | Nolan Arenado | worse | 9 | 1 | 8 | 2 | 7 | predicted_H | -0.8500 | deboost | worse |
| away | ARI | batter | 2B | Ketel Marte | worse | 10 | 0 | 10 | 1 | 9 | predicted_SO | -0.7050 | deboost | better |
| home | MIA | pitcher | Starter | Tyler Phillips | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.6667 | deboost | worse |
| home | MIA | pitcher | Middle Reliever | Ryan Gusto | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| home | MIA | pitcher | Middle Reliever | Anthony Bender | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Merrill Kelly |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.9669 |
| ESPN Rank | 579 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0427 |
| Avg Velo | 88.9520 |
| Avg Spin | 2303.2025 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 4 |
| Pre H | 7 |
| Pre BB | 1 |
| Pre SO | 5 |
| Season ERA | 5.7086 |
| Season WHIP | 1.4914 |
| Role Avg IP | 5.8330 |
| Recent Avg IP | 6.4670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"opponent": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"edges": {
"quality_edge": -0.1359,
"offense_edge": 0.0107,
"opponent_offense_edge": -0.0486,
"defense_strength": -0.0502,
"opponent_defense_weakness": -0.0313,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.995,
"run_prevention": 1.004,
"strikeout": 0.9998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "518876",
"profile": {
"available": true,
"pitcher_id": "518876",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 178.0,
"k_percent": 14.3,
"bb_percent": 9.7,
"woba": 0.374,
"xwoba": 0.414,
"sweet_spot_percent": 43.8,
"barrel_batted_rate": 16.5,
"hard_hit_percent": 44.8,
"avg_best_speed": 79.2091,
"avg_hyper_speed": 95.292,
"whiff_percent": 23.5,
"swing_percent": 48.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.8991,
"command_and_miss": -0.68,
"regression_edge": -1.1429,
"xwoba_edge": -2.5,
"barrel_edge": -2.0444,
"hard_hit_edge": -0.9143,
"whiff_edge": -0.3,
"bb_edge": -0.175,
"pitch_design_score": -0.0427
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "518876",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 98,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 98,
"pitch_usage": 0.0,
"release_speed": 88.95200342697242,
"release_spin_rate": 2303.202452073771,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 98,
"pitch_usage": 0.0,
"release_speed": 88.95200342697242,
"release_spin_rate": 2303.202452073771,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.952,
"release_spin_rate": 2303.2025,
"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.0427,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3047,
"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.9669,
"sample_weight": 0.712,
"run_prevention_factor": 1.0822,
"strikeout_factor": 0.9573,
"walk_factor": 1.01,
"homer_factor": 1.1959,
"woba_minus_xwoba": -0.04,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "518876",
"espn_id": 32968,
"player_name": "Merrill Kelly",
"team": "ARI",
"role": "pitcher",
"espn_rank": 579,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 579,
"gp_value": 10.0,
"gp_rank": 380,
"gs_value": 10.0,
"gs_rank": 104,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 5.7085,
"era_rank": null,
"w_value": 5.0,
"w_rank": 30,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 58.1,
"ip_rank": 104,
"h_value": 62.0,
"h_rank": 70,
"er_value": 37.0,
"er_rank": 31,
"hr_value": 13.0,
"hr_rank": 14,
"bb_value": 25.0,
"bb_rank": 39,
"k_value": 37.0,
"k_rank": 157,
"k_per_9_value": 5.7085714,
"k_per_9_rank": 40,
"whip_value": 1.4914,
"whip_rank": null,
"war_value": -0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0585,
"adjusted": 3
},
"predicted_H": {
"original": 6.0,
"factor": 1.0585,
"adjusted": 6
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0071,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.1395,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9696,
"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": 58.1,
"ER": 37,
"H": 62,
"BB": 25,
"SO": 37,
"HR": 13,
"ERA": 5.708571428571428,
"WHIP": 1.4914285714285713,
"K9": 5.708571428571428,
"HR9": 2.005714285714286,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "518876",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 98,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 98,
"pitch_usage": 0.0,
"release_speed": 88.95200342697242,
"release_spin_rate": 2303.202452073771,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 98,
"pitch_usage": 0.0,
"release_speed": 88.95200342697242,
"release_spin_rate": 2303.202452073771,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.952,
"release_spin_rate": 2303.2025,
"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.0427,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3047,
"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": "518876",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 10,
"reference_playing_time": 8.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 32.1,
"ER": 15.0,
"R": 15.0,
"H": 30.0,
"BB": 7.0,
"SO": 17.0,
"HR": 7.0,
"BF": 135.0,
"Pitches": 463.0
},
"per_game": {
"IP": 6.1,
"ER": 3.0,
"R": 3.0,
"H": 6.0,
"BB": 1.4,
"SO": 3.4,
"HR": 1.4,
"BF": 27.0,
"Pitches": 92.6
},
"rates": {
"ERA": 4.1753,
"WHIP": 1.1443,
"ER_per_IP": 0.46392,
"H_per_IP": 0.92784,
"BB_per_IP": 0.21649,
"SO_per_IP": 0.52577,
"HR_per_IP": 0.21649
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 58.1,
"ER": 37.0,
"R": 37.0,
"H": 62.0,
"BB": 25.0,
"SO": 37.0,
"HR": 13.0,
"BF": 259.0,
"Pitches": 942.0
},
"per_game": {
"IP": 6.0,
"ER": 3.7,
"R": 3.7,
"H": 6.2,
"BB": 2.5,
"SO": 3.7,
"HR": 1.3,
"BF": 25.9,
"Pitches": 94.2
},
"rates": {
"ERA": 5.7086,
"WHIP": 1.4914,
"ER_per_IP": 0.63429,
"H_per_IP": 1.06286,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.63429,
"HR_per_IP": 0.22286
}
},
"season": {
"games": 10,
"totals": {
"IP": 58.1,
"ER": 37.0,
"R": 37.0,
"H": 62.0,
"BB": 25.0,
"SO": 37.0,
"HR": 13.0,
"BF": 259.0,
"Pitches": 942.0
},
"per_game": {
"IP": 6.0,
"ER": 3.7,
"R": 3.7,
"H": 6.2,
"BB": 2.5,
"SO": 3.7,
"HR": 1.3,
"BF": 25.9,
"Pitches": 94.2
},
"rates": {
"ERA": 5.7086,
"WHIP": 1.4914,
"ER_per_IP": 0.63429,
"H_per_IP": 1.06286,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.63429,
"HR_per_IP": 0.22286
}
}
},
"weighted_prediction": {
"predicted_IP": 6.2,
"predicted_ER": 3.538,
"predicted_H": 6.641,
"predicted_BB": 2.227,
"predicted_SO": 4.714,
"predicted_HR": 1.312,
"predicted_ERA": 4.6889,
"predicted_WHIP": 1.3057
}
}{
"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": 8.0,
"form": 6.2,
"final": 7.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 3.538,
"final": 2.7831,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 6.641,
"final": 6.3264,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.227,
"final": 1.6248,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 4.714,
"final": 4.8544,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 1.312,
"final": 0.668,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.6889,
"final": 4.6889,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3057,
"final": 1.3057,
"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 Ginkel |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0073 |
| ESPN Rank | 170 |
| 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 | 3 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 9 |
| Season WHIP | 2 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"opponent": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"edges": {
"quality_edge": -0.1359,
"offense_edge": 0.0107,
"opponent_offense_edge": -0.0486,
"defense_strength": -0.0502,
"opponent_defense_weakness": -0.0313,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.995,
"run_prevention": 1.004,
"strikeout": 0.9998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656464",
"profile": {
"available": true,
"pitcher_id": "656464",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 0.0,
"k_percent": 22.8,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.312,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0414,
"command_and_miss": 0.0064,
"regression_edge": -0.0857,
"xwoba_edge": 0.0857,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.0,
"whiff_edge": 0.0,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656464",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0073,
"sample_weight": 0.45,
"run_prevention_factor": 0.9994,
"strikeout_factor": 1.0003,
"walk_factor": 1.0,
"homer_factor": 0.9972,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656464",
"espn_id": 41432,
"player_name": "Kevin Ginkel",
"team": "ARI",
"role": "pitcher",
"espn_rank": 170,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 170,
"gp_value": 28.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.8051,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 25.2,
"ip_rank": 287,
"h_value": 21.0,
"h_rank": 284,
"er_value": 8.0,
"er_rank": 367,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 6.0,
"bb_rank": 414,
"k_value": 30.0,
"k_rank": 220,
"k_per_9_value": 10.51948,
"k_per_9_rank": 20,
"whip_value": 1.0519,
"whip_rank": null,
"war_value": 0.54,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9997,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9997,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9987,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 1.0001,
"adjusted": 0
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 1.0,
"ER": 1,
"H": 2,
"BB": 0,
"SO": 0,
"HR": 0,
"ERA": 9.0,
"WHIP": 2.0,
"K9": 0.0,
"HR9": 0.0,
"games_pitched": 1,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 1,
"error_prone": false
},
"games_count": 1,
"latest_game_date": "2026-03-27T00:00:00"
}{
"available": false,
"pitcher_id": "656464",
"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.198,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.038,
"prior_weight": 0.962
},
"role": "pitcher",
"player_id": "656464",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 1,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 1,
"totals": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.0
},
"rates": {
"ERA": 9.0,
"WHIP": 2.0,
"ER_per_IP": 1.0,
"H_per_IP": 2.0,
"BB_per_IP": 0.0,
"SO_per_IP": 0.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 1,
"totals": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.0
},
"rates": {
"ERA": 9.0,
"WHIP": 2.0,
"ER_per_IP": 1.0,
"H_per_IP": 2.0,
"BB_per_IP": 0.0,
"SO_per_IP": 0.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 1,
"totals": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 5.0,
"Pitches": 21.0
},
"rates": {
"ERA": 9.0,
"WHIP": 2.0,
"ER_per_IP": 1.0,
"H_per_IP": 2.0,
"BB_per_IP": 0.0,
"SO_per_IP": 0.0,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.181,
"predicted_H": 0.358,
"predicted_BB": 0.126,
"predicted_SO": 0.323,
"predicted_HR": 0.049,
"predicted_ERA": 4.5502,
"predicted_WHIP": 1.3505
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7564,
"form_weight": 0.2436,
"form_reliability": 0.038,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.198,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.038,
"prior_weight": 0.962
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 0.181,
"final": 1.557,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 0.358,
"final": 3.113,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.126,
"final": 0.0307,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.323,
"final": 0.8351,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.049,
"final": 0.0119,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.5502,
"final": 4.5502,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3505,
"final": 1.3505,
"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 | Paul Sewald |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0073 |
| ESPN Rank | 237 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 2 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 0 |
| Season WHIP | 0 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"opponent": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"edges": {
"quality_edge": -0.1359,
"offense_edge": 0.0107,
"opponent_offense_edge": -0.0486,
"defense_strength": -0.0502,
"opponent_defense_weakness": -0.0313,
"recent_win_pct_edge": -0.4
},
"player_factors": {
"ip": 0.995,
"run_prevention": 1.004,
"strikeout": 0.9998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "623149",
"profile": {
"available": true,
"pitcher_id": "623149",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 0.0,
"k_percent": 22.8,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.312,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0414,
"command_and_miss": 0.0064,
"regression_edge": -0.0857,
"xwoba_edge": 0.0857,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.0,
"whiff_edge": 0.0,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "623149",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0073,
"sample_weight": 0.45,
"run_prevention_factor": 0.9994,
"strikeout_factor": 1.0003,
"walk_factor": 1.0,
"homer_factor": 0.9972,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "623149",
"espn_id": 35009,
"player_name": "Paul Sewald",
"team": "ARI",
"role": "pitcher",
"espn_rank": 237,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 237,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.4714,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 15.0,
"sv_rank": 6,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 23.1,
"ip_rank": 320,
"h_value": 11.0,
"h_rank": 455,
"er_value": 9.0,
"er_rank": 329,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 6.0,
"bb_rank": 414,
"k_value": 26.0,
"k_rank": 264,
"k_per_9_value": 10.028572,
"k_per_9_rank": 22,
"whip_value": 0.7285,
"whip_rank": null,
"war_value": 0.29,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9997,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9997,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9987,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 1.0001,
"adjusted": 0
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 0.1,
"ER": 0,
"H": 0,
"BB": 0,
"SO": 0,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.0,
"K9": 0.0,
"HR9": 0.0,
"games_pitched": 1,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 1,
"error_prone": false
},
"games_count": 1,
"latest_game_date": "2026-03-28T00:00:00"
}{
"available": false,
"pitcher_id": "623149",
"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.066,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.013,
"prior_weight": 0.987
},
"role": "pitcher",
"player_id": "623149",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 1,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 1,
"totals": {
"IP": 0.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 1.0,
"Pitches": 5.0
},
"per_game": {
"IP": 0.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 1.0,
"Pitches": 5.0
},
"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.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 1,
"totals": {
"IP": 0.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 1.0,
"Pitches": 5.0
},
"per_game": {
"IP": 0.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 1.0,
"Pitches": 5.0
},
"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.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 1,
"totals": {
"IP": 0.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 1.0,
"Pitches": 5.0
},
"per_game": {
"IP": 0.1,
"ER": 0.0,
"R": 0.0,
"H": 0.0,
"BB": 0.0,
"SO": 0.0,
"HR": 0.0,
"BF": 1.0,
"Pitches": 5.0
},
"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.0,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.16,
"predicted_H": 0.316,
"predicted_BB": 0.12,
"predicted_SO": 0.308,
"predicted_HR": 0.046,
"predicted_ERA": 4.3175,
"predicted_WHIP": 1.3076
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.767,
"form_weight": 0.233,
"form_reliability": 0.013,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.066,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.013,
"prior_weight": 0.987
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.16,
"final": 0.0373,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.316,
"final": 0.8406,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.12,
"final": 0.795,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.308,
"final": 0.0718,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.046,
"final": 0.0107,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.3175,
"final": 4.3175,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3076,
"final": 1.3076,
"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.248 | 0.000 | 0.000 | Hitting_2B | 0.248 | 0.000 | -0.248 | 0.000 |
| predicted_3B | 0.150 | 0.000 | 0.000 | Hitting_3B | 0.150 | 0.000 | -0.150 | 0.000 |
| predicted_AB | 4.180 | 3.000 | 6.000 | Hitting_AB | 3.705 | 3.000 | -0.705 | 0.000 |
| predicted_AVG | 0.241 | 0.000 | 0.333 | Hitting_AVG | 0.296 | 0.333 | -0.296 | -0.333 |
| predicted_BB | 0.594 | 1.000 | 1.000 | Hitting_BB | 0.594 | 1.000 | 0.406 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_H | 1.000 | 0.000 | 2.000 | Hitting_H | 1.098 | 1.000 | -1.098 | -1.000 |
| predicted_HR | 0.230 | 0.000 | 0.000 | Hitting_HR | 0.154 | 0.000 | -0.154 | 0.000 |
| predicted_OBP | 0.334 | 0.250 | 0.429 | Hitting_OBP | 0.395 | 0.500 | -0.145 | -0.250 |
| predicted_R | 0.701 | 0.000 | 1.000 | Hitting_R | 0.701 | 0.000 | -0.701 | 0.000 |
| predicted_RBI | 0.560 | 0.000 | 1.000 | Hitting_RBI | 0.568 | 0.000 | -0.568 | 0.000 |
| predicted_SLG | 0.496 | 0.000 | 0.333 | Hitting_SLG | 0.569 | 0.333 | -0.569 | -0.333 |
| predicted_SO | 0.979 | 0.000 | 1.000 | Hitting_SO | 0.979 | 0.000 | -0.979 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 12 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 8 |
| Better Metrics | 5 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.5940 -> 1.0000 (boost 0.4060, better) |
| Biggest Deboost | predicted_AB: 4.1800 -> 3.0000 (deboost -1.1800, 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.1800 -> 6.4881 (boost 2.3081, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 1 | 0 | 1 | 0 | predicted_SLG: 0.5304 -> 0.5534 (boost 0.0230, 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_H: 1.6293 -> 2.0000 (boost 0.3707, better) | predicted_SO: 1.6040 -> 1.0000 (deboost -0.6040, better) | AB rounded to 6 (raw=6.49), rates preserved: AVG=0.251 HR/AB=0.063 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0974 -> 1.0000 (deboost -0.0974, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3452 -> 0.4290 (boost 0.0838, better) | predicted_SLG: 0.5534 -> 0.3330 (deboost -0.2204, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.5534 (boost 0.2204, better) | predicted_OBP: 0.4290 -> 0.3452 (deboost -0.0838, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682998",
"player_name": "Corbin Carroll",
"position": "RF",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.248,
"predicted_3B": 0.15,
"predicted_AB": 4.18,
"predicted_AVG": 0.241,
"predicted_BB": 0.594,
"predicted_H": 1.0,
"predicted_HR": 0.23,
"predicted_OBP": 0.334,
"predicted_R": 0.701,
"predicted_RBI": 0.56,
"predicted_SLG": 0.496,
"predicted_SO": 0.979
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3699,
"predicted_3B": 0.1818,
"predicted_AB": 6.4881,
"predicted_AVG": 0.2517,
"predicted_BB": 0.935,
"predicted_H": 1.6607,
"predicted_HBP": 0.053,
"predicted_HR": 0.4128,
"predicted_OBP": 0.345,
"predicted_R": 1.1347,
"predicted_RBI": 0.9482,
"predicted_SLG": 0.5304,
"predicted_SO": 1.5982
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.248,
"after": 0.3699,
"delta": 0.1219,
"percent_delta": 0.4915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.15,
"after": 0.1818,
"delta": 0.0318,
"percent_delta": 0.212,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.18,
"after": 6.4881,
"delta": 2.3081,
"percent_delta": 0.5522,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2517,
"delta": 0.0107,
"percent_delta": 0.0444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.594,
"after": 0.935,
"delta": 0.341,
"percent_delta": 0.5741,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.6607,
"delta": 0.6607,
"percent_delta": 0.6607,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.23,
"after": 0.4128,
"delta": 0.1828,
"percent_delta": 0.7948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.345,
"delta": 0.011,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.701,
"after": 1.1347,
"delta": 0.4337,
"percent_delta": 0.6187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.9482,
"delta": 0.3882,
"percent_delta": 0.6932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.496,
"after": 0.5304,
"delta": 0.0344,
"percent_delta": 0.0694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.979,
"after": 1.5982,
"delta": 0.6192,
"percent_delta": 0.6325,
"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.18,
"after": 6.4881,
"delta": 2.3081,
"percent_delta": 0.5522,
"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.3699,
"predicted_3B": 0.1818,
"predicted_AB": 6.4881,
"predicted_AVG": 0.2511,
"predicted_BB": 0.9316,
"predicted_H": 1.6293,
"predicted_HBP": 0.053,
"predicted_HR": 0.4092,
"predicted_OBP": 0.3452,
"predicted_R": 1.0974,
"predicted_RBI": 0.917,
"predicted_SLG": 0.5534,
"predicted_SO": 1.604
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3699,
"after": 0.3699,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1818,
"after": 0.1818,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4881,
"after": 6.4881,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2517,
"after": 0.2511,
"delta": -0.0006,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.935,
"after": 0.9316,
"delta": -0.0034,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6607,
"after": 1.6293,
"delta": -0.0314,
"percent_delta": -0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.053,
"after": 0.053,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4128,
"after": 0.4092,
"delta": -0.0036,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3452,
"delta": 0.0002,
"percent_delta": 0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.1347,
"after": 1.0974,
"delta": -0.0373,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9482,
"after": 0.917,
"delta": -0.0312,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5304,
"after": 0.5534,
"delta": 0.023,
"percent_delta": 0.0434,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5982,
"after": 1.604,
"delta": 0.0058,
"percent_delta": 0.0036,
"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.5304,
"after": 0.5534,
"delta": 0.023,
"percent_delta": 0.0434,
"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.49), rates preserved: AVG=0.251 HR/AB=0.063",
"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.3699,
"after": 0.0,
"delta": -0.3699,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1818,
"after": 0.0,
"delta": -0.1818,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.4881,
"after": 6.0,
"delta": -0.4881,
"percent_delta": -0.0752,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9316,
"after": 1.0,
"delta": 0.0684,
"percent_delta": 0.0734,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6293,
"after": 2.0,
"delta": 0.3707,
"percent_delta": 0.2275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.053,
"after": 0.0,
"delta": -0.053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4092,
"after": 0.0,
"delta": -0.4092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.917,
"after": 1.0,
"delta": 0.083,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.604,
"after": 1.0,
"delta": -0.604,
"percent_delta": -0.3766,
"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": 1.6293,
"after": 2.0,
"delta": 0.3707,
"percent_delta": 0.2275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.604,
"after": 1.0,
"delta": -0.604,
"percent_delta": -0.3766,
"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.0974,
"after": 1.0,
"delta": -0.0974,
"percent_delta": -0.0888,
"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.0974,
"after": 1.0,
"delta": -0.0974,
"percent_delta": -0.0888,
"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.2511,
"after": 0.333,
"delta": 0.0819,
"percent_delta": 0.3262,
"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.3452,
"after": 0.429,
"delta": 0.0838,
"percent_delta": 0.2428,
"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.5534,
"after": 0.333,
"delta": -0.2204,
"percent_delta": -0.3983,
"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.3452,
"after": 0.429,
"delta": 0.0838,
"percent_delta": 0.2428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5534,
"after": 0.333,
"delta": -0.2204,
"percent_delta": -0.3983,
"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": 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": 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.2511,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3452,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5534,
"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.2511,
"delta": -0.0819,
"percent_delta": -0.2459,
"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.3452,
"delta": -0.0838,
"percent_delta": -0.1954,
"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.5534,
"delta": 0.2204,
"percent_delta": 0.6619,
"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.5534,
"delta": 0.2204,
"percent_delta": 0.6619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3452,
"delta": -0.0838,
"percent_delta": -0.1954,
"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.248,
"after": 0.0,
"delta": -0.248,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.18,
"after": 3.0,
"delta": -1.18,
"percent_delta": -0.2823,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2511,
"delta": 0.0101,
"percent_delta": 0.0419,
"direction": "boost",
"projection_effect": "better",
"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.0,
"after": 0.0,
"delta": -1.0,
"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.334,
"after": 0.3452,
"delta": 0.0112,
"percent_delta": 0.0335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.701,
"after": 0.0,
"delta": -0.701,
"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.496,
"after": 0.5534,
"delta": 0.0574,
"percent_delta": 0.1157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.979,
"after": 0.0,
"delta": -0.979,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 4,
"deboosted_metrics": 8,
"better_metrics": 5,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.594,
"after": 1.0,
"delta": 0.406,
"percent_delta": 0.6835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.18,
"after": 3.0,
"delta": -1.18,
"percent_delta": -0.2823,
"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.248 | - |
| predicted_3B | 0.150 | - |
| predicted_AB | 4.180 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.594 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.230 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.701 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.496 | - |
| predicted_SO | 0.979 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.370 | 0.122 |
| predicted_3B | 0.182 | 0.032 |
| predicted_AB | 6.488 | 2.308 |
| predicted_AVG | 0.252 | 0.011 |
| predicted_BB | 0.935 | 0.341 |
| predicted_H | 1.661 | 0.661 |
| predicted_HBP | 0.053 | - |
| predicted_HR | 0.413 | 0.183 |
| predicted_OBP | 0.345 | 0.011 |
| predicted_R | 1.135 | 0.434 |
| predicted_RBI | 0.948 | 0.388 |
| predicted_SLG | 0.530 | 0.034 |
| predicted_SO | 1.598 | 0.619 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.370 | 0.000 |
| predicted_3B | 0.182 | 0.000 |
| predicted_AB | 6.488 | 0.000 |
| predicted_AVG | 0.251 | -0.001 |
| predicted_BB | 0.932 | -0.003 |
| predicted_H | 1.629 | -0.031 |
| predicted_HBP | 0.053 | 0.000 |
| predicted_HR | 0.409 | -0.004 |
| predicted_OBP | 0.345 | 0.000 |
| predicted_R | 1.097 | -0.037 |
| predicted_RBI | 0.917 | -0.031 |
| predicted_SLG | 0.553 | 0.023 |
| predicted_SO | 1.604 | 0.006 |
AB rounded to 6 (raw=6.49), rates preserved: AVG=0.251 HR/AB=0.063
| 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.370 |
| predicted_3B | 0.000 | -0.182 |
| predicted_AB | 6.000 | -0.488 |
| predicted_AVG | 0.333 | 0.082 |
| predicted_BB | 1.000 | 0.068 |
| predicted_H | 2.000 | 0.371 |
| predicted_HR | 0.000 | -0.409 |
| predicted_OBP | 0.429 | 0.084 |
| predicted_R | 1.000 | -0.097 |
| predicted_RBI | 1.000 | 0.083 |
| predicted_SLG | 0.333 | -0.220 |
| predicted_SO | 1.000 | -0.604 |
Attached 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 | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 3.000 | 0.000 | 0.000 | 2.000 | 3.000 | 3.000 | 3.000 | 5.000 | 0.1765 | 0.3000 | 0.5294 | 0.1765 | 0.1177 | 0.1765 | 0.1765 | 0.2941 |
| last_10 | 0.20 | 10 | - | 38.000 | 10.000 | 3.000 | 0.000 | 4.000 | 5.000 | 6.000 | 3.000 | 7.000 | 0.2632 | 0.3171 | 0.6579 | 0.2632 | 0.1053 | 0.1316 | 0.0790 | 0.1842 |
| season | 0.60 | 64 | - | 867.000 | 257.000 | 58.000 | 35.000 | 36.000 | 133.000 | 164.000 | 139.000 | 229.000 | 0.2964 | 0.3949 | 0.5686 | 0.2964 | 0.0415 | 0.1534 | 0.1603 | 0.2641 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5240 |
| predicted_3B | 0.2220 |
| predicted_AB | 9.4060 |
| predicted_AVG | 0.2653 |
| predicted_BB | 1.3660 |
| predicted_H | 2.4960 |
| predicted_HBP | 0.0530 |
| predicted_HR | 0.6440 |
| predicted_OBP | 0.3590 |
| predicted_R | 1.6830 |
| predicted_RBI | 1.4390 |
| predicted_SLG | 0.5738 |
| predicted_SO | 2.3810 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2480 | 0.5240 | 0.3699 | model_form_blend |
| predicted_3B | 0.1500 | 0.2220 | 0.1818 | model_form_blend |
| predicted_AB | 4.1800 | 9.4060 | 6.4881 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2653 | 0.2517 | model_form_blend |
| predicted_BB | 0.5940 | 1.3660 | 0.9350 | model_form_blend |
| predicted_H | 1.0000 | 2.4960 | 1.6607 | model_form_blend |
| predicted_HBP | - | 0.0530 | 0.0530 | form_only |
| predicted_HR | 0.2300 | 0.6440 | 0.4128 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3590 | 0.3450 | model_form_blend |
| predicted_R | 0.7010 | 1.6830 | 1.1347 | model_form_blend |
| predicted_RBI | 0.5600 | 1.4390 | 0.9482 | model_form_blend |
| predicted_SLG | 0.4960 | 0.5738 | 0.5304 | model_form_blend |
| predicted_SO | 0.9790 | 2.3810 | 1.5982 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 234 |
| Season rows before report date | 234 |
| Report year | 2026 |
| Profile rows used | 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 | 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 | 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 | RF |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 682998 |
| playerID | 682998 |
| playerName | Corbin Carroll |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.6 |
| sl_bb_percent | 12.1 |
| sl_woba | 0.398 |
| sl_xwoba | 0.368 |
| sl_xba | 0.269 |
| sl_xslg | 0.488 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 13.4 |
| sl_hard_hit_percent | 50.8 |
| sl_exit_velocity_avg | 92.0 |
| sl_launch_angle_avg | 12.7 |
| sl_whiff_percent | 28.0 |
| 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.239 | 0.000 | 0.000 | Hitting_2B | 0.239 | 0.000 | -0.239 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.620 | 4.000 | 6.000 | Hitting_AB | 3.463 | 3.000 | 0.537 | 1.000 |
| predicted_AVG | 0.236 | 0.000 | 0.167 | Hitting_AVG | 0.273 | 0.333 | -0.273 | -0.333 |
| predicted_BB | 0.385 | 0.000 | 1.000 | Hitting_BB | 0.385 | 1.000 | -0.385 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.850 | 0.000 | 1.000 | Hitting_H | 0.946 | 1.000 | -0.946 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_OBP | 0.315 | 0.000 | 0.286 | Hitting_OBP | 0.357 | 0.500 | -0.357 | -0.500 |
| predicted_R | 0.566 | 0.000 | 1.000 | Hitting_R | 0.566 | 0.000 | -0.566 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.576 | 0.000 | -0.576 | 0.000 |
| predicted_SLG | 0.374 | 0.000 | 0.167 | Hitting_SLG | 0.469 | 0.333 | -0.469 | -0.333 |
| predicted_SO | 0.722 | 0.000 | 1.000 | Hitting_SO | 0.722 | 2.000 | -0.722 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.6200 -> 4.0000 (boost 0.3800, better) |
| Biggest Deboost | predicted_H: 0.8500 -> 0.0000 (deboost -0.8500, 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.6200 -> 5.5706 (boost 1.9506, 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.3208 -> 0.3054 (deboost -0.0154, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_AB: 5.5706 -> 6.0000 (boost 0.4294, better) | predicted_SO: 1.3123 -> 1.0000 (deboost -0.3123, better) | AB rounded to 6 (raw=5.57), rates preserved: AVG=0.231 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7442 -> 1.0000 (boost 0.2558, 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 | 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.3772 (boost 0.2102, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "571448",
"player_name": "Nolan Arenado",
"position": "3B",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.0,
"predicted_AB": 3.62,
"predicted_AVG": 0.236,
"predicted_BB": 0.385,
"predicted_H": 0.85,
"predicted_HR": 0.11,
"predicted_OBP": 0.315,
"predicted_R": 0.566,
"predicted_RBI": 0.41,
"predicted_SLG": 0.374,
"predicted_SO": 0.722
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.301,
"predicted_3B": 0.0004,
"predicted_AB": 5.5706,
"predicted_AVG": 0.2361,
"predicted_BB": 0.5973,
"predicted_H": 1.3129,
"predicted_HBP": 0.262,
"predicted_HR": 0.172,
"predicted_OBP": 0.3208,
"predicted_R": 0.7695,
"predicted_RBI": 0.6456,
"predicted_SLG": 0.3754,
"predicted_SO": 1.3076
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.239,
"after": 0.301,
"delta": 0.062,
"percent_delta": 0.2594,
"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.62,
"after": 5.5706,
"delta": 1.9506,
"percent_delta": 0.5388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2361,
"delta": 0.0001,
"percent_delta": 0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.385,
"after": 0.5973,
"delta": 0.2123,
"percent_delta": 0.5514,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 1.3129,
"delta": 0.4629,
"percent_delta": 0.5446,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.172,
"delta": 0.062,
"percent_delta": 0.5636,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3208,
"delta": 0.0058,
"percent_delta": 0.0184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.566,
"after": 0.7695,
"delta": 0.2035,
"percent_delta": 0.3595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6456,
"delta": 0.2356,
"percent_delta": 0.5746,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3754,
"delta": 0.0014,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.722,
"after": 1.3076,
"delta": 0.5856,
"percent_delta": 0.8111,
"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.62,
"after": 5.5706,
"delta": 1.9506,
"percent_delta": 0.5388,
"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.301,
"predicted_3B": 0.0004,
"predicted_AB": 5.5706,
"predicted_AVG": 0.2312,
"predicted_BB": 0.5951,
"predicted_H": 1.2881,
"predicted_HBP": 0.262,
"predicted_HR": 0.1705,
"predicted_OBP": 0.3054,
"predicted_R": 0.7442,
"predicted_RBI": 0.6244,
"predicted_SLG": 0.3772,
"predicted_SO": 1.3123
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.301,
"after": 0.301,
"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.5706,
"after": 5.5706,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2361,
"after": 0.2312,
"delta": -0.0049,
"percent_delta": -0.0208,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5973,
"after": 0.5951,
"delta": -0.0022,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3129,
"after": 1.2881,
"delta": -0.0248,
"percent_delta": -0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.262,
"after": 0.262,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.172,
"after": 0.1705,
"delta": -0.0015,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3208,
"after": 0.3054,
"delta": -0.0154,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7695,
"after": 0.7442,
"delta": -0.0253,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6456,
"after": 0.6244,
"delta": -0.0212,
"percent_delta": -0.0328,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3754,
"after": 0.3772,
"delta": 0.0018,
"percent_delta": 0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.3076,
"after": 1.3123,
"delta": 0.0047,
"percent_delta": 0.0036,
"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.3208,
"after": 0.3054,
"delta": -0.0154,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.57), rates preserved: AVG=0.231 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.301,
"after": 0.0,
"delta": -0.301,
"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.5706,
"after": 6.0,
"delta": 0.4294,
"percent_delta": 0.0771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5951,
"after": 1.0,
"delta": 0.4049,
"percent_delta": 0.6804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2881,
"after": 1.0,
"delta": -0.2881,
"percent_delta": -0.2237,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.262,
"after": 0.0,
"delta": -0.262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1705,
"after": 0.0,
"delta": -0.1705,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6244,
"after": 1.0,
"delta": 0.3756,
"percent_delta": 0.6015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3123,
"after": 1.0,
"delta": -0.3123,
"percent_delta": -0.238,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 5.5706,
"after": 6.0,
"delta": 0.4294,
"percent_delta": 0.0771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3123,
"after": 1.0,
"delta": -0.3123,
"percent_delta": -0.238,
"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.7442,
"after": 1.0,
"delta": 0.2558,
"percent_delta": 0.3437,
"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.7442,
"after": 1.0,
"delta": 0.2558,
"percent_delta": 0.3437,
"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.2312,
"after": 0.167,
"delta": -0.0642,
"percent_delta": -0.2777,
"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.3054,
"after": 0.286,
"delta": -0.0194,
"percent_delta": -0.0635,
"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": 1.0,
"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.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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 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.2312,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3054,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3772,
"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.2312,
"delta": 0.0642,
"percent_delta": 0.3846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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.3054,
"delta": 0.0194,
"percent_delta": 0.068,
"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": 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.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.239,
"after": 0.0,
"delta": -0.239,
"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.62,
"after": 4.0,
"delta": 0.38,
"percent_delta": 0.105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2312,
"delta": -0.0048,
"percent_delta": -0.0203,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.85,
"after": 0.0,
"delta": -0.85,
"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.315,
"after": 0.3054,
"delta": -0.0096,
"percent_delta": -0.0305,
"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.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.374,
"after": 0.3772,
"delta": 0.0032,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.722,
"after": 0.0,
"delta": -0.722,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.62,
"after": 4.0,
"delta": 0.38,
"percent_delta": 0.105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.85,
"after": 0.0,
"delta": -0.85,
"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.000 | - |
| predicted_AB | 3.620 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.385 | - |
| predicted_H | 0.850 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.566 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.374 | - |
| predicted_SO | 0.722 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.301 | 0.062 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.571 | 1.951 |
| predicted_AVG | 0.236 | 0.000 |
| predicted_BB | 0.597 | 0.212 |
| predicted_H | 1.313 | 0.463 |
| predicted_HBP | 0.262 | - |
| predicted_HR | 0.172 | 0.062 |
| predicted_OBP | 0.321 | 0.006 |
| predicted_R | 0.769 | 0.204 |
| predicted_RBI | 0.646 | 0.236 |
| predicted_SLG | 0.375 | 0.001 |
| predicted_SO | 1.308 | 0.586 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.301 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.571 | 0.000 |
| predicted_AVG | 0.231 | -0.005 |
| predicted_BB | 0.595 | -0.002 |
| predicted_H | 1.288 | -0.025 |
| predicted_HBP | 0.262 | 0.000 |
| predicted_HR | 0.171 | -0.001 |
| predicted_OBP | 0.305 | -0.015 |
| predicted_R | 0.744 | -0.025 |
| predicted_RBI | 0.624 | -0.021 |
| predicted_SLG | 0.377 | 0.002 |
| predicted_SO | 1.312 | 0.005 |
AB rounded to 6 (raw=5.57), rates preserved: AVG=0.231 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.301 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.429 |
| predicted_AVG | 0.167 | -0.064 |
| predicted_BB | 1.000 | 0.405 |
| predicted_H | 1.000 | -0.288 |
| predicted_HR | 0.000 | -0.171 |
| predicted_OBP | 0.286 | -0.019 |
| predicted_R | 1.000 | 0.256 |
| predicted_RBI | 1.000 | 0.376 |
| predicted_SLG | 0.167 | -0.210 |
| predicted_SO | 1.000 | -0.312 |
Attached 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 | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 5.000 | 0.1875 | 0.3158 | 0.1875 | 0.1875 | 0.0000 | 0.0000 | 0.1250 | 0.3125 |
| last_10 | 0.20 | 10 | - | 35.000 | 6.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 3.000 | 12.000 | 0.1714 | 0.2564 | 0.2857 | 0.1714 | 0.0286 | 0.0857 | 0.0857 | 0.3429 |
| season | 0.60 | 62 | - | 710.000 | 194.000 | 49.000 | 0.000 | 30.000 | 118.000 | 116.000 | 79.000 | 148.000 | 0.2732 | 0.3571 | 0.4690 | 0.2732 | 0.0423 | 0.1662 | 0.1113 | 0.2084 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3800 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.0570 |
| predicted_AVG | 0.2362 |
| predicted_BB | 0.8680 |
| predicted_H | 1.9030 |
| predicted_HBP | 0.2620 |
| predicted_HR | 0.2510 |
| predicted_OBP | 0.3282 |
| predicted_R | 1.0290 |
| predicted_RBI | 0.9460 |
| predicted_SLG | 0.3772 |
| predicted_SO | 2.0540 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2390 | 0.3800 | 0.3010 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6200 | 8.0570 | 5.5706 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2362 | 0.2361 | model_form_blend |
| predicted_BB | 0.3850 | 0.8680 | 0.5973 | model_form_blend |
| predicted_H | 0.8500 | 1.9030 | 1.3129 | model_form_blend |
| predicted_HBP | - | 0.2620 | 0.2620 | form_only |
| predicted_HR | 0.1100 | 0.2510 | 0.1720 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3282 | 0.3208 | model_form_blend |
| predicted_R | 0.5660 | 1.0290 | 0.7695 | model_form_blend |
| predicted_RBI | 0.4100 | 0.9460 | 0.6456 | model_form_blend |
| predicted_SLG | 0.3740 | 0.3772 | 0.3754 | model_form_blend |
| predicted_SO | 0.7220 | 2.0540 | 1.3076 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 205 |
| Season rows before report date | 205 |
| Report year | 2026 |
| Profile rows used | 205 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.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 | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 571448 |
| playerID | 571448 |
| playerName | Nolan Arenado |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.341 |
| sl_xwoba | 0.32 |
| sl_xba | 0.253 |
| sl_xslg | 0.386 |
| sl_sweet_spot_percent | 37.3 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 31.1 |
| sl_exit_velocity_avg | 85.3 |
| sl_launch_angle_avg | 18.8 |
| sl_whiff_percent | 23.3 |
| 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.224 | 0.000 | 0.000 | Hitting_2B | 0.224 | 0.000 | -0.224 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.730 | 4.000 | 5.000 | Hitting_AB | 3.597 | 3.000 | 0.403 | 1.000 |
| predicted_AVG | 0.252 | 0.500 | 0.200 | Hitting_AVG | 0.263 | 0.667 | 0.237 | -0.167 |
| predicted_BB | 0.373 | 0.000 | 1.000 | Hitting_BB | 0.373 | 1.000 | -0.373 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_H | 0.940 | 2.000 | 1.000 | Hitting_H | 0.948 | 2.000 | 1.052 | 0.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.112 | 0.000 | -0.112 | 0.000 |
| predicted_OBP | 0.354 | 0.500 | 0.333 | Hitting_OBP | 0.332 | 0.750 | 0.168 | -0.250 |
| predicted_R | 0.552 | 0.000 | 1.000 | Hitting_R | 0.552 | 0.000 | -0.552 | 0.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.575 | 0.000 | -0.575 | 0.000 |
| predicted_SLG | 0.456 | 0.500 | 0.200 | Hitting_SLG | 0.419 | 0.667 | 0.081 | -0.167 |
| predicted_SO | 0.828 | 1.000 | 1.000 | Hitting_SO | 0.828 | 0.000 | 0.172 | 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_H: 0.9400 -> 2.0000 (boost 1.0600, better) |
| Biggest Deboost | predicted_R: 0.5520 -> 0.0000 (deboost -0.5520, 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.7300 -> 5.4883 (boost 1.7583, 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.3624 -> 0.3454 (deboost -0.0170, 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.7262 -> 1.0000 (boost 0.2738, better) | predicted_AB: 5.4883 -> 5.0000 (deboost -0.4883, worse) | AB rounded to 5 (raw=5.49), rates preserved: AVG=0.259 HR/AB=0.051 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8253 -> 1.0000 (boost 0.1747, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4629 -> 0.2000 (deboost -0.2629, 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_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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4629 (boost 0.2629, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672515",
"player_name": "Gabriel Moreno",
"position": "DH",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.224,
"predicted_3B": 0.0,
"predicted_AB": 3.73,
"predicted_AVG": 0.252,
"predicted_BB": 0.373,
"predicted_H": 0.94,
"predicted_HR": 0.17,
"predicted_OBP": 0.354,
"predicted_R": 0.552,
"predicted_RBI": 0.52,
"predicted_SLG": 0.456,
"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.2753,
"predicted_3B": 0.0009,
"predicted_AB": 5.4883,
"predicted_AVG": 0.2603,
"predicted_BB": 0.7288,
"predicted_H": 1.4475,
"predicted_HBP": 0.198,
"predicted_HR": 0.2835,
"predicted_OBP": 0.3624,
"predicted_R": 0.8534,
"predicted_RBI": 0.8062,
"predicted_SLG": 0.4672,
"predicted_SO": 1.0929
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.224,
"after": 0.2753,
"delta": 0.0513,
"percent_delta": 0.229,
"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.73,
"after": 5.4883,
"delta": 1.7583,
"percent_delta": 0.4714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2603,
"delta": 0.0083,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.373,
"after": 0.7288,
"delta": 0.3558,
"percent_delta": 0.9539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.4475,
"delta": 0.5075,
"percent_delta": 0.5399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.2835,
"delta": 0.1135,
"percent_delta": 0.6676,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.354,
"after": 0.3624,
"delta": 0.0084,
"percent_delta": 0.0237,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.552,
"after": 0.8534,
"delta": 0.3014,
"percent_delta": 0.546,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.8062,
"delta": 0.2862,
"percent_delta": 0.5504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.4672,
"delta": 0.0112,
"percent_delta": 0.0246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.828,
"after": 1.0929,
"delta": 0.2649,
"percent_delta": 0.3199,
"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.73,
"after": 5.4883,
"delta": 1.7583,
"percent_delta": 0.4714,
"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": 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.2753,
"predicted_3B": 0.0009,
"predicted_AB": 5.4883,
"predicted_AVG": 0.2588,
"predicted_BB": 0.7262,
"predicted_H": 1.4201,
"predicted_HBP": 0.198,
"predicted_HR": 0.2811,
"predicted_OBP": 0.3454,
"predicted_R": 0.8253,
"predicted_RBI": 0.7797,
"predicted_SLG": 0.4629,
"predicted_SO": 1.0968
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2753,
"after": 0.2753,
"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.4883,
"after": 5.4883,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2603,
"after": 0.2588,
"delta": -0.0015,
"percent_delta": -0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7288,
"after": 0.7262,
"delta": -0.0026,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4475,
"after": 1.4201,
"delta": -0.0274,
"percent_delta": -0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.198,
"after": 0.198,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2835,
"after": 0.2811,
"delta": -0.0024,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3624,
"after": 0.3454,
"delta": -0.017,
"percent_delta": -0.0469,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8534,
"after": 0.8253,
"delta": -0.0281,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8062,
"after": 0.7797,
"delta": -0.0265,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4672,
"after": 0.4629,
"delta": -0.0043,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0929,
"after": 1.0968,
"delta": 0.0039,
"percent_delta": 0.0036,
"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.3624,
"after": 0.3454,
"delta": -0.017,
"percent_delta": -0.0469,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.49), rates preserved: AVG=0.259 HR/AB=0.051",
"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.2753,
"after": 0.0,
"delta": -0.2753,
"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.4883,
"after": 5.0,
"delta": -0.4883,
"percent_delta": -0.089,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7262,
"after": 1.0,
"delta": 0.2738,
"percent_delta": 0.377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4201,
"after": 1.0,
"delta": -0.4201,
"percent_delta": -0.2958,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.198,
"after": 0.0,
"delta": -0.198,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2811,
"after": 0.0,
"delta": -0.2811,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7797,
"after": 1.0,
"delta": 0.2203,
"percent_delta": 0.2825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0968,
"after": 1.0,
"delta": -0.0968,
"percent_delta": -0.0883,
"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.7262,
"after": 1.0,
"delta": 0.2738,
"percent_delta": 0.377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.4883,
"after": 5.0,
"delta": -0.4883,
"percent_delta": -0.089,
"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.8253,
"after": 1.0,
"delta": 0.1747,
"percent_delta": 0.2117,
"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.8253,
"after": 1.0,
"delta": 0.1747,
"percent_delta": 0.2117,
"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.2588,
"after": 0.2,
"delta": -0.0588,
"percent_delta": -0.2272,
"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.3454,
"after": 0.333,
"delta": -0.0124,
"percent_delta": -0.0359,
"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.4629,
"after": 0.2,
"delta": -0.2629,
"percent_delta": -0.5679,
"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.4629,
"after": 0.2,
"delta": -0.2629,
"percent_delta": -0.5679,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 5,
"boosted_metrics": 1,
"deboosted_metrics": 4,
"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": 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.2588,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3454,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4629,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2588,
"delta": 0.0588,
"percent_delta": 0.2938,
"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.333,
"after": 0.3454,
"delta": 0.0124,
"percent_delta": 0.0372,
"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.4629,
"delta": 0.2629,
"percent_delta": 1.3144,
"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.4629,
"delta": 0.2629,
"percent_delta": 1.3144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.224,
"after": 0.0,
"delta": -0.224,
"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": 4.0,
"delta": 0.27,
"percent_delta": 0.0724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2588,
"delta": 0.0068,
"percent_delta": 0.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.373,
"after": 0.0,
"delta": -0.373,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 2.0,
"delta": 1.06,
"percent_delta": 1.1277,
"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.354,
"after": 0.3454,
"delta": -0.0086,
"percent_delta": -0.0243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.4629,
"delta": 0.0069,
"percent_delta": 0.0151,
"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": 5,
"deboosted_metrics": 6,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.94,
"after": 2.0,
"delta": 1.06,
"percent_delta": 1.1277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.552,
"after": 0.0,
"delta": -0.552,
"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.224 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.730 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.373 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.354 | - |
| predicted_R | 0.552 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.456 | - |
| 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.275 | 0.051 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.488 | 1.758 |
| predicted_AVG | 0.260 | 0.008 |
| predicted_BB | 0.729 | 0.356 |
| predicted_H | 1.448 | 0.508 |
| predicted_HBP | 0.198 | - |
| predicted_HR | 0.283 | 0.113 |
| predicted_OBP | 0.362 | 0.008 |
| predicted_R | 0.853 | 0.301 |
| predicted_RBI | 0.806 | 0.286 |
| predicted_SLG | 0.467 | 0.011 |
| predicted_SO | 1.093 | 0.265 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.275 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.488 | 0.000 |
| predicted_AVG | 0.259 | -0.002 |
| predicted_BB | 0.726 | -0.003 |
| predicted_H | 1.420 | -0.027 |
| predicted_HBP | 0.198 | 0.000 |
| predicted_HR | 0.281 | -0.002 |
| predicted_OBP | 0.345 | -0.017 |
| predicted_R | 0.825 | -0.028 |
| predicted_RBI | 0.780 | -0.027 |
| predicted_SLG | 0.463 | -0.004 |
| predicted_SO | 1.097 | 0.004 |
AB rounded to 5 (raw=5.49), rates preserved: AVG=0.259 HR/AB=0.051
| 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.275 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.488 |
| predicted_AVG | 0.200 | -0.059 |
| predicted_BB | 1.000 | 0.274 |
| predicted_H | 1.000 | -0.420 |
| predicted_HR | 0.000 | -0.281 |
| predicted_OBP | 0.333 | -0.012 |
| predicted_R | 1.000 | 0.175 |
| predicted_RBI | 1.000 | 0.220 |
| predicted_SLG | 0.200 | -0.263 |
| predicted_SO | 1.000 | -0.097 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | -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 | - | 16.000 | 5.000 | 0.000 | 0.000 | 2.000 | 3.000 | 3.000 | 4.000 | 1.000 | 0.3125 | 0.4762 | 0.6875 | 0.3125 | 0.1250 | 0.1875 | 0.2500 | 0.0625 |
| last_10 | 0.20 | 10 | - | 31.000 | 8.000 | 1.000 | 0.000 | 2.000 | 3.000 | 5.000 | 7.000 | 5.000 | 0.2581 | 0.4103 | 0.4839 | 0.2581 | 0.0645 | 0.0968 | 0.2258 | 0.1613 |
| season | 0.60 | 43 | - | 482.000 | 127.000 | 30.000 | 0.000 | 15.000 | 77.000 | 74.000 | 50.000 | 111.000 | 0.2635 | 0.3321 | 0.4191 | 0.2635 | 0.0311 | 0.1598 | 0.1037 | 0.2303 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3420 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.7730 |
| predicted_AVG | 0.2711 |
| predicted_BB | 1.1910 |
| predicted_H | 2.1070 |
| predicted_HBP | 0.1980 |
| predicted_HR | 0.4310 |
| predicted_OBP | 0.3733 |
| predicted_R | 1.2450 |
| predicted_RBI | 1.1780 |
| predicted_SLG | 0.4818 |
| predicted_SO | 1.4370 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2240 | 0.3420 | 0.2753 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.7300 | 7.7730 | 5.4883 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2711 | 0.2603 | model_form_blend |
| predicted_BB | 0.3730 | 1.1910 | 0.7288 | model_form_blend |
| predicted_H | 0.9400 | 2.1070 | 1.4475 | model_form_blend |
| predicted_HBP | - | 0.1980 | 0.1980 | form_only |
| predicted_HR | 0.1700 | 0.4310 | 0.2835 | model_form_blend |
| predicted_OBP | 0.3540 | 0.3733 | 0.3624 | model_form_blend |
| predicted_R | 0.5520 | 1.2450 | 0.8534 | model_form_blend |
| predicted_RBI | 0.5200 | 1.1780 | 0.8062 | model_form_blend |
| predicted_SLG | 0.4560 | 0.4818 | 0.4672 | model_form_blend |
| predicted_SO | 0.8280 | 1.4370 | 1.0929 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 134 |
| Season rows before report date | 134 |
| Report year | 2026 |
| Profile rows used | 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 | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| 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 | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 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 | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 672515 |
| playerID | 672515 |
| playerName | Gabriel Moreno |
| pos | C |
| started | True |
| startingPosition | C |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.2 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.344 |
| sl_xwoba | 0.378 |
| sl_xba | 0.283 |
| sl_xslg | 0.488 |
| sl_sweet_spot_percent | 38.8 |
| sl_barrel_batted_rate | 11.2 |
| sl_hard_hit_percent | 46.6 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 17.3 |
| 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.201 | 0.000 | 0.000 | Hitting_2B | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_3B | 0.038 | 0.000 | 0.000 | Hitting_3B | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_AB | 4.690 | 4.000 | 7.000 | Hitting_AB | 4.221 | 5.000 | -0.221 | -1.000 |
| predicted_AVG | 0.221 | 0.250 | 0.143 | Hitting_AVG | 0.272 | 0.000 | -0.022 | 0.250 |
| predicted_BB | 0.295 | 0.000 | 0.000 | Hitting_BB | 0.298 | 0.000 | -0.298 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.030 | 1.000 | 1.000 | Hitting_H | 1.149 | 0.000 | -0.149 | 1.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_OBP | 0.264 | 0.250 | 0.143 | Hitting_OBP | 0.318 | 0.000 | -0.068 | 0.250 |
| predicted_R | 0.654 | 0.000 | 1.000 | Hitting_R | 0.651 | 0.000 | -0.651 | 0.000 |
| predicted_RBI | 0.660 | 0.000 | 1.000 | Hitting_RBI | 0.655 | 0.000 | -0.655 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.397 | 0.250 | 0.143 | Hitting_SLG | 0.465 | 0.000 | -0.215 | 0.250 |
| predicted_SO | 0.705 | 0.000 | 1.000 | Hitting_SO | 0.702 | 1.000 | -0.702 | -1.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_SO: 0.7050 -> 0.0000 (deboost -0.7050, 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.6900 -> 7.4964 (boost 2.8064, better) | predicted_SLG: 0.3970 -> 0.3885 (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 | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3885 -> 0.3739 (deboost -0.0146, 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_H: 1.6064 -> 1.0000 (deboost -0.6064, worse) | AB rounded to 7 (raw=7.50), rates preserved: AVG=0.214 HR/AB=0.035 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8633 -> 1.0000 (boost 0.1367, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3739 -> 0.1430 (deboost -0.2309, 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 -> 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.1430 -> 0.3739 (boost 0.2309, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "606466",
"player_name": "Ketel Marte",
"position": "2B",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.038,
"predicted_AB": 4.69,
"predicted_AVG": 0.221,
"predicted_BB": 0.295,
"predicted_H": 1.03,
"predicted_HR": 0.16,
"predicted_OBP": 0.264,
"predicted_R": 0.654,
"predicted_RBI": 0.66,
"predicted_SLG": 0.397,
"predicted_SO": 0.705
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3226,
"predicted_3B": 0.0477,
"predicted_AB": 7.4964,
"predicted_AVG": 0.2196,
"predicted_BB": 0.4205,
"predicted_H": 1.6373,
"predicted_HBP": 0.003,
"predicted_HR": 0.2617,
"predicted_OBP": 0.259,
"predicted_R": 0.8927,
"predicted_RBI": 1.1533,
"predicted_SLG": 0.3885,
"predicted_SO": 1.2672
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.201,
"after": 0.3226,
"delta": 0.1216,
"percent_delta": 0.605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.038,
"after": 0.0477,
"delta": 0.0097,
"percent_delta": 0.2553,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.69,
"after": 7.4964,
"delta": 2.8064,
"percent_delta": 0.5984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.2196,
"delta": -0.0014,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.295,
"after": 0.4205,
"delta": 0.1255,
"percent_delta": 0.4254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.6373,
"delta": 0.6073,
"percent_delta": 0.5896,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2617,
"delta": 0.1017,
"percent_delta": 0.6356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.264,
"after": 0.259,
"delta": -0.005,
"percent_delta": -0.0189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.654,
"after": 0.8927,
"delta": 0.2387,
"percent_delta": 0.365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 1.1533,
"delta": 0.4933,
"percent_delta": 0.7474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.3885,
"delta": -0.0085,
"percent_delta": -0.0214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.705,
"after": 1.2672,
"delta": 0.5622,
"percent_delta": 0.7974,
"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.69,
"after": 7.4964,
"delta": 2.8064,
"percent_delta": 0.5984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.3885,
"delta": -0.0085,
"percent_delta": -0.0214,
"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.3226,
"predicted_3B": 0.0477,
"predicted_AB": 7.4964,
"predicted_AVG": 0.2143,
"predicted_BB": 0.419,
"predicted_H": 1.6064,
"predicted_HBP": 0.003,
"predicted_HR": 0.2594,
"predicted_OBP": 0.2559,
"predicted_R": 0.8633,
"predicted_RBI": 1.1154,
"predicted_SLG": 0.3739,
"predicted_SO": 1.2718
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3226,
"after": 0.3226,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0477,
"after": 0.0477,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.4964,
"after": 7.4964,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2196,
"after": 0.2143,
"delta": -0.0053,
"percent_delta": -0.0241,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4205,
"after": 0.419,
"delta": -0.0015,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6373,
"after": 1.6064,
"delta": -0.0309,
"percent_delta": -0.0189,
"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.2617,
"after": 0.2594,
"delta": -0.0023,
"percent_delta": -0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.259,
"after": 0.2559,
"delta": -0.0031,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8927,
"after": 0.8633,
"delta": -0.0294,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1533,
"after": 1.1154,
"delta": -0.0379,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3885,
"after": 0.3739,
"delta": -0.0146,
"percent_delta": -0.0376,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2672,
"after": 1.2718,
"delta": 0.0046,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3885,
"after": 0.3739,
"delta": -0.0146,
"percent_delta": -0.0376,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.50), rates preserved: AVG=0.214 HR/AB=0.035",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 7.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.3226,
"after": 0.0,
"delta": -0.3226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0477,
"after": 0.0,
"delta": -0.0477,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.4964,
"after": 7.0,
"delta": -0.4964,
"percent_delta": -0.0662,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.419,
"after": 0.0,
"delta": -0.419,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6064,
"after": 1.0,
"delta": -0.6064,
"percent_delta": -0.3775,
"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.2594,
"after": 0.0,
"delta": -0.2594,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1154,
"after": 1.0,
"delta": -0.1154,
"percent_delta": -0.1035,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2718,
"after": 1.0,
"delta": -0.2718,
"percent_delta": -0.2137,
"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_H",
"before": 1.6064,
"after": 1.0,
"delta": -0.6064,
"percent_delta": -0.3775,
"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": 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": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8633,
"after": 1.0,
"delta": 0.1367,
"percent_delta": 0.1583,
"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.8633,
"after": 1.0,
"delta": 0.1367,
"percent_delta": 0.1583,
"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.143,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.143,
"predicted_R": 1.0,
"predicted_RBI": 1.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.2143,
"after": 0.143,
"delta": -0.0713,
"percent_delta": -0.3327,
"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.2559,
"after": 0.143,
"delta": -0.1129,
"percent_delta": -0.4412,
"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.3739,
"after": 0.143,
"delta": -0.2309,
"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.3739,
"after": 0.143,
"delta": -0.2309,
"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": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 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.2143,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2559,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3739,
"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.143,
"after": 0.2143,
"delta": 0.0713,
"percent_delta": 0.4985,
"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.143,
"after": 0.2559,
"delta": 0.1129,
"percent_delta": 0.7893,
"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.3739,
"delta": 0.2309,
"percent_delta": 1.6145,
"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.3739,
"delta": 0.2309,
"percent_delta": 1.6145,
"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.038,
"after": 0.0,
"delta": -0.038,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.69,
"after": 4.0,
"delta": -0.69,
"percent_delta": -0.1471,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.2143,
"delta": -0.0067,
"percent_delta": -0.0303,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.295,
"after": 0.0,
"delta": -0.295,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.0,
"delta": -0.03,
"percent_delta": -0.0291,
"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.264,
"after": 0.2559,
"delta": -0.0081,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.654,
"after": 0.0,
"delta": -0.654,
"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.397,
"after": 0.3739,
"delta": -0.0231,
"percent_delta": -0.0582,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.705,
"after": 0.0,
"delta": -0.705,
"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_SO",
"before": 0.705,
"after": 0.0,
"delta": -0.705,
"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.201 | - |
| predicted_3B | 0.038 | - |
| predicted_AB | 4.690 | - |
| predicted_AVG | 0.221 | - |
| predicted_BB | 0.295 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.264 | - |
| predicted_R | 0.654 | - |
| predicted_RBI | 0.660 | - |
| predicted_SLG | 0.397 | - |
| predicted_SO | 0.705 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.122 |
| predicted_3B | 0.048 | 0.010 |
| predicted_AB | 7.496 | 2.806 |
| predicted_AVG | 0.220 | -0.001 |
| predicted_BB | 0.420 | 0.126 |
| predicted_H | 1.637 | 0.607 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.262 | 0.102 |
| predicted_OBP | 0.259 | -0.005 |
| predicted_R | 0.893 | 0.239 |
| predicted_RBI | 1.153 | 0.493 |
| predicted_SLG | 0.389 | -0.009 |
| predicted_SO | 1.267 | 0.562 |
Step 3: 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.048 | 0.000 |
| predicted_AB | 7.496 | 0.000 |
| predicted_AVG | 0.214 | -0.005 |
| predicted_BB | 0.419 | -0.002 |
| predicted_H | 1.606 | -0.031 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.259 | -0.002 |
| predicted_OBP | 0.256 | -0.003 |
| predicted_R | 0.863 | -0.029 |
| predicted_RBI | 1.115 | -0.038 |
| predicted_SLG | 0.374 | -0.015 |
| predicted_SO | 1.272 | 0.005 |
AB rounded to 7 (raw=7.50), rates preserved: AVG=0.214 HR/AB=0.035
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 7.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 | 7.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.323 |
| predicted_3B | 0.000 | -0.048 |
| predicted_AB | 7.000 | -0.496 |
| predicted_AVG | 0.143 | -0.071 |
| predicted_BB | 0.000 | -0.419 |
| predicted_H | 1.000 | -0.606 |
| predicted_HR | 0.000 | -0.259 |
| predicted_OBP | 0.143 | -0.113 |
| predicted_R | 1.000 | 0.137 |
| predicted_RBI | 1.000 | -0.115 |
| predicted_SLG | 0.143 | -0.231 |
| predicted_SO | 1.000 | -0.272 |
Attached 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 | 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 | 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 | 3.000 | 1.000 | 0.000 | 0.000 | 3.000 | 0.000 | 0.000 | 4.000 | 0.1429 | 0.1429 | 0.1905 | 0.1429 | 0.0000 | 0.1429 | 0.0000 | 0.1905 |
| last_10 | 0.20 | 10 | - | 40.000 | 5.000 | 1.000 | 0.000 | 2.000 | 8.000 | 3.000 | 2.000 | 8.000 | 0.1250 | 0.1591 | 0.3000 | 0.1250 | 0.0500 | 0.2000 | 0.0500 | 0.2000 |
| season | 0.60 | 62 | - | 992.000 | 270.000 | 47.000 | 9.000 | 42.000 | 154.000 | 153.000 | 69.000 | 165.000 | 0.2722 | 0.3174 | 0.4647 | 0.2722 | 0.0423 | 0.1552 | 0.0696 | 0.1663 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4760 |
| predicted_3B | 0.0600 |
| predicted_AB | 11.0390 |
| predicted_AVG | 0.2178 |
| predicted_BB | 0.5790 |
| predicted_H | 2.4040 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3900 |
| predicted_OBP | 0.2526 |
| predicted_R | 1.1940 |
| predicted_RBI | 1.7760 |
| predicted_SLG | 0.3778 |
| predicted_SO | 1.9770 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2010 | 0.4760 | 0.3226 | model_form_blend |
| predicted_3B | 0.0380 | 0.0600 | 0.0477 | model_form_blend |
| predicted_AB | 4.6900 | 11.0390 | 7.4964 | model_form_blend |
| predicted_AVG | 0.2210 | 0.2178 | 0.2196 | model_form_blend |
| predicted_BB | 0.2950 | 0.5790 | 0.4205 | model_form_blend |
| predicted_H | 1.0300 | 2.4040 | 1.6373 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1600 | 0.3900 | 0.2617 | model_form_blend |
| predicted_OBP | 0.2640 | 0.2526 | 0.2590 | model_form_blend |
| predicted_R | 0.6540 | 1.1940 | 0.8927 | model_form_blend |
| predicted_RBI | 0.6600 | 1.7760 | 1.1533 | model_form_blend |
| predicted_SLG | 0.3970 | 0.3778 | 0.3885 | model_form_blend |
| predicted_SO | 0.7050 | 1.9770 | 1.2672 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.272 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.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 | 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 | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 606466 |
| playerID | 606466 |
| playerName | Ketel Marte |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-10 |
| sl_k_percent | 15.5 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.323 |
| sl_xwoba | 0.368 |
| sl_xba | 0.299 |
| sl_xslg | 0.504 |
| sl_sweet_spot_percent | 33.6 |
| sl_barrel_batted_rate | 10.7 |
| sl_hard_hit_percent | 44.4 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 10.6 |
| sl_whiff_percent | 21.9 |
| 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.147 | 0.000 | 0.000 | Hitting_2B | - | - | - | - |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | - | - | - | - |
| predicted_AB | 3.474 | 3.000 | 4.000 | Hitting_AB | - | - | - | - |
| predicted_AVG | 0.234 | 0.333 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.337 | 0.000 | 0.000 | Hitting_BB | - | - | - | - |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | - | - | - | - |
| predicted_H | 0.811 | 1.000 | 1.000 | Hitting_H | - | - | - | - |
| predicted_HR | 0.121 | 1.000 | 0.000 | Hitting_HR | - | - | - | - |
| predicted_OBP | 0.301 | 0.333 | 0.250 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.439 | 1.000 | 0.000 | Hitting_R | - | - | - | - |
| predicted_RBI | 0.460 | 1.000 | 1.000 | Hitting_RBI | - | - | - | - |
| predicted_SLG | 0.383 | 1.333 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.848 | 1.000 | 1.000 | Hitting_SO | - | - | - | - |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 8 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 3 |
| Better Metrics | 4 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_HR: 0.1210 -> 1.0000 (boost 0.8790, better) |
| Biggest Deboost | predicted_AB: 3.4740 -> 3.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 | 1 | 1 | 0 | 1 | 0 | predicted_AB: 3.4740 -> 3.5359 (boost 0.0619, 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.3030 -> 0.2974 (deboost -0.0056, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_RBI: 0.4522 -> 1.0000 (boost 0.5478, better) | predicted_BB: 0.3297 -> 0.0000 (deboost -0.3297, worse) | AB rounded to 4 (raw=3.54), rates preserved: AVG=0.232 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4337 -> 0.0000 (deboost -0.4337, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2319 -> 0.2500 (boost 0.0181, better) | predicted_SLG: 0.3817 -> 0.2500 (deboost -0.1317, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 2 | 1 | predicted_HR: 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.3817 (boost 0.1317, better) | predicted_AVG: 0.2500 -> 0.2319 (deboost -0.0181, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "605244",
"player_name": "Aramis Garcia",
"position": "C",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.004,
"predicted_AB": 3.474,
"predicted_AVG": 0.234,
"predicted_BB": 0.337,
"predicted_H": 0.811,
"predicted_HR": 0.121,
"predicted_OBP": 0.301,
"predicted_R": 0.439,
"predicted_RBI": 0.46,
"predicted_SLG": 0.383,
"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.1536,
"predicted_3B": 0.0057,
"predicted_AB": 3.5359,
"predicted_AVG": 0.2366,
"predicted_BB": 0.3309,
"predicted_H": 0.8357,
"predicted_HBP": 0.035,
"predicted_HR": 0.1226,
"predicted_OBP": 0.303,
"predicted_R": 0.4485,
"predicted_RBI": 0.4676,
"predicted_SLG": 0.3871,
"predicted_SO": 0.8488
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.1536,
"delta": 0.0066,
"percent_delta": 0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0057,
"delta": 0.0017,
"percent_delta": 0.425,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.474,
"after": 3.5359,
"delta": 0.0619,
"percent_delta": 0.0178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2366,
"delta": 0.0026,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 0.3309,
"delta": -0.0061,
"percent_delta": -0.0181,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.811,
"after": 0.8357,
"delta": 0.0247,
"percent_delta": 0.0305,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.121,
"after": 0.1226,
"delta": 0.0016,
"percent_delta": 0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.303,
"delta": 0.002,
"percent_delta": 0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 0.4485,
"delta": 0.0095,
"percent_delta": 0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.4676,
"delta": 0.0076,
"percent_delta": 0.0165,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.383,
"after": 0.3871,
"delta": 0.0041,
"percent_delta": 0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.848,
"after": 0.8488,
"delta": 0.0008,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.474,
"after": 3.5359,
"delta": 0.0619,
"percent_delta": 0.0178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 0,
"last_10": 0,
"season": 0
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1536,
"predicted_3B": 0.0057,
"predicted_AB": 3.5359,
"predicted_AVG": 0.2319,
"predicted_BB": 0.3297,
"predicted_H": 0.8199,
"predicted_HBP": 0.035,
"predicted_HR": 0.1215,
"predicted_OBP": 0.2974,
"predicted_R": 0.4337,
"predicted_RBI": 0.4522,
"predicted_SLG": 0.3817,
"predicted_SO": 0.8519
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1536,
"after": 0.1536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0057,
"after": 0.0057,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5359,
"after": 3.5359,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2366,
"after": 0.2319,
"delta": -0.0047,
"percent_delta": -0.0199,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3309,
"after": 0.3297,
"delta": -0.0012,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8357,
"after": 0.8199,
"delta": -0.0158,
"percent_delta": -0.0189,
"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.1226,
"after": 0.1215,
"delta": -0.0011,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.2974,
"delta": -0.0056,
"percent_delta": -0.0185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4485,
"after": 0.4337,
"delta": -0.0148,
"percent_delta": -0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4676,
"after": 0.4522,
"delta": -0.0154,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3871,
"after": 0.3817,
"delta": -0.0054,
"percent_delta": -0.0139,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8488,
"after": 0.8519,
"delta": 0.0031,
"percent_delta": 0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.2974,
"delta": -0.0056,
"percent_delta": -0.0185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.54), rates preserved: AVG=0.232 HR/AB=0.034",
"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.1536,
"after": 0.0,
"delta": -0.1536,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0057,
"after": 0.0,
"delta": -0.0057,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5359,
"after": 4.0,
"delta": 0.4641,
"percent_delta": 0.1313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3297,
"after": 0.0,
"delta": -0.3297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8199,
"after": 1.0,
"delta": 0.1801,
"percent_delta": 0.2197,
"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.1215,
"after": 0.0,
"delta": -0.1215,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4522,
"after": 1.0,
"delta": 0.5478,
"percent_delta": 1.2114,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8519,
"after": 1.0,
"delta": 0.1481,
"percent_delta": 0.1738,
"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.4522,
"after": 1.0,
"delta": 0.5478,
"percent_delta": 1.2114,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3297,
"after": 0.0,
"delta": -0.3297,
"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.4337,
"after": 0.0,
"delta": -0.4337,
"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.4337,
"after": 0.0,
"delta": -0.4337,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 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.2319,
"after": 0.25,
"delta": 0.0181,
"percent_delta": 0.0781,
"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.2974,
"after": 0.25,
"delta": -0.0474,
"percent_delta": -0.1594,
"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.3817,
"after": 0.25,
"delta": -0.1317,
"percent_delta": -0.345,
"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.2319,
"after": 0.25,
"delta": 0.0181,
"percent_delta": 0.0781,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3817,
"after": 0.25,
"delta": -0.1317,
"percent_delta": -0.345,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 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_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 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.2319,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2974,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3817,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2319,
"delta": -0.0181,
"percent_delta": -0.0725,
"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.25,
"after": 0.2974,
"delta": 0.0474,
"percent_delta": 0.1896,
"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.3817,
"delta": 0.1317,
"percent_delta": 0.5267,
"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.3817,
"delta": 0.1317,
"percent_delta": 0.5267,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2319,
"delta": -0.0181,
"percent_delta": -0.0725,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"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.234,
"after": 0.2319,
"delta": -0.0021,
"percent_delta": -0.009,
"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.811,
"after": 1.0,
"delta": 0.189,
"percent_delta": 0.233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.121,
"after": 1.0,
"delta": 0.879,
"percent_delta": 7.2645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.2974,
"delta": -0.0036,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 1.0,
"delta": 0.561,
"percent_delta": 1.2779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 1.0,
"delta": 0.54,
"percent_delta": 1.1739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.383,
"after": 0.3817,
"delta": -0.0013,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 8,
"boosted_metrics": 5,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_HR",
"before": 0.121,
"after": 1.0,
"delta": 0.879,
"percent_delta": 7.2645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.474,
"after": 3.0,
"delta": -0.474,
"percent_delta": -0.1364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.147 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 3.474 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.337 | - |
| predicted_H | 0.811 | - |
| predicted_HR | 0.121 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.439 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.383 | - |
| 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.154 | 0.007 |
| predicted_3B | 0.006 | 0.002 |
| predicted_AB | 3.536 | 0.062 |
| predicted_AVG | 0.237 | 0.003 |
| predicted_BB | 0.331 | -0.006 |
| predicted_H | 0.836 | 0.025 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.123 | 0.002 |
| predicted_OBP | 0.303 | 0.002 |
| predicted_R | 0.449 | 0.010 |
| predicted_RBI | 0.468 | 0.008 |
| predicted_SLG | 0.387 | 0.004 |
| predicted_SO | 0.849 | 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.154 | 0.000 |
| predicted_3B | 0.006 | 0.000 |
| predicted_AB | 3.536 | 0.000 |
| predicted_AVG | 0.232 | -0.005 |
| predicted_BB | 0.330 | -0.001 |
| predicted_H | 0.820 | -0.016 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.121 | -0.001 |
| predicted_OBP | 0.297 | -0.006 |
| predicted_R | 0.434 | -0.015 |
| predicted_RBI | 0.452 | -0.015 |
| predicted_SLG | 0.382 | -0.005 |
| predicted_SO | 0.852 | 0.003 |
AB rounded to 4 (raw=3.54), rates preserved: AVG=0.232 HR/AB=0.034
| 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.154 |
| predicted_3B | 0.000 | -0.006 |
| predicted_AB | 4.000 | 0.464 |
| predicted_AVG | 0.250 | 0.018 |
| predicted_BB | 0.000 | -0.330 |
| predicted_H | 1.000 | 0.180 |
| predicted_HR | 0.000 | -0.121 |
| predicted_OBP | 0.250 | -0.047 |
| predicted_R | 0.000 | -0.434 |
| predicted_RBI | 1.000 | 0.548 |
| predicted_SLG | 0.250 | -0.132 |
| predicted_SO | 1.000 | 0.148 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 3.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 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.2504 |
| predicted_BB | 0.2980 |
| predicted_H | 0.9680 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3135 |
| predicted_R | 0.4990 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.4089 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.1890 | 0.1536 | model_form_blend |
| predicted_3B | 0.0040 | 0.0150 | 0.0057 | model_form_blend |
| predicted_AB | 3.4740 | 3.8670 | 3.5359 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2504 | 0.2366 | model_form_blend |
| predicted_BB | 0.3370 | 0.2980 | 0.3309 | model_form_blend |
| predicted_H | 0.8110 | 0.9680 | 0.8357 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.1210 | 0.1310 | 0.1226 | model_form_blend |
| predicted_OBP | 0.3010 | 0.3135 | 0.3030 | model_form_blend |
| predicted_R | 0.4390 | 0.4990 | 0.4485 | model_form_blend |
| predicted_RBI | 0.4600 | 0.5080 | 0.4676 | model_form_blend |
| predicted_SLG | 0.3830 | 0.4089 | 0.3871 | model_form_blend |
| predicted_SO | 0.8480 | 0.8530 | 0.8488 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 0 |
| Season rows before report date | 0 |
| Report year | 2026 |
| Profile rows used | 0 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.0 |
No historical data found for this player before report date.
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.131 | 0.000 | 0.000 | Hitting_2B | 0.131 | 0.000 | -0.131 | 0.000 |
| predicted_3B | 0.066 | 0.000 | 0.000 | Hitting_3B | 0.066 | 0.000 | -0.066 | 0.000 |
| predicted_AB | 3.700 | 4.000 | 6.000 | Hitting_AB | 3.515 | 4.000 | 0.485 | 0.000 |
| predicted_AVG | 0.258 | 0.000 | 0.333 | Hitting_AVG | 0.230 | 0.250 | -0.230 | -0.250 |
| predicted_BB | 0.638 | 0.000 | 1.000 | Hitting_BB | 0.638 | 0.000 | -0.638 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.057 | 0.000 | -0.057 | 0.000 |
| predicted_H | 0.960 | 0.000 | 2.000 | Hitting_H | 0.808 | 1.000 | -0.808 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_OBP | 0.358 | 0.000 | 0.429 | Hitting_OBP | 0.344 | 0.250 | -0.344 | -0.250 |
| predicted_R | 0.472 | 0.000 | 1.000 | Hitting_R | 0.472 | 0.000 | -0.472 | 0.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.354 | 0.000 | -0.354 | 0.000 |
| predicted_SLG | 0.372 | 0.000 | 0.333 | Hitting_SLG | 0.342 | 0.250 | -0.342 | -0.250 |
| predicted_SO | 0.550 | 0.000 | 1.000 | Hitting_SO | 0.550 | 1.000 | -0.550 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 12 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 9 |
| Better Metrics | 4 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.7000 -> 4.0000 (boost 0.3000, better) |
| 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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 3.7000 -> 5.9226 (boost 2.2226, better) | predicted_SLG: 0.3720 -> 0.3648 (deboost -0.0072, 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.3687 -> 0.3738 (boost 0.0051, 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_H: 1.6072 -> 2.0000 (boost 0.3928, better) | predicted_RBI: 0.4331 -> 0.0000 (deboost -0.4331, worse) | AB rounded to 6 (raw=5.92), rates preserved: AVG=0.271 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6250 -> 1.0000 (boost 0.3750, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2714 -> 0.3330 (boost 0.0616, better) | predicted_SLG: 0.3611 -> 0.3330 (deboost -0.0281, 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 -> 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.3611 (boost 0.0281, better) | predicted_AVG: 0.3330 -> 0.2714 (deboost -0.0616, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672695",
"player_name": "Geraldo Perdomo",
"position": "SS",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.066,
"predicted_AB": 3.7,
"predicted_AVG": 0.258,
"predicted_BB": 0.638,
"predicted_H": 0.96,
"predicted_HR": 0.07,
"predicted_OBP": 0.358,
"predicted_R": 0.472,
"predicted_RBI": 0.33,
"predicted_SLG": 0.372,
"predicted_SO": 0.55
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1623,
"predicted_3B": 0.0792,
"predicted_AB": 5.9226,
"predicted_AVG": 0.2703,
"predicted_BB": 0.9725,
"predicted_H": 1.6382,
"predicted_HBP": 0.028,
"predicted_HR": 0.0709,
"predicted_OBP": 0.3687,
"predicted_R": 0.6463,
"predicted_RBI": 0.4478,
"predicted_SLG": 0.3648,
"predicted_SO": 0.7733
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.131,
"after": 0.1623,
"delta": 0.0313,
"percent_delta": 0.2389,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.066,
"after": 0.0792,
"delta": 0.0132,
"percent_delta": 0.2,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7,
"after": 5.9226,
"delta": 2.2226,
"percent_delta": 0.6007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2703,
"delta": 0.0123,
"percent_delta": 0.0477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.638,
"after": 0.9725,
"delta": 0.3345,
"percent_delta": 0.5243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.6382,
"delta": 0.6782,
"percent_delta": 0.7065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0709,
"delta": 0.0009,
"percent_delta": 0.0129,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3687,
"delta": 0.0107,
"percent_delta": 0.0299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.6463,
"delta": 0.1743,
"percent_delta": 0.3693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.4478,
"delta": 0.1178,
"percent_delta": 0.357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3648,
"delta": -0.0072,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.55,
"after": 0.7733,
"delta": 0.2233,
"percent_delta": 0.406,
"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": 3.7,
"after": 5.9226,
"delta": 2.2226,
"percent_delta": 0.6007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3648,
"delta": -0.0072,
"percent_delta": -0.0194,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 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.1623,
"predicted_3B": 0.0792,
"predicted_AB": 5.9226,
"predicted_AVG": 0.2714,
"predicted_BB": 0.969,
"predicted_H": 1.6072,
"predicted_HBP": 0.028,
"predicted_HR": 0.0703,
"predicted_OBP": 0.3738,
"predicted_R": 0.625,
"predicted_RBI": 0.4331,
"predicted_SLG": 0.3611,
"predicted_SO": 0.7761
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1623,
"after": 0.1623,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0792,
"after": 0.0792,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.9226,
"after": 5.9226,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2703,
"after": 0.2714,
"delta": 0.0011,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.9725,
"after": 0.969,
"delta": -0.0035,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6382,
"after": 1.6072,
"delta": -0.031,
"percent_delta": -0.0189,
"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.0709,
"after": 0.0703,
"delta": -0.0006,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3687,
"after": 0.3738,
"delta": 0.0051,
"percent_delta": 0.0138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6463,
"after": 0.625,
"delta": -0.0213,
"percent_delta": -0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4478,
"after": 0.4331,
"delta": -0.0147,
"percent_delta": -0.0328,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3648,
"after": 0.3611,
"delta": -0.0037,
"percent_delta": -0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.7733,
"after": 0.7761,
"delta": 0.0028,
"percent_delta": 0.0036,
"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.3687,
"after": 0.3738,
"delta": 0.0051,
"percent_delta": 0.0138,
"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.92), rates preserved: AVG=0.271 HR/AB=0.012",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1623,
"after": 0.0,
"delta": -0.1623,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0792,
"after": 0.0,
"delta": -0.0792,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.9226,
"after": 6.0,
"delta": 0.0774,
"percent_delta": 0.0131,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.969,
"after": 1.0,
"delta": 0.031,
"percent_delta": 0.032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6072,
"after": 2.0,
"delta": 0.3928,
"percent_delta": 0.2444,
"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.0703,
"after": 0.0,
"delta": -0.0703,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4331,
"after": 0.0,
"delta": -0.4331,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7761,
"after": 1.0,
"delta": 0.2239,
"percent_delta": 0.2885,
"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.6072,
"after": 2.0,
"delta": 0.3928,
"percent_delta": 0.2444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4331,
"after": 0.0,
"delta": -0.4331,
"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": 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": 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.625,
"after": 1.0,
"delta": 0.375,
"percent_delta": 0.6,
"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.625,
"after": 1.0,
"delta": 0.375,
"percent_delta": 0.6,
"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": 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": 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.2714,
"after": 0.333,
"delta": 0.0616,
"percent_delta": 0.227,
"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.3738,
"after": 0.429,
"delta": 0.0552,
"percent_delta": 0.1477,
"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.3611,
"after": 0.333,
"delta": -0.0281,
"percent_delta": -0.0778,
"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.2714,
"after": 0.333,
"delta": 0.0616,
"percent_delta": 0.227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3611,
"after": 0.333,
"delta": -0.0281,
"percent_delta": -0.0778,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"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": 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.2714,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3738,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3611,
"predicted_SO": 0.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2714,
"delta": -0.0616,
"percent_delta": -0.1851,
"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.3738,
"delta": -0.0552,
"percent_delta": -0.1286,
"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.3611,
"delta": 0.0281,
"percent_delta": 0.0845,
"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.3611,
"delta": 0.0281,
"percent_delta": 0.0845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2714,
"delta": -0.0616,
"percent_delta": -0.1851,
"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.066,
"after": 0.0,
"delta": -0.066,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.7,
"after": 4.0,
"delta": 0.3,
"percent_delta": 0.0811,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2714,
"delta": 0.0134,
"percent_delta": 0.0519,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.638,
"after": 0.0,
"delta": -0.638,
"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.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3738,
"delta": 0.0158,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.0,
"delta": -0.472,
"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.372,
"after": 0.3611,
"delta": -0.0109,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 3,
"deboosted_metrics": 9,
"better_metrics": 4,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.7,
"after": 4.0,
"delta": 0.3,
"percent_delta": 0.0811,
"direction": "boost",
"projection_effect": "better",
"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.131 | - |
| predicted_3B | 0.066 | - |
| predicted_AB | 3.700 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.638 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.358 | - |
| predicted_R | 0.472 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.372 | - |
| predicted_SO | 0.550 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.031 |
| predicted_3B | 0.079 | 0.013 |
| predicted_AB | 5.923 | 2.223 |
| predicted_AVG | 0.270 | 0.012 |
| predicted_BB | 0.973 | 0.335 |
| predicted_H | 1.638 | 0.678 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.071 | 0.001 |
| predicted_OBP | 0.369 | 0.011 |
| predicted_R | 0.646 | 0.174 |
| predicted_RBI | 0.448 | 0.118 |
| predicted_SLG | 0.365 | -0.007 |
| predicted_SO | 0.773 | 0.223 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.000 |
| predicted_3B | 0.079 | 0.000 |
| predicted_AB | 5.923 | 0.000 |
| predicted_AVG | 0.271 | 0.001 |
| predicted_BB | 0.969 | -0.004 |
| predicted_H | 1.607 | -0.031 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.070 | -0.001 |
| predicted_OBP | 0.374 | 0.005 |
| predicted_R | 0.625 | -0.021 |
| predicted_RBI | 0.433 | -0.015 |
| predicted_SLG | 0.361 | -0.004 |
| predicted_SO | 0.776 | 0.003 |
AB rounded to 6 (raw=5.92), rates preserved: AVG=0.271 HR/AB=0.012
| 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 | 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 | 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.162 |
| predicted_3B | 0.000 | -0.079 |
| predicted_AB | 6.000 | 0.077 |
| predicted_AVG | 0.333 | 0.062 |
| predicted_BB | 1.000 | 0.031 |
| predicted_H | 2.000 | 0.393 |
| predicted_HR | 0.000 | -0.070 |
| predicted_OBP | 0.429 | 0.055 |
| predicted_R | 1.000 | 0.375 |
| predicted_RBI | 0.000 | -0.433 |
| predicted_SLG | 0.333 | -0.028 |
| predicted_SO | 1.000 | 0.224 |
Attached 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 | 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 | 7.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 0.4118 | 0.5000 | 0.4118 | 0.4118 | 0.0000 | 0.0000 | 0.1765 | 0.0588 |
| last_10 | 0.20 | 10 | - | 33.000 | 11.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 3.000 | 2.000 | 0.3333 | 0.3889 | 0.3333 | 0.3333 | 0.0000 | 0.0303 | 0.0909 | 0.0606 |
| season | 0.60 | 64 | - | 805.000 | 185.000 | 30.000 | 15.000 | 10.000 | 81.000 | 108.000 | 146.000 | 126.000 | 0.2298 | 0.3443 | 0.3416 | 0.2298 | 0.0124 | 0.1006 | 0.1814 | 0.1565 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2020 |
| predicted_3B | 0.0960 |
| predicted_AB | 8.7370 |
| predicted_AVG | 0.2858 |
| predicted_BB | 1.3960 |
| predicted_H | 2.4970 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.0720 |
| predicted_OBP | 0.3822 |
| predicted_R | 0.8670 |
| predicted_RBI | 0.5970 |
| predicted_SLG | 0.3556 |
| predicted_SO | 1.0560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1310 | 0.2020 | 0.1623 | model_form_blend |
| predicted_3B | 0.0660 | 0.0960 | 0.0792 | model_form_blend |
| predicted_AB | 3.7000 | 8.7370 | 5.9226 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2858 | 0.2703 | model_form_blend |
| predicted_BB | 0.6380 | 1.3960 | 0.9725 | model_form_blend |
| predicted_H | 0.9600 | 2.4970 | 1.6382 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.0700 | 0.0720 | 0.0709 | model_form_blend |
| predicted_OBP | 0.3580 | 0.3822 | 0.3687 | model_form_blend |
| predicted_R | 0.4720 | 0.8670 | 0.6463 | model_form_blend |
| predicted_RBI | 0.3300 | 0.5970 | 0.4478 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3556 | 0.3648 | model_form_blend |
| predicted_SO | 0.5500 | 1.0560 | 0.7733 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 229 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.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 | SS |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 672695 |
| playerID | 672695 |
| playerName | Geraldo Perdomo |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-10 |
| sl_k_percent | 12.0 |
| sl_bb_percent | 13.5 |
| sl_woba | 0.317 |
| sl_xwoba | 0.334 |
| sl_xba | 0.269 |
| sl_xslg | 0.349 |
| sl_sweet_spot_percent | 36.4 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 31.8 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 12.4 |
| sl_whiff_percent | 11.5 |
| sl_swing_percent | 39.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.870 | 3.000 | 4.000 | Hitting_AB | 3.750 | 5.000 | -0.750 | -2.000 |
| predicted_AVG | 0.232 | 0.000 | 0.250 | Hitting_AVG | 0.200 | 0.200 | -0.200 | -0.200 |
| predicted_BB | 0.000 | 1.000 | 0.000 | Hitting_BB | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.900 | 0.000 | 1.000 | Hitting_H | 0.750 | 1.000 | -0.750 | -1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.285 | 0.250 | 0.250 | Hitting_OBP | 0.200 | 0.200 | 0.050 | 0.050 |
| predicted_R | 0.000 | 0.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_RBI | 0.440 | 0.000 | 0.000 | Hitting_RBI | 0.250 | 0.000 | -0.250 | 0.000 |
| predicted_SLG | 0.354 | 0.000 | 0.250 | Hitting_SLG | 0.200 | 0.200 | -0.200 | -0.200 |
| predicted_SO | 0.750 | 1.000 | 1.000 | Hitting_SO | 0.750 | 3.000 | 0.250 | -2.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 | 1 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) |
| 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 | 2 | 2 | 0 | 2 | 0 | predicted_R: 0.0000 -> 0.0839 (boost 0.0839, 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.2826 -> 0.2383 (deboost -0.0443, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_SO: 0.7701 -> 1.0000 (boost 0.2299, worse) | predicted_RBI: 0.4206 -> 0.0000 (deboost -0.4206, worse) | AB rounded to 4 (raw=3.87), rates preserved: AVG=0.228 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0811 -> 0.0000 (deboost -0.0811, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2284 -> 0.2500 (boost 0.0216, better) | predicted_SLG: 0.3067 -> 0.2500 (deboost -0.0567, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3067 (boost 0.0567, better) | predicted_AVG: 0.2500 -> 0.2284 (deboost -0.0216, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694410",
"player_name": "LuJames Groover",
"position": "1B",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.87,
"predicted_AVG": 0.232,
"predicted_BB": 0.0,
"predicted_H": 0.9,
"predicted_HR": 0.09,
"predicted_OBP": 0.285,
"predicted_R": 0.0,
"predicted_RBI": 0.44,
"predicted_SLG": 0.354,
"predicted_SO": 0.75
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0319,
"predicted_3B": 0.0025,
"predicted_AB": 3.8593,
"predicted_AVG": 0.2324,
"predicted_BB": 0.0502,
"predicted_H": 0.8985,
"predicted_HBP": 0.023,
"predicted_HR": 0.0892,
"predicted_OBP": 0.2826,
"predicted_R": 0.0839,
"predicted_RBI": 0.4349,
"predicted_SLG": 0.3503,
"predicted_SO": 0.7673
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0319,
"delta": 0.0319,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0025,
"delta": 0.0025,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.87,
"after": 3.8593,
"delta": -0.0107,
"percent_delta": -0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2324,
"delta": 0.0004,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0502,
"delta": 0.0502,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.8985,
"delta": -0.0015,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0892,
"delta": -0.0008,
"percent_delta": -0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.285,
"after": 0.2826,
"delta": -0.0024,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0839,
"delta": 0.0839,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.4349,
"delta": -0.0051,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.3503,
"delta": -0.0037,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.75,
"after": 0.7673,
"delta": 0.0173,
"percent_delta": 0.0231,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 0.0839,
"delta": 0.0839,
"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": 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.0319,
"predicted_3B": 0.0025,
"predicted_AB": 3.8593,
"predicted_AVG": 0.2284,
"predicted_BB": 0.05,
"predicted_H": 0.8815,
"predicted_HBP": 0.023,
"predicted_HR": 0.0884,
"predicted_OBP": 0.2383,
"predicted_R": 0.0811,
"predicted_RBI": 0.4206,
"predicted_SLG": 0.3067,
"predicted_SO": 0.7701
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0319,
"after": 0.0319,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0025,
"after": 0.0025,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8593,
"after": 3.8593,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2324,
"after": 0.2284,
"delta": -0.004,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0502,
"after": 0.05,
"delta": -0.0002,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8985,
"after": 0.8815,
"delta": -0.017,
"percent_delta": -0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.023,
"after": 0.023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0892,
"after": 0.0884,
"delta": -0.0008,
"percent_delta": -0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2826,
"after": 0.2383,
"delta": -0.0443,
"percent_delta": -0.1568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0839,
"after": 0.0811,
"delta": -0.0028,
"percent_delta": -0.0334,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4349,
"after": 0.4206,
"delta": -0.0143,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3503,
"after": 0.3067,
"delta": -0.0436,
"percent_delta": -0.1245,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7673,
"after": 0.7701,
"delta": 0.0028,
"percent_delta": 0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2826,
"after": 0.2383,
"delta": -0.0443,
"percent_delta": -0.1568,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.87), rates preserved: AVG=0.228 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0319,
"after": 0.0,
"delta": -0.0319,
"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": 3.8593,
"after": 4.0,
"delta": 0.1407,
"percent_delta": 0.0365,
"direction": "boost",
"projection_effect": "better",
"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.8815,
"after": 1.0,
"delta": 0.1185,
"percent_delta": 0.1344,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.023,
"after": 0.0,
"delta": -0.023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0884,
"after": 0.0,
"delta": -0.0884,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4206,
"after": 0.0,
"delta": -0.4206,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7701,
"after": 1.0,
"delta": 0.2299,
"percent_delta": 0.2985,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7701,
"after": 1.0,
"delta": 0.2299,
"percent_delta": 0.2985,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4206,
"after": 0.0,
"delta": -0.4206,
"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.0811,
"after": 0.0,
"delta": -0.0811,
"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.0811,
"after": 0.0,
"delta": -0.0811,
"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.2284,
"after": 0.25,
"delta": 0.0216,
"percent_delta": 0.0946,
"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.2383,
"after": 0.25,
"delta": 0.0117,
"percent_delta": 0.0491,
"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.3067,
"after": 0.25,
"delta": -0.0567,
"percent_delta": -0.1849,
"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.2284,
"after": 0.25,
"delta": 0.0216,
"percent_delta": 0.0946,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3067,
"after": 0.25,
"delta": -0.0567,
"percent_delta": -0.1849,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"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_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2284,
"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.2383,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3067,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2284,
"delta": -0.0216,
"percent_delta": -0.0863,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.2383,
"delta": -0.0117,
"percent_delta": -0.0469,
"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.3067,
"delta": 0.0567,
"percent_delta": 0.2269,
"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.3067,
"delta": 0.0567,
"percent_delta": 0.2269,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2284,
"delta": -0.0216,
"percent_delta": -0.0863,
"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.87,
"after": 3.0,
"delta": -0.87,
"percent_delta": -0.2248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2284,
"delta": -0.0036,
"percent_delta": -0.0155,
"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": 0.9,
"after": 0.0,
"delta": -0.9,
"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.285,
"after": 0.2383,
"delta": -0.0467,
"percent_delta": -0.1639,
"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.44,
"after": 0.0,
"delta": -0.44,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.3067,
"delta": -0.0473,
"percent_delta": -0.1336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.75,
"after": 1.0,
"delta": 0.25,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"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": 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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.870 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.285 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.354 | - |
| predicted_SO | 0.750 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.032 | 0.032 |
| predicted_3B | 0.003 | 0.003 |
| predicted_AB | 3.859 | -0.011 |
| predicted_AVG | 0.232 | 0.000 |
| predicted_BB | 0.050 | 0.050 |
| predicted_H | 0.898 | -0.002 |
| predicted_HBP | 0.023 | - |
| predicted_HR | 0.089 | -0.001 |
| predicted_OBP | 0.283 | -0.002 |
| predicted_R | 0.084 | 0.084 |
| predicted_RBI | 0.435 | -0.005 |
| predicted_SLG | 0.350 | -0.004 |
| predicted_SO | 0.767 | 0.017 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.032 | 0.000 |
| predicted_3B | 0.003 | 0.000 |
| predicted_AB | 3.859 | 0.000 |
| predicted_AVG | 0.228 | -0.004 |
| predicted_BB | 0.050 | -0.000 |
| predicted_H | 0.881 | -0.017 |
| predicted_HBP | 0.023 | 0.000 |
| predicted_HR | 0.088 | -0.001 |
| predicted_OBP | 0.238 | -0.044 |
| predicted_R | 0.081 | -0.003 |
| predicted_RBI | 0.421 | -0.014 |
| predicted_SLG | 0.307 | -0.044 |
| predicted_SO | 0.770 | 0.003 |
AB rounded to 4 (raw=3.87), rates preserved: AVG=0.228 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 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.032 |
| predicted_3B | 0.000 | -0.003 |
| predicted_AB | 4.000 | 0.141 |
| predicted_AVG | 0.250 | 0.022 |
| predicted_BB | 0.000 | -0.050 |
| predicted_H | 1.000 | 0.119 |
| predicted_HR | 0.000 | -0.088 |
| predicted_OBP | 0.250 | 0.012 |
| predicted_R | 0.000 | -0.081 |
| predicted_RBI | 0.000 | -0.421 |
| predicted_SLG | 0.250 | -0.057 |
| 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 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 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 | 4 | - | 15.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 3.000 | 0.2000 | 0.2000 | 0.2000 | 0.2000 | 0.0000 | 0.0667 | 0.0000 | 0.2000 |
| last_10 | 0.20 | 4 | - | 15.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 3.000 | 0.2000 | 0.2000 | 0.2000 | 0.2000 | 0.0000 | 0.0667 | 0.0000 | 0.2000 |
| season | 0.60 | 4 | - | 15.000 | 3.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 3.000 | 0.2000 | 0.2000 | 0.2000 | 0.2000 | 0.0000 | 0.0667 | 0.0000 | 0.2000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1250 |
| predicted_3B | 0.0100 |
| predicted_AB | 3.8280 |
| predicted_AVG | 0.2336 |
| predicted_BB | 0.1970 |
| predicted_H | 0.8940 |
| predicted_HBP | 0.0230 |
| predicted_HR | 0.0870 |
| predicted_OBP | 0.2757 |
| predicted_R | 0.3290 |
| predicted_RBI | 0.4200 |
| predicted_SLG | 0.3393 |
| predicted_SO | 0.8180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1250 | 0.0319 | model_form_blend |
| predicted_3B | 0.0000 | 0.0100 | 0.0025 | model_form_blend |
| predicted_AB | 3.8700 | 3.8280 | 3.8593 | model_form_blend |
| predicted_AVG | 0.2320 | 0.2336 | 0.2324 | model_form_blend |
| predicted_BB | 0.0000 | 0.1970 | 0.0502 | model_form_blend |
| predicted_H | 0.9000 | 0.8940 | 0.8985 | model_form_blend |
| predicted_HBP | - | 0.0230 | 0.0230 | form_only |
| predicted_HR | 0.0900 | 0.0870 | 0.0892 | model_form_blend |
| predicted_OBP | 0.2850 | 0.2757 | 0.2826 | model_form_blend |
| predicted_R | 0.0000 | 0.3290 | 0.0839 | model_form_blend |
| predicted_RBI | 0.4400 | 0.4200 | 0.4349 | model_form_blend |
| predicted_SLG | 0.3540 | 0.3393 | 0.3503 | model_form_blend |
| predicted_SO | 0.7500 | 0.8180 | 0.7673 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 4 |
| Season rows before report date | 4 |
| 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.2 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 3 |
| 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 | 1B |
| gameID | 20260609_ARI@MIA |
| game_type | full |
| mlbID | 694410 |
| playerID | 694410 |
| playerName | LuJames Groover |
| pos | 3B |
| started | True |
| startingPosition | 1B |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-09 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.179 |
| sl_xwoba | 0.237 |
| sl_xba | 0.253 |
| sl_xslg | 0.29 |
| sl_sweet_spot_percent | 16.7 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 41.7 |
| sl_exit_velocity_avg | 87.4 |
| sl_launch_angle_avg | 10.9 |
| sl_whiff_percent | 16.7 |
| sl_swing_percent | 47.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.320 | 0.000 | 0.000 | Hitting_2B | 0.308 | 0.000 | -0.308 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.120 | 3.000 | 4.000 | Hitting_AB | 3.000 | 4.000 | 0.000 | -1.000 |
| predicted_AVG | 0.253 | 0.000 | 0.250 | Hitting_AVG | 0.321 | 0.000 | -0.321 | 0.000 |
| predicted_BB | 0.520 | 0.000 | 1.000 | Hitting_BB | 0.500 | 0.000 | -0.500 | 0.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.962 | 0.000 | -0.962 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_OBP | 0.332 | 0.000 | 0.400 | Hitting_OBP | 0.418 | 0.000 | -0.418 | 0.000 |
| predicted_R | 0.920 | 0.000 | 1.000 | Hitting_R | 0.885 | 0.000 | -0.885 | 0.000 |
| predicted_RBI | 0.270 | 0.000 | 0.000 | Hitting_RBI | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_SLG | 0.367 | 0.000 | 0.250 | Hitting_SLG | 0.462 | 0.000 | -0.462 | 0.000 |
| predicted_SO | 0.480 | 0.000 | 1.000 | Hitting_SO | 0.462 | 2.000 | -0.462 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SLG: 0.3670 -> 0.4035 (boost 0.0365, better) |
| Biggest Deboost | predicted_R: 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 | 7 | 7 | 0 | 6 | 1 | predicted_AB: 3.1200 -> 3.5364 (boost 0.4164, 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.3750 -> 0.4035 (boost 0.0285, better) | predicted_AVG: 0.2597 -> 0.2475 (deboost -0.0122, 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_AB: 3.5364 -> 4.0000 (boost 0.4636, better) | predicted_2B: 0.2924 -> 0.0000 (deboost -0.2924, worse) | AB rounded to 4 (raw=3.54), rates preserved: AVG=0.247 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8922 -> 1.0000 (boost 0.1078, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3527 -> 0.4000 (boost 0.0473, better) | predicted_SLG: 0.4035 -> 0.2500 (deboost -0.1535, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 1 | 4 | - | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.4035 (boost 0.1535, better) | predicted_OBP: 0.4000 -> 0.3527 (deboost -0.0473, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694371",
"player_name": "Tommy Troy",
"position": "LF",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.32,
"predicted_3B": 0.0,
"predicted_AB": 3.12,
"predicted_AVG": 0.253,
"predicted_BB": 0.52,
"predicted_H": 0.74,
"predicted_HR": 0.09,
"predicted_OBP": 0.332,
"predicted_R": 0.92,
"predicted_RBI": 0.27,
"predicted_SLG": 0.367,
"predicted_SO": 0.48
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2924,
"predicted_3B": 0.0015,
"predicted_AB": 3.5364,
"predicted_AVG": 0.2597,
"predicted_BB": 0.5766,
"predicted_H": 0.8921,
"predicted_HBP": 0.01,
"predicted_HR": 0.0862,
"predicted_OBP": 0.347,
"predicted_R": 0.9226,
"predicted_RBI": 0.2368,
"predicted_SLG": 0.375,
"predicted_SO": 0.5989
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.32,
"after": 0.2924,
"delta": -0.0276,
"percent_delta": -0.0863,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0015,
"delta": 0.0015,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.12,
"after": 3.5364,
"delta": 0.4164,
"percent_delta": 0.1335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2597,
"delta": 0.0067,
"percent_delta": 0.0265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.52,
"after": 0.5766,
"delta": 0.0566,
"percent_delta": 0.1088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 0.8921,
"delta": 0.1521,
"percent_delta": 0.2055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0862,
"delta": -0.0038,
"percent_delta": -0.0422,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.347,
"delta": 0.015,
"percent_delta": 0.0452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.92,
"after": 0.9226,
"delta": 0.0026,
"percent_delta": 0.0028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.2368,
"delta": -0.0332,
"percent_delta": -0.123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.367,
"after": 0.375,
"delta": 0.008,
"percent_delta": 0.0218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.48,
"after": 0.5989,
"delta": 0.1189,
"percent_delta": 0.2477,
"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.12,
"after": 3.5364,
"delta": 0.4164,
"percent_delta": 0.1335,
"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": 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.2924,
"predicted_3B": 0.0015,
"predicted_AB": 3.5364,
"predicted_AVG": 0.2475,
"predicted_BB": 0.5745,
"predicted_H": 0.8752,
"predicted_HBP": 0.01,
"predicted_HR": 0.0855,
"predicted_OBP": 0.3527,
"predicted_R": 0.8922,
"predicted_RBI": 0.229,
"predicted_SLG": 0.4035,
"predicted_SO": 0.6011
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2924,
"after": 0.2924,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0015,
"after": 0.0015,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5364,
"after": 3.5364,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2597,
"after": 0.2475,
"delta": -0.0122,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5766,
"after": 0.5745,
"delta": -0.0021,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8921,
"after": 0.8752,
"delta": -0.0169,
"percent_delta": -0.0189,
"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.0862,
"after": 0.0855,
"delta": -0.0007,
"percent_delta": -0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3527,
"delta": 0.0057,
"percent_delta": 0.0164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9226,
"after": 0.8922,
"delta": -0.0304,
"percent_delta": -0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2368,
"after": 0.229,
"delta": -0.0078,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.4035,
"delta": 0.0285,
"percent_delta": 0.076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5989,
"after": 0.6011,
"delta": 0.0022,
"percent_delta": 0.0037,
"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.375,
"after": 0.4035,
"delta": 0.0285,
"percent_delta": 0.076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2597,
"after": 0.2475,
"delta": -0.0122,
"percent_delta": -0.047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.54), rates preserved: AVG=0.247 HR/AB=0.024",
"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.2924,
"after": 0.0,
"delta": -0.2924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0015,
"after": 0.0,
"delta": -0.0015,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5364,
"after": 4.0,
"delta": 0.4636,
"percent_delta": 0.1311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5745,
"after": 1.0,
"delta": 0.4255,
"percent_delta": 0.7406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8752,
"after": 1.0,
"delta": 0.1248,
"percent_delta": 0.1426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.01,
"after": 0.0,
"delta": -0.01,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0855,
"after": 0.0,
"delta": -0.0855,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.229,
"after": 0.0,
"delta": -0.229,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6011,
"after": 1.0,
"delta": 0.3989,
"percent_delta": 0.6636,
"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": 3.5364,
"after": 4.0,
"delta": 0.4636,
"percent_delta": 0.1311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2924,
"after": 0.0,
"delta": -0.2924,
"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.8922,
"after": 1.0,
"delta": 0.1078,
"percent_delta": 0.1208,
"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.8922,
"after": 1.0,
"delta": 0.1078,
"percent_delta": 0.1208,
"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.2475,
"after": 0.25,
"delta": 0.0025,
"percent_delta": 0.0101,
"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.3527,
"after": 0.4,
"delta": 0.0473,
"percent_delta": 0.1341,
"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.4035,
"after": 0.25,
"delta": -0.1535,
"percent_delta": -0.3804,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3527,
"after": 0.4,
"delta": 0.0473,
"percent_delta": 0.1341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4035,
"after": 0.25,
"delta": -0.1535,
"percent_delta": -0.3804,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"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": 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.2475,
"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.3527,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4035,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2475,
"delta": -0.0025,
"percent_delta": -0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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.3527,
"delta": -0.0473,
"percent_delta": -0.1183,
"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.4035,
"delta": 0.1535,
"percent_delta": 0.6141,
"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.4035,
"delta": 0.1535,
"percent_delta": 0.6141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3527,
"delta": -0.0473,
"percent_delta": -0.1183,
"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.32,
"after": 0.0,
"delta": -0.32,
"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.12,
"after": 3.0,
"delta": -0.12,
"percent_delta": -0.0385,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2475,
"delta": -0.0055,
"percent_delta": -0.0217,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3527,
"delta": 0.0207,
"percent_delta": 0.0623,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.92,
"after": 0.0,
"delta": -0.92,
"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.367,
"after": 0.4035,
"delta": 0.0365,
"percent_delta": 0.0995,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.48,
"after": 0.0,
"delta": -0.48,
"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_SLG",
"before": 0.367,
"after": 0.4035,
"delta": 0.0365,
"percent_delta": 0.0995,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"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.320 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.120 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.520 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.920 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.367 | - |
| predicted_SO | 0.480 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.292 | -0.028 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.536 | 0.416 |
| predicted_AVG | 0.260 | 0.007 |
| predicted_BB | 0.577 | 0.057 |
| predicted_H | 0.892 | 0.152 |
| predicted_HBP | 0.010 | - |
| predicted_HR | 0.086 | -0.004 |
| predicted_OBP | 0.347 | 0.015 |
| predicted_R | 0.923 | 0.003 |
| predicted_RBI | 0.237 | -0.033 |
| predicted_SLG | 0.375 | 0.008 |
| predicted_SO | 0.599 | 0.119 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.292 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.536 | 0.000 |
| predicted_AVG | 0.247 | -0.012 |
| predicted_BB | 0.575 | -0.002 |
| predicted_H | 0.875 | -0.017 |
| predicted_HBP | 0.010 | 0.000 |
| predicted_HR | 0.086 | -0.001 |
| predicted_OBP | 0.353 | 0.006 |
| predicted_R | 0.892 | -0.030 |
| predicted_RBI | 0.229 | -0.008 |
| predicted_SLG | 0.404 | 0.029 |
| predicted_SO | 0.601 | 0.002 |
AB rounded to 4 (raw=3.54), rates preserved: AVG=0.247 HR/AB=0.024
| 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.292 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.464 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 1.000 | 0.425 |
| predicted_H | 1.000 | 0.125 |
| predicted_HR | 0.000 | -0.086 |
| predicted_OBP | 0.400 | 0.047 |
| predicted_R | 1.000 | 0.108 |
| predicted_RBI | 0.000 | -0.229 |
| predicted_SLG | 0.250 | -0.154 |
| predicted_SO | 1.000 | 0.399 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 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 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 3.000 | 4.000 | 3.000 | 0.2000 | 0.3684 | 0.2000 | 0.2000 | 0.0000 | 0.0000 | 0.2667 | 0.2000 |
| last_10 | 0.20 | 10 | - | 31.000 | 7.000 | 0.000 | 0.000 | 1.000 | 1.000 | 5.000 | 5.000 | 7.000 | 0.2258 | 0.3333 | 0.3226 | 0.2258 | 0.0323 | 0.0323 | 0.1613 | 0.2258 |
| season | 0.60 | 15 | - | 78.000 | 25.000 | 8.000 | 0.000 | 1.000 | 1.000 | 23.000 | 13.000 | 12.000 | 0.3205 | 0.4176 | 0.4615 | 0.3205 | 0.0128 | 0.0128 | 0.1667 | 0.1538 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2470 |
| predicted_3B | 0.0040 |
| predicted_AB | 4.2230 |
| predicted_AVG | 0.2707 |
| predicted_BB | 0.6700 |
| predicted_H | 1.1430 |
| predicted_HBP | 0.0100 |
| predicted_HR | 0.0800 |
| predicted_OBP | 0.3717 |
| predicted_R | 0.9270 |
| predicted_RBI | 0.1820 |
| predicted_SLG | 0.3882 |
| predicted_SO | 0.7950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3200 | 0.2470 | 0.2924 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0015 | model_form_blend |
| predicted_AB | 3.1200 | 4.2230 | 3.5364 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2707 | 0.2597 | model_form_blend |
| predicted_BB | 0.5200 | 0.6700 | 0.5766 | model_form_blend |
| predicted_H | 0.7400 | 1.1430 | 0.8921 | model_form_blend |
| predicted_HBP | - | 0.0100 | 0.0100 | form_only |
| predicted_HR | 0.0900 | 0.0800 | 0.0862 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3717 | 0.3470 | model_form_blend |
| predicted_R | 0.9200 | 0.9270 | 0.9226 | model_form_blend |
| predicted_RBI | 0.2700 | 0.1820 | 0.2368 | model_form_blend |
| predicted_SLG | 0.3670 | 0.3882 | 0.3750 | model_form_blend |
| predicted_SO | 0.4800 | 0.7950 | 0.5989 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 26 |
| Season rows before report date | 26 |
| Report year | 2026 |
| Profile rows used | 25 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 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.321 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 694371 |
| playerID | 694371 |
| playerName | Tommy Troy |
| pos | OF |
| started | True |
| startingPosition | LF |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.2 |
| sl_bb_percent | 14.5 |
| sl_woba | 0.333 |
| sl_xwoba | 0.338 |
| sl_xba | 0.245 |
| sl_xslg | 0.401 |
| sl_sweet_spot_percent | 21.6 |
| sl_barrel_batted_rate | 8.1 |
| sl_hard_hit_percent | 27.0 |
| sl_exit_velocity_avg | 85.0 |
| sl_launch_angle_avg | 12.5 |
| sl_whiff_percent | 25.0 |
| 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.374 | 0.000 | 0.000 | Hitting_2B | 0.343 | 0.000 | -0.343 | 0.000 |
| predicted_3B | 0.044 | 0.000 | 0.000 | Hitting_3B | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_AB | 3.187 | 3.000 | 5.000 | Hitting_AB | 2.929 | 1.000 | 0.071 | 2.000 |
| predicted_AVG | 0.241 | 0.000 | 0.200 | Hitting_AVG | 0.193 | 0.000 | -0.193 | 0.000 |
| predicted_BB | 0.297 | 0.000 | 1.000 | Hitting_BB | 0.273 | 0.000 | -0.273 | 0.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.566 | 0.000 | -0.566 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_OBP | 0.276 | 0.000 | 0.333 | Hitting_OBP | 0.271 | 0.000 | -0.271 | 0.000 |
| predicted_R | 0.407 | 0.000 | 1.000 | Hitting_R | 0.374 | 0.000 | -0.374 | 0.000 |
| predicted_RBI | 0.240 | 0.000 | 0.000 | Hitting_RBI | 0.242 | 0.000 | -0.242 | 0.000 |
| predicted_SLG | 0.324 | 0.000 | 0.200 | Hitting_SLG | 0.359 | 0.000 | -0.359 | 0.000 |
| predicted_SO | 1.110 | 0.000 | 2.000 | Hitting_SO | 1.020 | 1.000 | -1.020 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SLG: 0.3240 -> 0.3297 (boost 0.0057, better) |
| Biggest Deboost | predicted_SO: 1.1100 -> 0.0000 (deboost -1.1100, 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.1870 -> 5.2027 (boost 2.0157, better) | predicted_AVG: 0.2410 -> 0.2211 (deboost -0.0199, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3228 -> 0.3297 (boost 0.0069, better) | predicted_AVG: 0.2211 -> 0.1765 (deboost -0.0446, 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_BB: 0.5598 -> 1.0000 (boost 0.4402, better) | predicted_2B: 0.5002 -> 0.0000 (deboost -0.5002, worse) | AB rounded to 5 (raw=5.20), rates preserved: AVG=0.177 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6788 -> 1.0000 (boost 0.3212, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2565 -> 0.3330 (boost 0.0765, better) | predicted_SLG: 0.3297 -> 0.2000 (deboost -0.1297, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 1 | 4 | - | predicted_AB: 5.0000 -> 3.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.2000 -> 0.3297 (boost 0.1297, better) | predicted_OBP: 0.3330 -> 0.2565 (deboost -0.0765, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678489",
"player_name": "Jorge Barrosa",
"position": "CF",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.374,
"predicted_3B": 0.044,
"predicted_AB": 3.187,
"predicted_AVG": 0.241,
"predicted_BB": 0.297,
"predicted_H": 0.49,
"predicted_HR": 0.06,
"predicted_OBP": 0.276,
"predicted_R": 0.407,
"predicted_RBI": 0.24,
"predicted_SLG": 0.324,
"predicted_SO": 1.11
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.5002,
"predicted_3B": 0.0584,
"predicted_AB": 5.2027,
"predicted_AVG": 0.2211,
"predicted_BB": 0.5618,
"predicted_H": 0.9362,
"predicted_HBP": 0.081,
"predicted_HR": 0.0604,
"predicted_OBP": 0.2795,
"predicted_R": 0.7019,
"predicted_RBI": 0.3671,
"predicted_SLG": 0.3228,
"predicted_SO": 1.8639
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.374,
"after": 0.5002,
"delta": 0.1262,
"percent_delta": 0.3374,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.044,
"after": 0.0584,
"delta": 0.0144,
"percent_delta": 0.3273,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.187,
"after": 5.2027,
"delta": 2.0157,
"percent_delta": 0.6325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2211,
"delta": -0.0199,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.5618,
"delta": 0.2648,
"percent_delta": 0.8916,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.49,
"after": 0.9362,
"delta": 0.4462,
"percent_delta": 0.9106,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0604,
"delta": 0.0004,
"percent_delta": 0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.276,
"after": 0.2795,
"delta": 0.0035,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.407,
"after": 0.7019,
"delta": 0.2949,
"percent_delta": 0.7246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.3671,
"delta": 0.1271,
"percent_delta": 0.5296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.324,
"after": 0.3228,
"delta": -0.0012,
"percent_delta": -0.0037,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.11,
"after": 1.8639,
"delta": 0.7539,
"percent_delta": 0.6792,
"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.187,
"after": 5.2027,
"delta": 2.0157,
"percent_delta": 0.6325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2211,
"delta": -0.0199,
"percent_delta": -0.0826,
"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": 4,
"last_10": 5,
"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.5002,
"predicted_3B": 0.0584,
"predicted_AB": 5.2027,
"predicted_AVG": 0.1765,
"predicted_BB": 0.5598,
"predicted_H": 0.9185,
"predicted_HBP": 0.081,
"predicted_HR": 0.0599,
"predicted_OBP": 0.2565,
"predicted_R": 0.6788,
"predicted_RBI": 0.355,
"predicted_SLG": 0.3297,
"predicted_SO": 1.8706
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5002,
"after": 0.5002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0584,
"after": 0.0584,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2027,
"after": 5.2027,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2211,
"after": 0.1765,
"delta": -0.0446,
"percent_delta": -0.2017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5618,
"after": 0.5598,
"delta": -0.002,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9362,
"after": 0.9185,
"delta": -0.0177,
"percent_delta": -0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.081,
"after": 0.081,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0604,
"after": 0.0599,
"delta": -0.0005,
"percent_delta": -0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2795,
"after": 0.2565,
"delta": -0.023,
"percent_delta": -0.0823,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7019,
"after": 0.6788,
"delta": -0.0231,
"percent_delta": -0.0329,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3671,
"after": 0.355,
"delta": -0.0121,
"percent_delta": -0.033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3228,
"after": 0.3297,
"delta": 0.0069,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8639,
"after": 1.8706,
"delta": 0.0067,
"percent_delta": 0.0036,
"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.3228,
"after": 0.3297,
"delta": 0.0069,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2211,
"after": 0.1765,
"delta": -0.0446,
"percent_delta": -0.2017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.20), rates preserved: AVG=0.177 HR/AB=0.012",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5002,
"after": 0.0,
"delta": -0.5002,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0584,
"after": 0.0,
"delta": -0.0584,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.2027,
"after": 5.0,
"delta": -0.2027,
"percent_delta": -0.039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5598,
"after": 1.0,
"delta": 0.4402,
"percent_delta": 0.7864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9185,
"after": 1.0,
"delta": 0.0815,
"percent_delta": 0.0887,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.081,
"after": 0.0,
"delta": -0.081,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0599,
"after": 0.0,
"delta": -0.0599,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.355,
"after": 0.0,
"delta": -0.355,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8706,
"after": 2.0,
"delta": 0.1294,
"percent_delta": 0.0692,
"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.5598,
"after": 1.0,
"delta": 0.4402,
"percent_delta": 0.7864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.5002,
"after": 0.0,
"delta": -0.5002,
"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": 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": 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.6788,
"after": 1.0,
"delta": 0.3212,
"percent_delta": 0.4732,
"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.6788,
"after": 1.0,
"delta": 0.3212,
"percent_delta": 0.4732,
"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": 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.1765,
"after": 0.2,
"delta": 0.0235,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2565,
"after": 0.333,
"delta": 0.0765,
"percent_delta": 0.2982,
"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.3297,
"after": 0.2,
"delta": -0.1297,
"percent_delta": -0.3934,
"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.2565,
"after": 0.333,
"delta": 0.0765,
"percent_delta": 0.2982,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3297,
"after": 0.2,
"delta": -0.1297,
"percent_delta": -0.3934,
"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": 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": 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": 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.1765,
"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.2565,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3297,
"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.2,
"after": 0.1765,
"delta": -0.0235,
"percent_delta": -0.1173,
"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.2565,
"delta": -0.0765,
"percent_delta": -0.2296,
"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.3297,
"delta": 0.1297,
"percent_delta": 0.6483,
"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.3297,
"delta": 0.1297,
"percent_delta": 0.6483,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2565,
"delta": -0.0765,
"percent_delta": -0.2296,
"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.374,
"after": 0.0,
"delta": -0.374,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.044,
"after": 0.0,
"delta": -0.044,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.187,
"after": 3.0,
"delta": -0.187,
"percent_delta": -0.0587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.1765,
"delta": -0.0645,
"percent_delta": -0.2676,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.49,
"after": 0.0,
"delta": -0.49,
"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.276,
"after": 0.2565,
"delta": -0.0195,
"percent_delta": -0.0707,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.407,
"after": 0.0,
"delta": -0.407,
"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.324,
"after": 0.3297,
"delta": 0.0057,
"percent_delta": 0.0176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.11,
"after": 0.0,
"delta": -1.11,
"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_SLG",
"before": 0.324,
"after": 0.3297,
"delta": 0.0057,
"percent_delta": 0.0176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.11,
"after": 0.0,
"delta": -1.11,
"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.374 | - |
| predicted_3B | 0.044 | - |
| predicted_AB | 3.187 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.297 | - |
| predicted_H | 0.490 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.276 | - |
| predicted_R | 0.407 | - |
| predicted_RBI | 0.240 | - |
| predicted_SLG | 0.324 | - |
| predicted_SO | 1.110 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.500 | 0.126 |
| predicted_3B | 0.058 | 0.014 |
| predicted_AB | 5.203 | 2.016 |
| predicted_AVG | 0.221 | -0.020 |
| predicted_BB | 0.562 | 0.265 |
| predicted_H | 0.936 | 0.446 |
| predicted_HBP | 0.081 | - |
| predicted_HR | 0.060 | 0.000 |
| predicted_OBP | 0.280 | 0.004 |
| predicted_R | 0.702 | 0.295 |
| predicted_RBI | 0.367 | 0.127 |
| predicted_SLG | 0.323 | -0.001 |
| predicted_SO | 1.864 | 0.754 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.500 | 0.000 |
| predicted_3B | 0.058 | 0.000 |
| predicted_AB | 5.203 | 0.000 |
| predicted_AVG | 0.176 | -0.045 |
| predicted_BB | 0.560 | -0.002 |
| predicted_H | 0.918 | -0.018 |
| predicted_HBP | 0.081 | 0.000 |
| predicted_HR | 0.060 | -0.001 |
| predicted_OBP | 0.257 | -0.023 |
| predicted_R | 0.679 | -0.023 |
| predicted_RBI | 0.355 | -0.012 |
| predicted_SLG | 0.330 | 0.007 |
| predicted_SO | 1.871 | 0.007 |
AB rounded to 5 (raw=5.20), rates preserved: AVG=0.177 HR/AB=0.012
| 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 | 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 | 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.500 |
| predicted_3B | 0.000 | -0.058 |
| predicted_AB | 5.000 | -0.203 |
| predicted_AVG | 0.200 | 0.024 |
| predicted_BB | 1.000 | 0.440 |
| predicted_H | 1.000 | 0.082 |
| predicted_HR | 0.000 | -0.060 |
| predicted_OBP | 0.333 | 0.077 |
| predicted_R | 1.000 | 0.321 |
| predicted_RBI | 0.000 | -0.355 |
| predicted_SLG | 0.200 | -0.130 |
| predicted_SO | 2.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 | 3.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 | 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 | 4 | - | 11.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 5.000 | 0.1818 | 0.3077 | 0.1818 | 0.1818 | 0.0000 | 0.0000 | 0.1818 | 0.4546 |
| last_10 | 0.20 | 5 | - | 26.000 | 4.000 | 0.000 | 0.000 | 0.000 | 0.000 | 4.000 | 7.000 | 13.000 | 0.1538 | 0.3333 | 0.1538 | 0.1538 | 0.0000 | 0.0000 | 0.2692 | 0.5000 |
| season | 0.60 | 29 | - | 290.000 | 56.000 | 34.000 | 4.000 | 2.000 | 24.000 | 37.000 | 27.000 | 101.000 | 0.1931 | 0.2710 | 0.3586 | 0.1931 | 0.0069 | 0.0828 | 0.0931 | 0.3483 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6710 |
| predicted_3B | 0.0780 |
| predicted_AB | 7.9300 |
| predicted_AVG | 0.1941 |
| predicted_BB | 0.9200 |
| predicted_H | 1.5400 |
| predicted_HBP | 0.0810 |
| predicted_HR | 0.0610 |
| predicted_OBP | 0.2842 |
| predicted_R | 1.1010 |
| predicted_RBI | 0.5390 |
| predicted_SLG | 0.3212 |
| predicted_SO | 2.8840 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3740 | 0.6710 | 0.5002 | model_form_blend |
| predicted_3B | 0.0440 | 0.0780 | 0.0584 | model_form_blend |
| predicted_AB | 3.1870 | 7.9300 | 5.2027 | model_form_blend |
| predicted_AVG | 0.2410 | 0.1941 | 0.2211 | model_form_blend |
| predicted_BB | 0.2970 | 0.9200 | 0.5618 | model_form_blend |
| predicted_H | 0.4900 | 1.5400 | 0.9362 | model_form_blend |
| predicted_HBP | - | 0.0810 | 0.0810 | form_only |
| predicted_HR | 0.0600 | 0.0610 | 0.0604 | model_form_blend |
| predicted_OBP | 0.2760 | 0.2842 | 0.2795 | model_form_blend |
| predicted_R | 0.4070 | 1.1010 | 0.7019 | model_form_blend |
| predicted_RBI | 0.2400 | 0.5390 | 0.3671 | model_form_blend |
| predicted_SLG | 0.3240 | 0.3212 | 0.3228 | model_form_blend |
| predicted_SO | 1.1100 | 2.8840 | 1.8639 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 99 |
| Season rows before report date | 99 |
| Report year | 2026 |
| Profile rows used | 91 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.193 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 6 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260522_COL@ARI |
| game_type | short |
| mlbID | 678489 |
| playerID | 678489 |
| playerName | Jorge Barrosa |
| pos | CF |
| started | False |
| startingPosition | CF |
| team | ARI |
| teamID | 1 |
| game_date | 2026-05-22 |
| game_pk | 825082.0 |
| sl_k_percent | 29.9 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.247 |
| sl_xwoba | 0.204 |
| sl_xba | 0.144 |
| sl_xslg | 0.223 |
| sl_sweet_spot_percent | 34.8 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 19.7 |
| sl_exit_velocity_avg | 85.4 |
| sl_launch_angle_avg | 17.9 |
| sl_whiff_percent | 27.5 |
| sl_swing_percent | 43.7 |
| at_bat_number | 47.0 |
| ab_pitcher | 608372.0 |
| ab_pitcher_name | Sugano, Tomoyuki |
| ab_home_team | AZ |
| ab_away_team | COL |
| ab_game_type | R |
| ab_stand | L |
| ab_p_throws | R |
| ab_inning | 6.0 |
| ab_inning_topbot | Bot |
| ab_outs_when_up | 2.0 |
| ab_balls_start | 0.0 |
| ab_strikes_start | 0.0 |
| ab_home_score_start | 2.0 |
| ab_away_score_start | 1.0 |
| ab_bat_score_start | 2.0 |
| ab_fld_score_start | 1.0 |
| ab_event | strikeout |
| ab_event_description | Jorge Barrosa 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 | 5.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 | 2.0 |
| ab_strikes_end | 2.0 |
| ab_home_score_end | 2.0 |
| ab_away_score_end | 1.0 |
| ab_bat_score_end | 2.0 |
| ab_fld_score_end | 1.0 |
| ab_pitch_count | 5.0 |
| ab_delta_run_exp_avg | -0.052 |
| ab_delta_home_win_exp_avg | -0.0021999999999999 |
| ab_delta_pitcher_run_exp_avg | 0.052 |
| ab_delta_run_exp_sum | -0.26 |
| ab_delta_home_win_exp_sum | -0.011 |
| ab_delta_pitcher_run_exp_sum | 0.26 |
| 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 | 2.500 | 3.000 | -1.500 | -2.000 |
| predicted_ER | 4.000 | 4.000 | 4.000 | Pitching_ER | 3.700 | 7.000 | 0.300 | -3.000 |
| predicted_H | 7.000 | 7.000 | 7.000 | Pitching_H | 6.200 | 6.000 | 0.800 | 1.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 5.740 | 5.000 | -0.740 | 0.000 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 3.700 | 4.000 | 1.300 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 3 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_ER: 2.0000 -> 4.0000 (boost 2.0000, worse) |
| Biggest Deboost | predicted_IP: 8.0000 -> 5.0000 (deboost -3.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: 8.0000 -> 5.0000 (deboost -3.0000, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | starter_quality_floor | 2 | 2 | 0 | 0 | 2 | predicted_ER: 2.0000 -> 4.0000 (boost 2.0000, worse) | - | Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows. |
| 4 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "518876",
"player_name": "Merrill Kelly",
"position": "Starter",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement 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": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 8.0,
"predicted_SO": 5.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "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": 6.0,
"predicted_HR": 0.0,
"predicted_IP": 5.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": 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": 8.0,
"after": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"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": 8.0,
"after": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 3,
"step": "starter_quality_floor",
"description": "Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 4.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 5.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": 4.0,
"delta": 2.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 7.0,
"delta": 1.0,
"percent_delta": 0.1667,
"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": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 4.0,
"delta": 2.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 4.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_R": 4.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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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": 4.0,
"delta": 2.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 7.0,
"delta": 1.0,
"percent_delta": 0.1667,
"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": 8.0,
"after": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"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": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 4.0,
"delta": 2.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 8.0,
"after": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"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 | 6.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 8.000 | - |
| predicted_SO | 5.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 | 6.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.000 | -3.000 |
| predicted_SO | 5.000 | 0.000 |
Weak starter floor restored expected damage from recent form instead of assigning it to zero-inning bullpen rows.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | 0.000 |
| predicted_ER | 4.000 | 2.000 |
| predicted_H | 7.000 | 1.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.000 | 0.000 |
| 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 | 32.100 | 15.000 | 30.000 | 7.000 | 17.000 | 7.000 | 4.1753 | 1.1443 | 0.4639 | 0.9278 | 0.2165 | 0.5258 | 0.2165 |
| last_10 | 0.35 | 10 | 58.100 | 37.000 | 62.000 | 25.000 | 37.000 | 13.000 | 5.7086 | 1.4914 | 0.6343 | 1.0629 | 0.4286 | 0.6343 | 0.2229 |
| season | 0.20 | 10 | 58.100 | 37.000 | 62.000 | 25.000 | 37.000 | 13.000 | 5.7086 | 1.4914 | 0.6343 | 1.0629 | 0.4286 | 0.6343 | 0.2229 |
| Metric | Value |
|---|---|
| predicted_BB | 2.2270 |
| predicted_ER | 3.5380 |
| predicted_ERA | 4.6889 |
| predicted_H | 6.6410 |
| predicted_HR | 1.3120 |
| predicted_IP | 6.2000 |
| predicted_SO | 4.7140 |
| predicted_WHIP | 1.3057 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.2270 | 1.6248 | model_form_blend |
| predicted_ER | 2.0000 | 3.5380 | 2.7831 | model_form_blend |
| predicted_ERA | - | 4.6889 | 4.6889 | form_only |
| predicted_H | 6.0000 | 6.6410 | 6.3264 | model_form_blend |
| predicted_HR | 0.0000 | 1.3120 | 0.6680 | model_form_blend |
| predicted_IP | 8.0000 | 6.2000 | 7.1000 | model_form_blend |
| predicted_SO | 5.0000 | 4.7140 | 4.8544 | model_form_blend |
| predicted_WHIP | - | 1.3057 | 1.3057 | 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 | 5.0 |
| H | 7 |
| R | 4 |
| ER | 4 |
| BB | 1 |
| SO | 5 |
| HR | 0 |
| BF | 23 |
| 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 | 25 |
| Pitching_ER | 7 |
| Pitching_ERA | 5.71 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 5 |
| Pitching_H | 6 |
| Pitching_HBP | 1 |
| Pitching_HR | 3 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 85 |
| Pitching_R | 7 |
| Pitching_SO | 4 |
| Pitching_Strikes | 51 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_WAS@ARI |
| game_type | full |
| mlbID | 518876 |
| playerID | 518876 |
| playerName | Merrill Kelly |
| pos | P |
| started | True |
| startingPosition | P |
| team | ARI |
| teamID | 1 |
| game_date | 2026-06-05 |
| sl_k_percent | 14.3 |
| sl_bb_percent | 9.7 |
| sl_woba | 0.374 |
| sl_xwoba | 0.414 |
| sl_sweet_spot_percent | 43.8 |
| sl_barrel_batted_rate | 16.5 |
| sl_hard_hit_percent | 44.8 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 48.0 |
| sl_avg_best_speed | 79.209101458 |
| sl_avg_hyper_speed | 95.29204526 |
| 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.000 | 0.000 | 0.000 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.000 | 1.000 | -1.000 | -1.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 2.000 | 2.000 | 1.000 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.000 | 0.000 | 1.000 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 3 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 2 |
| Better Metrics | 3 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) |
| Biggest Deboost | predicted_ER: 2.0000 -> 0.0000 (deboost -2.0000, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 3 | 1 | 2 | 3 | 0 | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) | predicted_ER: 2.0000 -> 0.0000 (deboost -2.0000, better) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656464",
"player_name": "Kevin Ginkel",
"position": "Middle Reliever",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement 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": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 3.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": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"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": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"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": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_ER",
"before": 2.0,
"after": 0.0,
"delta": -2.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 1 | 1.000 | 1.000 | 2.000 | 0.000 | 0.000 | 0.000 | 9.0000 | 2.0000 | 1.0000 | 2.0000 | 0.0000 | 0.0000 | 0.0000 |
| last_10 | 0.35 | 1 | 1.000 | 1.000 | 2.000 | 0.000 | 0.000 | 0.000 | 9.0000 | 2.0000 | 1.0000 | 2.0000 | 0.0000 | 0.0000 | 0.0000 |
| season | 0.20 | 1 | 1.000 | 1.000 | 2.000 | 0.000 | 0.000 | 0.000 | 9.0000 | 2.0000 | 1.0000 | 2.0000 | 0.0000 | 0.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1260 |
| predicted_ER | 0.1810 |
| predicted_ERA | 4.5502 |
| predicted_H | 0.3580 |
| predicted_HR | 0.0490 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.3230 |
| predicted_WHIP | 1.3505 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1260 | 0.0307 | model_form_blend |
| predicted_ER | 2.0000 | 0.1810 | 1.5570 | model_form_blend |
| predicted_ERA | - | 4.5502 | 4.5502 | form_only |
| predicted_H | 4.0000 | 0.3580 | 3.1130 | model_form_blend |
| predicted_HR | 0.0000 | 0.0490 | 0.0119 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.3230 | 0.8351 | model_form_blend |
| predicted_WHIP | - | 1.3505 | 1.3505 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| Report year | 2026 |
| Profile rows used | 1 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 3 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 6 |
| 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 | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 9.00 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 21 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260327_ARI@LAD |
| game_type | full |
| mlbID | 656464 |
| playerID | 656464 |
| playerName | Kevin Ginkel |
| pos | P |
| started | False |
| startingPosition | P |
| team | ARI |
| teamID | 1 |
| game_date | 2026-03-27 |
| game_pk | 823971.0 |
| sl_k_percent | 29.4 |
| sl_bb_percent | 5.9 |
| sl_woba | 0.275 |
| sl_xwoba | 0.261 |
| sl_sweet_spot_percent | 27.3 |
| sl_barrel_batted_rate | 9.1 |
| sl_hard_hit_percent | 40.9 |
| sl_whiff_percent | 30.0 |
| sl_swing_percent | 48.5 |
| sv_pitch_count | 21.0 |
| sv_outs_recorded_est | 3.0 |
| sv_release_speed | 88.71428571428571 |
| sv_release_spin_rate | 2369.5238095238096 |
| sv_effective_speed | 89.54285714285714 |
| sv_launch_speed | 84.74444444444445 |
| sv_launch_angle | 17.555555555555557 |
| sv_woba_value | 2.15 |
| sv_woba_denom | 5.0 |
| sv_delta_run_exp | 0.421 |
| sv_delta_home_win_exp | 0.227 |
| sl_avg_best_speed | 79.637055313 |
| sl_avg_hyper_speed | 94.038638125 |
| 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.000 | 0.000 | 1.000 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_IP | 2.000 | 2.000 | 2.000 | Pitching_InningsPitched | 0.100 | 0.100 | 1.900 | 1.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.000 | 0.000 | 0.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 2.0000 (boost 1.9000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 2.0000 (boost 1.9000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "623149",
"player_name": "Paul Sewald",
"position": "Middle Reliever",
"team": "ARI",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 2.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 2.0,
"delta": 1.9,
"percent_delta": 19.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 2.0,
"delta": 1.9,
"percent_delta": 19.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 2.0,
"delta": 1.9,
"percent_delta": 19.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 2.0,
"delta": 1.9,
"percent_delta": 19.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 1 | 0.100 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| last_10 | 0.35 | 1 | 0.100 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| season | 0.20 | 1 | 0.100 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1200 |
| predicted_ER | 0.1600 |
| predicted_ERA | 4.3175 |
| predicted_H | 0.3160 |
| predicted_HR | 0.0460 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.3080 |
| predicted_WHIP | 1.3076 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.1200 | 0.7950 | model_form_blend |
| predicted_ER | 0.0000 | 0.1600 | 0.0373 | model_form_blend |
| predicted_ERA | - | 4.3175 | 4.3175 | form_only |
| predicted_H | 1.0000 | 0.3160 | 0.8406 | model_form_blend |
| predicted_HR | 0.0000 | 0.0460 | 0.0107 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.3080 | 0.0718 | model_form_blend |
| predicted_WHIP | - | 1.3076 | 1.3076 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| Report year | 2026 |
| Profile rows used | 1 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 2.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 8 |
| Pitches | 25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 1 |
| Pitching_ER | 0 |
| Pitching_ERA | 0.00 |
| 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 | 0.1 |
| Pitching_Pitches | 5 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260328_ARI@LAD |
| game_type | full |
| mlbID | 623149 |
| playerID | 623149 |
| playerName | Paul Sewald |
| pos | P |
| started | False |
| startingPosition | P |
| team | ARI |
| teamID | 1 |
| game_date | 2026-03-28 |
| game_pk | 823973.0 |
| sl_k_percent | 29.5 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.241 |
| sl_xwoba | 0.264 |
| sl_sweet_spot_percent | 40.0 |
| sl_barrel_batted_rate | 9.1 |
| sl_hard_hit_percent | 41.8 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 52.3 |
| sv_pitch_count | 5.0 |
| sv_outs_recorded_est | 1.0 |
| sv_release_speed | 88.6 |
| sv_release_spin_rate | 2524.2 |
| sv_effective_speed | 88.5 |
| sv_launch_speed | 79.85 |
| sv_launch_angle | 22.5 |
| sv_woba_value | 0.0 |
| sv_woba_denom | 1.0 |
| sv_delta_run_exp | -0.26 |
| sv_delta_home_win_exp | -0.008 |
| sl_avg_best_speed | 80.309307778 |
| sl_avg_hyper_speed | 94.125727963 |
| Field | Value |
|---|---|
| Pitcher | Tyler Phillips |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.0227 |
| ESPN Rank | 55 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0291 |
| Avg Velo | 89.1948 |
| Avg Spin | 2048.6484 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 3 |
| Season ERA | 2.0769 |
| Season WHIP | 1.3615 |
| Role Avg IP | 4.3330 |
| Recent Avg IP | 4.3330 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"opponent": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"edges": {
"quality_edge": 0.1359,
"offense_edge": -0.0486,
"opponent_offense_edge": 0.0107,
"defense_strength": 0.0313,
"opponent_defense_weakness": 0.0502,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0059,
"run_prevention": 0.9918,
"strikeout": 1.0032
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663969",
"profile": {
"available": true,
"pitcher_id": "663969",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 132.0,
"k_percent": 19.0,
"bb_percent": 11.6,
"woba": 0.296,
"xwoba": 0.31,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 34.9,
"avg_best_speed": 76.853,
"avg_hyper_speed": 93.3945,
"whiff_percent": 28.2,
"swing_percent": 44.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.2629,
"command_and_miss": -0.2379,
"regression_edge": -0.4,
"xwoba_edge": 0.1429,
"barrel_edge": 0.2444,
"hard_hit_edge": 0.5,
"whiff_edge": 0.3714,
"bb_edge": -0.65,
"pitch_design_score": -0.0291
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663969",
"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": 89.19478705671403,
"release_spin_rate": 2048.648353212873,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.19478705671403,
"release_spin_rate": 2048.648353212873,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1948,
"release_spin_rate": 2048.6484,
"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.0291,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2076,
"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.0227,
"sample_weight": 0.528,
"run_prevention_factor": 0.9981,
"strikeout_factor": 0.9967,
"walk_factor": 1.0275,
"homer_factor": 0.9769,
"woba_minus_xwoba": -0.014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663969",
"espn_id": 41247,
"player_name": "Tyler Phillips",
"team": "MIA",
"role": "pitcher",
"espn_rank": 55,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 55,
"gp_value": 18.0,
"gp_rank": 186,
"gs_value": 2.0,
"gs_rank": 203,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.0769,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 43.1,
"ip_rank": 135,
"h_value": 37.0,
"h_rank": 138,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 22.0,
"bb_rank": 74,
"k_value": 36.0,
"k_rank": 168,
"k_per_9_value": 7.4769225,
"k_per_9_rank": 33,
"whip_value": 1.3615,
"whip_rank": null,
"war_value": 1.35,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 0.999,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 0.999,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0145,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9878,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9983,
"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": 26.1,
"ER": 7,
"H": 26,
"BB": 10,
"SO": 18,
"HR": 1,
"ERA": 2.392405063291139,
"WHIP": 1.3670886075949367,
"K9": 6.151898734177214,
"HR9": 0.34177215189873417,
"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": "663969",
"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": 89.19478705671403,
"release_spin_rate": 2048.648353212873,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.19478705671403,
"release_spin_rate": 2048.648353212873,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1948,
"release_spin_rate": 2048.6484,
"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.0291,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2076,
"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": 8.56,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6313,
"prior_weight": 0.3687
},
"role": "pitcher",
"player_id": "663969",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 18,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 18.1,
"ER": 7.0,
"R": 8.0,
"H": 19.0,
"BB": 9.0,
"SO": 11.0,
"HR": 1.0,
"BF": 83.0,
"Pitches": 299.0
},
"per_game": {
"IP": 3.2,
"ER": 1.4,
"R": 1.6,
"H": 3.8,
"BB": 1.8,
"SO": 2.2,
"HR": 0.2,
"BF": 16.6,
"Pitches": 59.8
},
"rates": {
"ERA": 3.4364,
"WHIP": 1.5273,
"ER_per_IP": 0.38182,
"H_per_IP": 1.03636,
"BB_per_IP": 0.49091,
"SO_per_IP": 0.6,
"HR_per_IP": 0.05455
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 26.1,
"ER": 7.0,
"R": 8.0,
"H": 26.0,
"BB": 10.0,
"SO": 18.0,
"HR": 1.0,
"BF": 115.0,
"Pitches": 411.0
},
"per_game": {
"IP": 2.2,
"ER": 0.7,
"R": 0.8,
"H": 2.6,
"BB": 1.0,
"SO": 1.8,
"HR": 0.1,
"BF": 11.5,
"Pitches": 41.1
},
"rates": {
"ERA": 2.3924,
"WHIP": 1.3671,
"ER_per_IP": 0.26582,
"H_per_IP": 0.98734,
"BB_per_IP": 0.37975,
"SO_per_IP": 0.68354,
"HR_per_IP": 0.03797
}
},
"season": {
"games": 18,
"totals": {
"IP": 43.1,
"ER": 10.0,
"R": 12.0,
"H": 37.0,
"BB": 22.0,
"SO": 36.0,
"HR": 2.0,
"BF": 189.0,
"Pitches": 710.0
},
"per_game": {
"IP": 2.1,
"ER": 0.5556,
"R": 0.6667,
"H": 2.0556,
"BB": 1.2222,
"SO": 2.0,
"HR": 0.1111,
"BF": 10.5,
"Pitches": 39.4444
},
"rates": {
"ERA": 2.0769,
"WHIP": 1.3615,
"ER_per_IP": 0.23077,
"H_per_IP": 0.85385,
"BB_per_IP": 0.50769,
"SO_per_IP": 0.83077,
"HR_per_IP": 0.04615
}
}
},
"weighted_prediction": {
"predicted_IP": 4.0,
"predicted_ER": 1.508,
"predicted_H": 3.911,
"predicted_BB": 1.694,
"predicted_SO": 3.097,
"predicted_HR": 0.328,
"predicted_ERA": 3.3799,
"predicted_WHIP": 1.3963
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5058,
"form_weight": 0.4942,
"form_reliability": 0.6313,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.56,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6313,
"prior_weight": 0.3687
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 4.0,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 1.508,
"final": 0.7453,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 3.911,
"final": 2.4387,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 1.694,
"final": 0.8372,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 3.097,
"final": 3.0479,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.328,
"final": 0.1621,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.3799,
"final": 3.3799,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3963,
"final": 1.3963,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Ryan Gusto |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1339 |
| ESPN Rank | 464 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0627 |
| Avg Velo | 90.8333 |
| Avg Spin | 2461.5000 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 6 |
| Season WHIP | 1.4444 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"opponent": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"edges": {
"quality_edge": 0.1359,
"offense_edge": -0.0486,
"opponent_offense_edge": 0.0107,
"defense_strength": 0.0313,
"opponent_defense_weakness": 0.0502,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0059,
"run_prevention": 0.9918,
"strikeout": 1.0032
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "687473",
"profile": {
"available": true,
"pitcher_id": "687473",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 3.0,
"k_percent": 22.5,
"bb_percent": 5.0,
"woba": 0.309,
"xwoba": 0.323,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 48.3,
"avg_best_speed": 76.2371,
"avg_hyper_speed": 95.1562,
"whiff_percent": 16.4,
"swing_percent": 48.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.3421,
"command_and_miss": -0.2729,
"regression_edge": -0.4,
"xwoba_edge": -0.2286,
"barrel_edge": -0.6667,
"hard_hit_edge": -1.4143,
"whiff_edge": -1.3143,
"bb_edge": 1.0,
"pitch_design_score": 0.0627
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "687473",
"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": 90.83333333333331,
"release_spin_rate": 2461.5,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 90.83333333333331,
"release_spin_rate": 2461.5,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8333,
"release_spin_rate": 2461.5,
"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.0627,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4478,
"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.1339,
"sample_weight": 0.45,
"run_prevention_factor": 1.0114,
"strikeout_factor": 0.9758,
"walk_factor": 0.964,
"homer_factor": 1.0525,
"woba_minus_xwoba": -0.014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687473",
"espn_id": 5131986,
"player_name": "Ryan Gusto",
"team": "MIA",
"role": "pitcher",
"espn_rank": 464,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 464,
"gp_value": 4.0,
"gp_rank": 499,
"gs_value": 2.0,
"gs_rank": 203,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.0,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 1.0,
"hld_rank": 192,
"ip_value": 9.0,
"ip_rank": 488,
"h_value": 11.0,
"h_rank": 455,
"er_value": 6.0,
"er_rank": 444,
"hr_value": 0.0,
"hr_rank": 559,
"bb_value": 2.0,
"bb_rank": 557,
"k_value": 9.0,
"k_rank": 466,
"k_per_9_value": 9.0,
"k_per_9_rank": 25,
"whip_value": 1.4444,
"whip_rank": null,
"war_value": -0.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0051,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0051,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9838,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0236,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9891,
"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": 9.0,
"ER": 6,
"H": 11,
"BB": 2,
"SO": 9,
"HR": 0,
"ERA": 6.0,
"WHIP": 1.4444444444444444,
"K9": 9.0,
"HR9": 0.0,
"games_pitched": 4,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 4,
"error_prone": false
},
"games_count": 4,
"latest_game_date": "2026-06-10T00:00:00"
}{
"available": true,
"pitcher_id": "687473",
"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": 90.83333333333331,
"release_spin_rate": 2461.5,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 90.83333333333331,
"release_spin_rate": 2461.5,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8333,
"release_spin_rate": 2461.5,
"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.0627,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4478,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.778,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2623,
"prior_weight": 0.7377
},
"role": "pitcher",
"player_id": "687473",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 4,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 4,
"totals": {
"IP": 9.0,
"ER": 6.0,
"R": 6.0,
"H": 11.0,
"BB": 2.0,
"SO": 9.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 151.0
},
"per_game": {
"IP": 2.1,
"ER": 1.5,
"R": 1.5,
"H": 2.75,
"BB": 0.5,
"SO": 2.25,
"HR": 0.0,
"BF": 10.0,
"Pitches": 37.75
},
"rates": {
"ERA": 6.0,
"WHIP": 1.4444,
"ER_per_IP": 0.66667,
"H_per_IP": 1.22222,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 4,
"totals": {
"IP": 9.0,
"ER": 6.0,
"R": 6.0,
"H": 11.0,
"BB": 2.0,
"SO": 9.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 151.0
},
"per_game": {
"IP": 2.1,
"ER": 1.5,
"R": 1.5,
"H": 2.75,
"BB": 0.5,
"SO": 2.25,
"HR": 0.0,
"BF": 10.0,
"Pitches": 37.75
},
"rates": {
"ERA": 6.0,
"WHIP": 1.4444,
"ER_per_IP": 0.66667,
"H_per_IP": 1.22222,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 4,
"totals": {
"IP": 9.0,
"ER": 6.0,
"R": 6.0,
"H": 11.0,
"BB": 2.0,
"SO": 9.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 151.0
},
"per_game": {
"IP": 2.1,
"ER": 1.5,
"R": 1.5,
"H": 2.75,
"BB": 0.5,
"SO": 2.25,
"HR": 0.0,
"BF": 10.0,
"Pitches": 37.75
},
"rates": {
"ERA": 6.0,
"WHIP": 1.4444,
"ER_per_IP": 0.66667,
"H_per_IP": 1.22222,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.2,
"predicted_ER": 0.851,
"predicted_H": 1.641,
"predicted_BB": 0.523,
"predicted_SO": 1.52,
"predicted_HR": 0.166,
"predicted_ERA": 4.8008,
"predicted_WHIP": 1.3562
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6617,
"form_weight": 0.3383,
"form_reliability": 0.2623,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.778,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2623,
"prior_weight": 0.7377
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.2,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.851,
"final": 0.2879,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 1.641,
"final": 1.8785,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.523,
"final": 0.1769,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.52,
"final": 0.5142,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.166,
"final": 0.7178,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.8008,
"final": 4.8008,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3562,
"final": 1.3562,
"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 Bender |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2689 |
| ESPN Rank | 144 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 2.9634 |
| Season WHIP | 0.8415 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"opponent": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"edges": {
"quality_edge": 0.1359,
"offense_edge": -0.0486,
"opponent_offense_edge": 0.0107,
"defense_strength": 0.0313,
"opponent_defense_weakness": 0.0502,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0059,
"run_prevention": 0.9918,
"strikeout": 1.0032
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669622",
"profile": {
"available": true,
"pitcher_id": "669622",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 86.0,
"k_percent": 28.7,
"bb_percent": 8.3,
"woba": 0.205,
"xwoba": 0.254,
"sweet_spot_percent": 30.3,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 33.3,
"avg_best_speed": 78.8509,
"avg_hyper_speed": 93.258,
"whiff_percent": 21.0,
"swing_percent": 39.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.2284,
"command_and_miss": 0.1907,
"regression_edge": -1.4,
"xwoba_edge": 1.7429,
"barrel_edge": -0.0667,
"hard_hit_edge": 0.7286,
"whiff_edge": -0.6571,
"bb_edge": 0.175,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "669622",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2689,
"sample_weight": 0.45,
"run_prevention_factor": 0.9771,
"strikeout_factor": 1.0036,
"walk_factor": 0.9937,
"homer_factor": 0.9658,
"woba_minus_xwoba": -0.049,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "669622",
"espn_id": 42171,
"player_name": "Anthony Bender",
"team": "MIA",
"role": "pitcher",
"espn_rank": 144,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 144,
"gp_value": 28.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.9634,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 27.1,
"ip_rank": 261,
"h_value": 14.0,
"h_rank": 410,
"er_value": 9.0,
"er_rank": 329,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 9.0,
"bb_rank": 315,
"k_value": 31.0,
"k_rank": 206,
"k_per_9_value": 10.207316,
"k_per_9_rank": 21,
"whip_value": 0.8414,
"whip_rank": null,
"war_value": 0.65,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9897,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9897,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9972,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9846,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0016,
"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": 3,
"BB": 1,
"SO": 13,
"HR": 1,
"ERA": 1.6875,
"WHIP": 0.375,
"K9": 10.96875,
"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-09T00:00:00"
}{
"available": false,
"pitcher_id": "669622",
"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.4,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5192,
"prior_weight": 0.4808
},
"role": "pitcher",
"player_id": "669622",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 2.0,
"BB": 0.0,
"SO": 7.0,
"HR": 1.0,
"BF": 18.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.4,
"BB": 0.0,
"SO": 1.4,
"HR": 0.2,
"BF": 3.6,
"Pitches": 16.0
},
"rates": {
"ERA": 1.8,
"WHIP": 0.4,
"ER_per_IP": 0.2,
"H_per_IP": 0.4,
"BB_per_IP": 0.0,
"SO_per_IP": 1.4,
"HR_per_IP": 0.2
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 13.0,
"HR": 1.0,
"BF": 37.0,
"Pitches": 152.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.3,
"BB": 0.1,
"SO": 1.3,
"HR": 0.1,
"BF": 3.7,
"Pitches": 15.2
},
"rates": {
"ERA": 1.6875,
"WHIP": 0.375,
"ER_per_IP": 0.1875,
"H_per_IP": 0.28125,
"BB_per_IP": 0.09375,
"SO_per_IP": 1.21875,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 28,
"totals": {
"IP": 27.1,
"ER": 9.0,
"R": 9.0,
"H": 14.0,
"BB": 9.0,
"SO": 31.0,
"HR": 1.0,
"BF": 108.0,
"Pitches": 424.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3214,
"R": 0.3214,
"H": 0.5,
"BB": 0.3214,
"SO": 1.1071,
"HR": 0.0357,
"BF": 3.8571,
"Pitches": 15.1429
},
"rates": {
"ERA": 2.9634,
"WHIP": 0.8415,
"ER_per_IP": 0.32927,
"H_per_IP": 0.5122,
"BB_per_IP": 0.32927,
"SO_per_IP": 1.13415,
"HR_per_IP": 0.03659
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.349,
"predicted_H": 0.659,
"predicted_BB": 0.227,
"predicted_SO": 1.116,
"predicted_HR": 0.135,
"predicted_ERA": 3.1381,
"predicted_WHIP": 0.886
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5531,
"form_weight": 0.4469,
"form_reliability": 0.5192,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.4,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5192,
"prior_weight": 0.4808
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.349,
"final": 0.156,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.659,
"final": 0.2945,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.227,
"final": 0.1014,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.116,
"final": 0.4987,
"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.1381,
"final": 3.1381,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.886,
"final": 0.886,
"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 | Pete Fairbanks |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0990 |
| ESPN Rank | 669 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1313 |
| Avg Velo | 92.0580 |
| Avg Spin | 2472.8230 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 7 |
| Season WHIP | 1.5556 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIA",
"games": 73,
"wins": 36,
"losses": 37,
"win_pct": 0.4932,
"runs_scored": 312.0,
"runs_allowed": 318.0,
"run_differential": -6.0,
"run_differential_per_game": -0.0822,
"avg_runs_scored": 4.274,
"avg_runs_allowed": 4.3562,
"offense_index": 0.9514,
"defense_index": 1.0313,
"current_streak": "W4",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 3.9,
"run_differential": 7.0
},
"available": true,
"quality_score": 0.0542
},
"opponent": {
"team": "ARI",
"games": 74,
"wins": 38,
"losses": 36,
"win_pct": 0.5135,
"runs_scored": 336.0,
"runs_allowed": 350.0,
"run_differential": -14.0,
"run_differential_per_game": -0.1892,
"avg_runs_scored": 4.5405,
"avg_runs_allowed": 4.7297,
"offense_index": 1.0107,
"defense_index": 0.9498,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 2.7,
"avg_runs_allowed": 5.8,
"run_differential": -31.0
},
"available": true,
"quality_score": -0.0817
},
"edges": {
"quality_edge": 0.1359,
"offense_edge": -0.0486,
"opponent_offense_edge": 0.0107,
"defense_strength": 0.0313,
"opponent_defense_weakness": 0.0502,
"recent_win_pct_edge": 0.4
},
"player_factors": {
"ip": 1.0059,
"run_prevention": 0.9918,
"strikeout": 1.0032
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "664126",
"profile": {
"available": true,
"pitcher_id": "664126",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 59.0,
"k_percent": 30.1,
"bb_percent": 13.3,
"woba": 0.35,
"xwoba": 0.292,
"sweet_spot_percent": 31.1,
"barrel_batted_rate": 11.4,
"hard_hit_percent": 35.6,
"avg_best_speed": 81.382,
"avg_hyper_speed": 94.7203,
"whiff_percent": 28.5,
"swing_percent": 46.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1102,
"command_and_miss": 0.4057,
"regression_edge": 1.6571,
"xwoba_edge": 0.6571,
"barrel_edge": -0.9111,
"hard_hit_edge": 0.4,
"whiff_edge": 0.4143,
"bb_edge": -1.075,
"pitch_design_score": 0.1313
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "664126",
"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": 92.05802095120745,
"release_spin_rate": 2472.823008273191,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 92.05802095120745,
"release_spin_rate": 2472.823008273191,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.058,
"release_spin_rate": 2472.823,
"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.1313,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9377,
"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.099,
"sample_weight": 0.45,
"run_prevention_factor": 0.9916,
"strikeout_factor": 1.0265,
"walk_factor": 1.0387,
"homer_factor": 1.0167,
"woba_minus_xwoba": 0.058,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "664126",
"espn_id": 42180,
"player_name": "Pete Fairbanks",
"team": "MIA",
"role": "pitcher",
"espn_rank": 669,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 669,
"gp_value": 20.0,
"gp_rank": 163,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 7.0,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 7.0,
"sv_rank": 18,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 18.0,
"ip_rank": 388,
"h_value": 17.0,
"h_rank": 363,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 25.0,
"k_rank": 277,
"k_per_9_value": 12.5,
"k_per_9_rank": 19,
"whip_value": 1.5555,
"whip_rank": null,
"war_value": -0.72,
"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.0174,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0075,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0119,
"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": 4,
"H": 8,
"BB": 7,
"SO": 12,
"HR": 2,
"ERA": 4.0,
"WHIP": 1.6666666666666667,
"K9": 12.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-09T00:00:00"
}{
"available": true,
"pitcher_id": "664126",
"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": 92.05802095120745,
"release_spin_rate": 2472.823008273191,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 92.05802095120745,
"release_spin_rate": 2472.823008273191,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.058,
"release_spin_rate": 2472.823,
"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.1313,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9377,
"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.556,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4156,
"prior_weight": 0.5844
},
"role": "pitcher",
"player_id": "664126",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 20,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 3.0,
"R": 4.0,
"H": 5.0,
"BB": 4.0,
"SO": 4.0,
"HR": 1.0,
"BF": 22.0,
"Pitches": 100.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.8,
"H": 1.0,
"BB": 0.8,
"SO": 0.8,
"HR": 0.2,
"BF": 4.4,
"Pitches": 20.0
},
"rates": {
"ERA": 6.75,
"WHIP": 2.25,
"ER_per_IP": 0.75,
"H_per_IP": 1.25,
"BB_per_IP": 1.0,
"SO_per_IP": 1.0,
"HR_per_IP": 0.25
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 4.0,
"R": 6.0,
"H": 8.0,
"BB": 7.0,
"SO": 12.0,
"HR": 2.0,
"BF": 42.0,
"Pitches": 190.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 0.8,
"BB": 0.7,
"SO": 1.2,
"HR": 0.2,
"BF": 4.2,
"Pitches": 19.0
},
"rates": {
"ERA": 4.0,
"WHIP": 1.6667,
"ER_per_IP": 0.44444,
"H_per_IP": 0.88889,
"BB_per_IP": 0.77778,
"SO_per_IP": 1.33333,
"HR_per_IP": 0.22222
}
},
"season": {
"games": 20,
"totals": {
"IP": 18.0,
"ER": 14.0,
"R": 16.0,
"H": 17.0,
"BB": 11.0,
"SO": 25.0,
"HR": 3.0,
"BF": 83.0,
"Pitches": 358.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7,
"R": 0.8,
"H": 0.85,
"BB": 0.55,
"SO": 1.25,
"HR": 0.15,
"BF": 4.15,
"Pitches": 17.9
},
"rates": {
"ERA": 7.0,
"WHIP": 1.5556,
"ER_per_IP": 0.77778,
"H_per_IP": 0.94444,
"BB_per_IP": 0.61111,
"SO_per_IP": 1.38889,
"HR_per_IP": 0.16667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.519,
"predicted_H": 0.94,
"predicted_BB": 0.529,
"predicted_SO": 0.978,
"predicted_HR": 0.164,
"predicted_ERA": 4.9825,
"predicted_WHIP": 1.5668
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5969,
"form_weight": 0.4031,
"form_reliability": 0.4156,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.556,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4156,
"prior_weight": 0.5844
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.519,
"final": 0.8061,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.94,
"final": 0.9758,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.529,
"final": 1.4071,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.978,
"final": 0.3942,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.164,
"final": 0.0661,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.9825,
"final": 4.9825,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5668,
"final": 1.5668,
"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.093 | 0.000 | 0.000 | Hitting_2B | 0.093 | 0.000 | -0.093 | 0.000 |
| predicted_3B | 0.005 | 0.000 | 0.000 | Hitting_3B | 0.005 | 1.000 | -0.005 | -1.000 |
| predicted_AB | 3.860 | 5.000 | 6.000 | Hitting_AB | 3.565 | 4.000 | 1.435 | 1.000 |
| predicted_AVG | 0.244 | 0.200 | 0.333 | Hitting_AVG | 0.279 | 0.500 | -0.079 | -0.300 |
| predicted_BB | 0.388 | 0.000 | 1.000 | Hitting_BB | 0.388 | 0.000 | -0.388 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.940 | 1.000 | 2.000 | Hitting_H | 0.995 | 2.000 | 0.005 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.224 | 0.000 | -0.224 | 0.000 |
| predicted_OBP | 0.333 | 0.200 | 0.429 | Hitting_OBP | 0.356 | 0.600 | -0.156 | -0.400 |
| predicted_R | 0.579 | 0.000 | 1.000 | Hitting_R | 0.579 | 2.000 | -0.579 | -2.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.939 | 0.000 | -0.939 | 0.000 |
| predicted_SLG | 0.423 | 0.200 | 0.333 | Hitting_SLG | 0.497 | 1.000 | -0.297 | -0.800 |
| predicted_SO | 0.360 | 2.000 | 1.000 | Hitting_SO | 0.360 | 0.000 | 1.640 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_SO: 0.3600 -> 2.0000 (boost 1.6400, worse) |
| Biggest Deboost | predicted_RBI: 0.5900 -> 0.0000 (deboost -0.5900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 12 | 12 | 0 | 11 | 1 | predicted_AB: 3.8600 -> 5.7868 (boost 1.9268, 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.2548 -> 0.2635 (boost 0.0087, better) | predicted_SLG: 0.4433 -> 0.4376 (deboost -0.0057, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 4 | 5 | 3 | 6 | predicted_H: 1.5247 -> 2.0000 (boost 0.4753, better) | predicted_HBP: 0.2630 -> 0.0000 (deboost -0.2630, worse) | AB rounded to 6 (raw=5.79), rates preserved: AVG=0.263 HR/AB=0.040 |
| 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.3353 -> 0.4290 (boost 0.0937, better) | predicted_SLG: 0.4376 -> 0.3330 (deboost -0.1046, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 1 | 5 | 0 | 6 | 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4376 (boost 0.1046, better) | predicted_OBP: 0.4290 -> 0.3353 (deboost -0.0937, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "689414",
"player_name": "Liam Hicks",
"position": "DH",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.093,
"predicted_3B": 0.005,
"predicted_AB": 3.86,
"predicted_AVG": 0.244,
"predicted_BB": 0.388,
"predicted_H": 0.94,
"predicted_HR": 0.13,
"predicted_OBP": 0.333,
"predicted_R": 0.579,
"predicted_RBI": 0.59,
"predicted_SLG": 0.423,
"predicted_SO": 0.36
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1754,
"predicted_3B": 0.0684,
"predicted_AB": 5.7868,
"predicted_AVG": 0.2548,
"predicted_BB": 0.6241,
"predicted_H": 1.4998,
"predicted_HBP": 0.263,
"predicted_HR": 0.2304,
"predicted_OBP": 0.3408,
"predicted_R": 1.0168,
"predicted_RBI": 1.0678,
"predicted_SLG": 0.4433,
"predicted_SO": 0.6075
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.1754,
"delta": 0.0824,
"percent_delta": 0.886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0684,
"delta": 0.0634,
"percent_delta": 12.68,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.86,
"after": 5.7868,
"delta": 1.9268,
"percent_delta": 0.4992,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2548,
"delta": 0.0108,
"percent_delta": 0.0443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.388,
"after": 0.6241,
"delta": 0.2361,
"percent_delta": 0.6085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.4998,
"delta": 0.5598,
"percent_delta": 0.5955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2304,
"delta": 0.1004,
"percent_delta": 0.7723,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3408,
"delta": 0.0078,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.579,
"after": 1.0168,
"delta": 0.4378,
"percent_delta": 0.7561,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 1.0678,
"delta": 0.4778,
"percent_delta": 0.8098,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.423,
"after": 0.4433,
"delta": 0.0203,
"percent_delta": 0.048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.36,
"after": 0.6075,
"delta": 0.2475,
"percent_delta": 0.6875,
"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": 3.86,
"after": 5.7868,
"delta": 1.9268,
"percent_delta": 0.4992,
"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.1754,
"predicted_3B": 0.0684,
"predicted_AB": 5.7868,
"predicted_AVG": 0.2635,
"predicted_BB": 0.6254,
"predicted_H": 1.5247,
"predicted_HBP": 0.263,
"predicted_HR": 0.2318,
"predicted_OBP": 0.3353,
"predicted_R": 1.0464,
"predicted_RBI": 1.0989,
"predicted_SLG": 0.4376,
"predicted_SO": 0.6062
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1754,
"after": 0.1754,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0684,
"after": 0.0684,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.7868,
"after": 5.7868,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2548,
"after": 0.2635,
"delta": 0.0087,
"percent_delta": 0.0341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6241,
"after": 0.6254,
"delta": 0.0013,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4998,
"after": 1.5247,
"delta": 0.0249,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.263,
"after": 0.263,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2304,
"after": 0.2318,
"delta": 0.0014,
"percent_delta": 0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3408,
"after": 0.3353,
"delta": -0.0055,
"percent_delta": -0.0161,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0168,
"after": 1.0464,
"delta": 0.0296,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0678,
"after": 1.0989,
"delta": 0.0311,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4433,
"after": 0.4376,
"delta": -0.0057,
"percent_delta": -0.0129,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6075,
"after": 0.6062,
"delta": -0.0013,
"percent_delta": -0.0021,
"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.2548,
"after": 0.2635,
"delta": 0.0087,
"percent_delta": 0.0341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4433,
"after": 0.4376,
"delta": -0.0057,
"percent_delta": -0.0129,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.79), rates preserved: AVG=0.263 HR/AB=0.040",
"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.1754,
"after": 0.0,
"delta": -0.1754,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0684,
"after": 0.0,
"delta": -0.0684,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.7868,
"after": 6.0,
"delta": 0.2132,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6254,
"after": 1.0,
"delta": 0.3746,
"percent_delta": 0.599,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5247,
"after": 2.0,
"delta": 0.4753,
"percent_delta": 0.3117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.263,
"after": 0.0,
"delta": -0.263,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2318,
"after": 0.0,
"delta": -0.2318,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0989,
"after": 1.0,
"delta": -0.0989,
"percent_delta": -0.09,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6062,
"after": 1.0,
"delta": 0.3938,
"percent_delta": 0.6496,
"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.5247,
"after": 2.0,
"delta": 0.4753,
"percent_delta": 0.3117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.263,
"after": 0.0,
"delta": -0.263,
"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.0464,
"after": 1.0,
"delta": -0.0464,
"percent_delta": -0.0443,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.2635,
"after": 0.333,
"delta": 0.0695,
"percent_delta": 0.2638,
"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.3353,
"after": 0.429,
"delta": 0.0937,
"percent_delta": 0.2795,
"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.4376,
"after": 0.333,
"delta": -0.1046,
"percent_delta": -0.239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3353,
"after": 0.429,
"delta": 0.0937,
"percent_delta": 0.2795,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4376,
"after": 0.333,
"delta": -0.1046,
"percent_delta": -0.239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 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": 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": 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": 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.2635,
"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.3353,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4376,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2635,
"delta": -0.0695,
"percent_delta": -0.2088,
"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.3353,
"delta": -0.0937,
"percent_delta": -0.2184,
"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.4376,
"delta": 0.1046,
"percent_delta": 0.3141,
"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.4376,
"delta": 0.1046,
"percent_delta": 0.3141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3353,
"delta": -0.0937,
"percent_delta": -0.2184,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.093,
"after": 0.0,
"delta": -0.093,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.86,
"after": 5.0,
"delta": 1.14,
"percent_delta": 0.2953,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2635,
"delta": 0.0195,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.388,
"after": 0.0,
"delta": -0.388,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.0,
"delta": 0.06,
"percent_delta": 0.0638,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3353,
"delta": 0.0023,
"percent_delta": 0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.423,
"after": 0.4376,
"delta": 0.0146,
"percent_delta": 0.0345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.36,
"after": 2.0,
"delta": 1.64,
"percent_delta": 4.5556,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.36,
"after": 2.0,
"delta": 1.64,
"percent_delta": 4.5556,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.093 | - |
| predicted_3B | 0.005 | - |
| predicted_AB | 3.860 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.388 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.333 | - |
| predicted_R | 0.579 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.423 | - |
| predicted_SO | 0.360 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | 0.082 |
| predicted_3B | 0.068 | 0.063 |
| predicted_AB | 5.787 | 1.927 |
| predicted_AVG | 0.255 | 0.011 |
| predicted_BB | 0.624 | 0.236 |
| predicted_H | 1.500 | 0.560 |
| predicted_HBP | 0.263 | - |
| predicted_HR | 0.230 | 0.100 |
| predicted_OBP | 0.341 | 0.008 |
| predicted_R | 1.017 | 0.438 |
| predicted_RBI | 1.068 | 0.478 |
| predicted_SLG | 0.443 | 0.020 |
| predicted_SO | 0.608 | 0.248 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | 0.000 |
| predicted_3B | 0.068 | 0.000 |
| predicted_AB | 5.787 | 0.000 |
| predicted_AVG | 0.264 | 0.009 |
| predicted_BB | 0.625 | 0.001 |
| predicted_H | 1.525 | 0.025 |
| predicted_HBP | 0.263 | 0.000 |
| predicted_HR | 0.232 | 0.001 |
| predicted_OBP | 0.335 | -0.006 |
| predicted_R | 1.046 | 0.030 |
| predicted_RBI | 1.099 | 0.031 |
| predicted_SLG | 0.438 | -0.006 |
| predicted_SO | 0.606 | -0.001 |
AB rounded to 6 (raw=5.79), rates preserved: AVG=0.263 HR/AB=0.040
| 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.175 |
| predicted_3B | 0.000 | -0.068 |
| predicted_AB | 6.000 | 0.213 |
| predicted_AVG | 0.333 | 0.070 |
| predicted_BB | 1.000 | 0.375 |
| predicted_H | 2.000 | 0.475 |
| predicted_HR | 0.000 | -0.232 |
| predicted_OBP | 0.429 | 0.094 |
| predicted_R | 1.000 | -0.046 |
| predicted_RBI | 1.000 | -0.099 |
| predicted_SLG | 0.333 | -0.105 |
| 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 | 5.000 | -1.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 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 1.000 | 0.000 | 2.000 | 4.000 | 1.000 | 2.000 | 0.2353 | 0.3000 | 0.4118 | 0.2353 | 0.0000 | 0.1177 | 0.0588 | 0.1177 |
| last_10 | 0.20 | 10 | - | 33.000 | 9.000 | 1.000 | 1.000 | 1.000 | 4.000 | 8.000 | 6.000 | 4.000 | 0.2727 | 0.3902 | 0.4545 | 0.2727 | 0.0303 | 0.1212 | 0.1818 | 0.1212 |
| season | 0.60 | 65 | - | 763.000 | 213.000 | 20.000 | 1.000 | 48.000 | 201.000 | 124.000 | 83.000 | 77.000 | 0.2792 | 0.3563 | 0.4967 | 0.2792 | 0.0629 | 0.2634 | 0.1088 | 0.1009 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2800 |
| predicted_3B | 0.1490 |
| predicted_AB | 8.2350 |
| predicted_AVG | 0.2685 |
| predicted_BB | 0.9240 |
| predicted_H | 2.2110 |
| predicted_HBP | 0.2630 |
| predicted_HR | 0.3580 |
| predicted_OBP | 0.3506 |
| predicted_R | 1.5730 |
| predicted_RBI | 1.6750 |
| predicted_SLG | 0.4692 |
| predicted_SO | 0.9220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0930 | 0.2800 | 0.1754 | model_form_blend |
| predicted_3B | 0.0050 | 0.1490 | 0.0684 | model_form_blend |
| predicted_AB | 3.8600 | 8.2350 | 5.7868 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2685 | 0.2548 | model_form_blend |
| predicted_BB | 0.3880 | 0.9240 | 0.6241 | model_form_blend |
| predicted_H | 0.9400 | 2.2110 | 1.4998 | model_form_blend |
| predicted_HBP | - | 0.2630 | 0.2630 | form_only |
| predicted_HR | 0.1300 | 0.3580 | 0.2304 | model_form_blend |
| predicted_OBP | 0.3330 | 0.3506 | 0.3408 | model_form_blend |
| predicted_R | 0.5790 | 1.5730 | 1.0168 | model_form_blend |
| predicted_RBI | 0.5900 | 1.6750 | 1.0678 | model_form_blend |
| predicted_SLG | 0.4230 | 0.4692 | 0.4433 | model_form_blend |
| predicted_SO | 0.3600 | 0.9220 | 0.6075 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 214 |
| Season rows before report date | 214 |
| Report year | 2026 |
| Profile rows used | 214 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.279 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_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 | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 0 |
| 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 | C |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 689414 |
| playerID | 689414 |
| playerName | Liam Hicks |
| pos | C |
| started | True |
| startingPosition | C |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 9.2 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.356 |
| sl_xwoba | 0.322 |
| sl_xba | 0.252 |
| sl_xslg | 0.372 |
| sl_sweet_spot_percent | 25.9 |
| sl_barrel_batted_rate | 4.6 |
| sl_hard_hit_percent | 32.5 |
| sl_exit_velocity_avg | 85.7 |
| sl_launch_angle_avg | 15.1 |
| sl_whiff_percent | 10.9 |
| sl_swing_percent | 42.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.227 | 0.000 | 0.000 | Hitting_2B | 0.227 | 0.000 | -0.227 | 0.000 |
| predicted_3B | 0.007 | 0.000 | 0.000 | Hitting_3B | 0.007 | 0.000 | -0.007 | 0.000 |
| predicted_AB | 4.140 | 4.000 | 6.000 | Hitting_AB | 3.780 | 3.000 | 0.220 | 1.000 |
| predicted_AVG | 0.218 | 0.000 | 0.167 | Hitting_AVG | 0.208 | 0.333 | -0.208 | -0.333 |
| predicted_BB | 0.427 | 0.000 | 1.000 | Hitting_BB | 0.427 | 0.000 | -0.427 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.033 | 0.000 | -0.033 | 0.000 |
| predicted_H | 0.900 | 0.000 | 1.000 | Hitting_H | 0.787 | 1.000 | -0.787 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.093 | 1.000 | -0.093 | -1.000 |
| predicted_OBP | 0.286 | 0.000 | 0.286 | Hitting_OBP | 0.298 | 0.500 | -0.298 | -0.500 |
| predicted_R | 0.487 | 0.000 | 1.000 | Hitting_R | 0.487 | 1.000 | -0.487 | -1.000 |
| predicted_RBI | 0.640 | 0.000 | 1.000 | Hitting_RBI | 0.340 | 3.000 | -0.340 | -3.000 |
| predicted_SLG | 0.397 | 0.000 | 0.167 | Hitting_SLG | 0.346 | 1.333 | -0.346 | -1.333 |
| predicted_SO | 1.233 | 0.000 | 2.000 | Hitting_SO | 1.233 | 1.000 | -1.233 | -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.2330 -> 0.0000 (deboost -1.2330, 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.1400 -> 6.1883 (boost 2.0483, better) | predicted_SLG: 0.3970 -> 0.3870 (deboost -0.0100, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.2811 -> 0.2761 (deboost -0.0050, 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_BB: 0.5833 -> 1.0000 (boost 0.4167, better) | predicted_2B: 0.3476 -> 0.0000 (deboost -0.3476, worse) | AB rounded to 6 (raw=6.19), rates preserved: AVG=0.208 HR/AB=0.036 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6792 -> 1.0000 (boost 0.3208, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2761 -> 0.2860 (boost 0.0099, better) | predicted_SLG: 0.3821 -> 0.1670 (deboost -0.2151, 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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.3821 (boost 0.2151, better) | predicted_OBP: 0.2860 -> 0.2761 (deboost -0.0099, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669065",
"player_name": "Kyle Stowers",
"position": "1B",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.007,
"predicted_AB": 4.14,
"predicted_AVG": 0.218,
"predicted_BB": 0.427,
"predicted_H": 0.9,
"predicted_HR": 0.15,
"predicted_OBP": 0.286,
"predicted_R": 0.487,
"predicted_RBI": 0.64,
"predicted_SLG": 0.397,
"predicted_SO": 1.233
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3476,
"predicted_3B": 0.0275,
"predicted_AB": 6.1883,
"predicted_AVG": 0.2086,
"predicted_BB": 0.5821,
"predicted_H": 1.2653,
"predicted_HBP": 0.221,
"predicted_HR": 0.2238,
"predicted_OBP": 0.2811,
"predicted_R": 0.66,
"predicted_RBI": 0.9974,
"predicted_SLG": 0.387,
"predicted_SO": 1.9828
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.227,
"after": 0.3476,
"delta": 0.1206,
"percent_delta": 0.5313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.007,
"after": 0.0275,
"delta": 0.0205,
"percent_delta": 2.9286,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.14,
"after": 6.1883,
"delta": 2.0483,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2086,
"delta": -0.0094,
"percent_delta": -0.0431,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.427,
"after": 0.5821,
"delta": 0.1551,
"percent_delta": 0.3632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.2653,
"delta": 0.3653,
"percent_delta": 0.4059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2238,
"delta": 0.0738,
"percent_delta": 0.492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2811,
"delta": -0.0049,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.487,
"after": 0.66,
"delta": 0.173,
"percent_delta": 0.3552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.64,
"after": 0.9974,
"delta": 0.3574,
"percent_delta": 0.5584,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.387,
"delta": -0.01,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.233,
"after": 1.9828,
"delta": 0.7498,
"percent_delta": 0.6081,
"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.14,
"after": 6.1883,
"delta": 2.0483,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.397,
"after": 0.387,
"delta": -0.01,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 45
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3476,
"predicted_3B": 0.0275,
"predicted_AB": 6.1883,
"predicted_AVG": 0.2079,
"predicted_BB": 0.5833,
"predicted_H": 1.2863,
"predicted_HBP": 0.221,
"predicted_HR": 0.2251,
"predicted_OBP": 0.2761,
"predicted_R": 0.6792,
"predicted_RBI": 1.0264,
"predicted_SLG": 0.3821,
"predicted_SO": 1.9786
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3476,
"after": 0.3476,
"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": 6.1883,
"after": 6.1883,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2086,
"after": 0.2079,
"delta": -0.0007,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5821,
"after": 0.5833,
"delta": 0.0012,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2653,
"after": 1.2863,
"delta": 0.021,
"percent_delta": 0.0166,
"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.2238,
"after": 0.2251,
"delta": 0.0013,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2811,
"after": 0.2761,
"delta": -0.005,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.66,
"after": 0.6792,
"delta": 0.0192,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9974,
"after": 1.0264,
"delta": 0.029,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.387,
"after": 0.3821,
"delta": -0.0049,
"percent_delta": -0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.9828,
"after": 1.9786,
"delta": -0.0042,
"percent_delta": -0.0021,
"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.2811,
"after": 0.2761,
"delta": -0.005,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.19), rates preserved: AVG=0.208 HR/AB=0.036",
"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.3476,
"after": 0.0,
"delta": -0.3476,
"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": 6.1883,
"after": 6.0,
"delta": -0.1883,
"percent_delta": -0.0304,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5833,
"after": 1.0,
"delta": 0.4167,
"percent_delta": 0.7144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2863,
"after": 1.0,
"delta": -0.2863,
"percent_delta": -0.2226,
"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.2251,
"after": 0.0,
"delta": -0.2251,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0264,
"after": 1.0,
"delta": -0.0264,
"percent_delta": -0.0257,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.9786,
"after": 2.0,
"delta": 0.0214,
"percent_delta": 0.0108,
"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_BB",
"before": 0.5833,
"after": 1.0,
"delta": 0.4167,
"percent_delta": 0.7144,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3476,
"after": 0.0,
"delta": -0.3476,
"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.6792,
"after": 1.0,
"delta": 0.3208,
"percent_delta": 0.4723,
"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.6792,
"after": 1.0,
"delta": 0.3208,
"percent_delta": 0.4723,
"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.2079,
"after": 0.167,
"delta": -0.0409,
"percent_delta": -0.1967,
"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.2761,
"after": 0.286,
"delta": 0.0099,
"percent_delta": 0.0359,
"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.3821,
"after": 0.167,
"delta": -0.2151,
"percent_delta": -0.5629,
"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.2761,
"after": 0.286,
"delta": 0.0099,
"percent_delta": 0.0359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3821,
"after": 0.167,
"delta": -0.2151,
"percent_delta": -0.5629,
"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": 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": 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": 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.2079,
"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.2761,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3821,
"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.167,
"after": 0.2079,
"delta": 0.0409,
"percent_delta": 0.2447,
"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.2761,
"delta": -0.0099,
"percent_delta": -0.0346,
"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.3821,
"delta": 0.2151,
"percent_delta": 1.2878,
"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.3821,
"delta": 0.2151,
"percent_delta": 1.2878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2761,
"delta": -0.0099,
"percent_delta": -0.0346,
"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.007,
"after": 0.0,
"delta": -0.007,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.14,
"after": 4.0,
"delta": -0.14,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2079,
"delta": -0.0101,
"percent_delta": -0.0463,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.427,
"after": 0.0,
"delta": -0.427,
"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.286,
"after": 0.2761,
"delta": -0.0099,
"percent_delta": -0.0346,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.487,
"after": 0.0,
"delta": -0.487,
"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.397,
"after": 0.3821,
"delta": -0.0149,
"percent_delta": -0.0375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.233,
"after": 0.0,
"delta": -1.233,
"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.233,
"after": 0.0,
"delta": -1.233,
"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.227 | - |
| predicted_3B | 0.007 | - |
| predicted_AB | 4.140 | - |
| predicted_AVG | 0.218 | - |
| predicted_BB | 0.427 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.286 | - |
| predicted_R | 0.487 | - |
| predicted_RBI | 0.640 | - |
| predicted_SLG | 0.397 | - |
| predicted_SO | 1.233 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.348 | 0.121 |
| predicted_3B | 0.028 | 0.021 |
| predicted_AB | 6.188 | 2.048 |
| predicted_AVG | 0.209 | -0.009 |
| predicted_BB | 0.582 | 0.155 |
| predicted_H | 1.265 | 0.365 |
| predicted_HBP | 0.221 | - |
| predicted_HR | 0.224 | 0.074 |
| predicted_OBP | 0.281 | -0.005 |
| predicted_R | 0.660 | 0.173 |
| predicted_RBI | 0.997 | 0.357 |
| predicted_SLG | 0.387 | -0.010 |
| predicted_SO | 1.983 | 0.750 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.348 | 0.000 |
| predicted_3B | 0.028 | 0.000 |
| predicted_AB | 6.188 | 0.000 |
| predicted_AVG | 0.208 | -0.001 |
| predicted_BB | 0.583 | 0.001 |
| predicted_H | 1.286 | 0.021 |
| predicted_HBP | 0.221 | 0.000 |
| predicted_HR | 0.225 | 0.001 |
| predicted_OBP | 0.276 | -0.005 |
| predicted_R | 0.679 | 0.019 |
| predicted_RBI | 1.026 | 0.029 |
| predicted_SLG | 0.382 | -0.005 |
| predicted_SO | 1.979 | -0.004 |
AB rounded to 6 (raw=6.19), rates preserved: AVG=0.208 HR/AB=0.036
| 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.348 |
| predicted_3B | 0.000 | -0.028 |
| predicted_AB | 6.000 | -0.188 |
| predicted_AVG | 0.167 | -0.041 |
| predicted_BB | 1.000 | 0.417 |
| predicted_H | 1.000 | -0.286 |
| predicted_HR | 0.000 | -0.225 |
| predicted_OBP | 0.286 | 0.010 |
| predicted_R | 1.000 | 0.321 |
| predicted_RBI | 1.000 | -0.026 |
| predicted_SLG | 0.167 | -0.215 |
| predicted_SO | 2.000 | 0.021 |
Attached 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 | 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 | 1.000 | 0.000 | 1.000 | 6.000 | 1.000 | 1.000 | 6.000 | 0.1667 | 0.2381 | 0.3889 | 0.1667 | 0.0556 | 0.3333 | 0.0556 | 0.3333 |
| last_10 | 0.20 | 10 | - | 39.000 | 7.000 | 2.000 | 1.000 | 2.000 | 9.000 | 2.000 | 2.000 | 15.000 | 0.1795 | 0.2326 | 0.4359 | 0.1795 | 0.0513 | 0.2308 | 0.0513 | 0.3846 |
| season | 0.60 | 45 | - | 567.000 | 118.000 | 34.000 | 1.000 | 14.000 | 51.000 | 73.000 | 64.000 | 185.000 | 0.2081 | 0.2980 | 0.3457 | 0.2081 | 0.0247 | 0.0900 | 0.1129 | 0.3263 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5030 |
| predicted_3B | 0.0540 |
| predicted_AB | 8.8280 |
| predicted_AVG | 0.1966 |
| predicted_BB | 0.7820 |
| predicted_H | 1.7360 |
| predicted_HBP | 0.2210 |
| predicted_HR | 0.3190 |
| predicted_OBP | 0.2748 |
| predicted_R | 0.8830 |
| predicted_RBI | 1.4580 |
| predicted_SLG | 0.3740 |
| predicted_SO | 2.9490 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2270 | 0.5030 | 0.3476 | model_form_blend |
| predicted_3B | 0.0070 | 0.0540 | 0.0275 | model_form_blend |
| predicted_AB | 4.1400 | 8.8280 | 6.1883 | model_form_blend |
| predicted_AVG | 0.2180 | 0.1966 | 0.2086 | model_form_blend |
| predicted_BB | 0.4270 | 0.7820 | 0.5821 | model_form_blend |
| predicted_H | 0.9000 | 1.7360 | 1.2653 | model_form_blend |
| predicted_HBP | - | 0.2210 | 0.2210 | form_only |
| predicted_HR | 0.1500 | 0.3190 | 0.2238 | model_form_blend |
| predicted_OBP | 0.2860 | 0.2748 | 0.2811 | model_form_blend |
| predicted_R | 0.4870 | 0.8830 | 0.6600 | model_form_blend |
| predicted_RBI | 0.6400 | 1.4580 | 0.9974 | model_form_blend |
| predicted_SLG | 0.3970 | 0.3740 | 0.3870 | model_form_blend |
| predicted_SO | 1.2330 | 2.9490 | 1.9828 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 150 |
| Season rows before report date | 150 |
| 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 | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.208 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 669065 |
| playerID | 669065 |
| playerName | Kyle Stowers |
| pos | LF |
| started | True |
| startingPosition | DH |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 29.3 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.299 |
| sl_xwoba | 0.31 |
| sl_xba | 0.23 |
| sl_xslg | 0.401 |
| sl_sweet_spot_percent | 32.5 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 14.5 |
| sl_whiff_percent | 35.1 |
| 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.259 | 0.000 | 1.000 | Hitting_2B | 0.259 | 0.000 | -0.259 | 0.000 |
| predicted_3B | 0.045 | 0.000 | 0.000 | Hitting_3B | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_AB | 4.510 | 4.000 | 7.000 | Hitting_AB | 4.037 | 5.000 | -0.037 | -1.000 |
| predicted_AVG | 0.271 | 0.000 | 0.286 | Hitting_AVG | 0.349 | 0.400 | -0.349 | -0.400 |
| predicted_BB | 0.169 | 0.000 | 0.000 | Hitting_BB | 0.169 | 0.000 | -0.169 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_H | 1.220 | 0.000 | 2.000 | Hitting_H | 1.407 | 2.000 | -1.407 | -2.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.082 | 0.000 | -0.082 | 0.000 |
| predicted_OBP | 0.353 | 0.000 | 0.286 | Hitting_OBP | 0.378 | 0.400 | -0.378 | -0.400 |
| predicted_R | 0.613 | 0.000 | 1.000 | Hitting_R | 0.613 | 1.000 | -0.613 | -1.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.465 | 2.000 | -0.465 | -2.000 |
| predicted_SLG | 0.473 | 0.000 | 0.429 | Hitting_SLG | 0.496 | 0.400 | -0.496 | -0.400 |
| predicted_SO | 0.679 | 0.000 | 1.000 | Hitting_SO | 0.679 | 1.000 | -0.679 | -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_AVG: 0.2710 -> 0.3322 (boost 0.0612, better) |
| Biggest Deboost | predicted_H: 1.2200 -> 0.0000 (deboost -1.2200, 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.5100 -> 7.0867 (boost 2.5767, 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.3093 -> 0.3322 (boost 0.0229, better) | predicted_OBP: 0.3660 -> 0.3537 (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 | 9 | 2 | 7 | 3 | 6 | predicted_2B: 0.5259 -> 1.0000 (boost 0.4741, better) | predicted_H: 2.3539 -> 2.0000 (deboost -0.3539, worse) | AB rounded to 7 (raw=7.09), rates preserved: AVG=0.332 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2266 -> 1.0000 (deboost -0.2266, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4993 -> 0.4290 (deboost -0.0703, 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.4290 -> 0.4993 (boost 0.0703, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "672640",
"player_name": "Otto Lopez",
"position": "SS",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.045,
"predicted_AB": 4.51,
"predicted_AVG": 0.271,
"predicted_BB": 0.169,
"predicted_H": 1.22,
"predicted_HR": 0.11,
"predicted_OBP": 0.353,
"predicted_R": 0.613,
"predicted_RBI": 0.54,
"predicted_SLG": 0.473,
"predicted_SO": 0.679
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.5259,
"predicted_3B": 0.1166,
"predicted_AB": 7.0867,
"predicted_AVG": 0.3093,
"predicted_BB": 0.2362,
"predicted_H": 2.3155,
"predicted_HBP": 0.142,
"predicted_HR": 0.1409,
"predicted_OBP": 0.366,
"predicted_R": 1.1919,
"predicted_RBI": 0.89,
"predicted_SLG": 0.4996,
"predicted_SO": 1.1823
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.259,
"after": 0.5259,
"delta": 0.2669,
"percent_delta": 1.0305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.045,
"after": 0.1166,
"delta": 0.0716,
"percent_delta": 1.5911,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.51,
"after": 7.0867,
"delta": 2.5767,
"percent_delta": 0.5713,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.3093,
"delta": 0.0383,
"percent_delta": 0.1413,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.169,
"after": 0.2362,
"delta": 0.0672,
"percent_delta": 0.3976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.22,
"after": 2.3155,
"delta": 1.0955,
"percent_delta": 0.898,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1409,
"delta": 0.0309,
"percent_delta": 0.2809,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.353,
"after": 0.366,
"delta": 0.013,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.613,
"after": 1.1919,
"delta": 0.5789,
"percent_delta": 0.9444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.89,
"delta": 0.35,
"percent_delta": 0.6481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4996,
"delta": 0.0266,
"percent_delta": 0.0562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.679,
"after": 1.1823,
"delta": 0.5033,
"percent_delta": 0.7412,
"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.51,
"after": 7.0867,
"delta": 2.5767,
"percent_delta": 0.5713,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.5259,
"predicted_3B": 0.1166,
"predicted_AB": 7.0867,
"predicted_AVG": 0.3322,
"predicted_BB": 0.2367,
"predicted_H": 2.3539,
"predicted_HBP": 0.142,
"predicted_HR": 0.1417,
"predicted_OBP": 0.3537,
"predicted_R": 1.2266,
"predicted_RBI": 0.9159,
"predicted_SLG": 0.4993,
"predicted_SO": 1.1798
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5259,
"after": 0.5259,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1166,
"after": 0.1166,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0867,
"after": 7.0867,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3093,
"after": 0.3322,
"delta": 0.0229,
"percent_delta": 0.074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2362,
"after": 0.2367,
"delta": 0.0005,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.3155,
"after": 2.3539,
"delta": 0.0384,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.142,
"after": 0.142,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1409,
"after": 0.1417,
"delta": 0.0008,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.366,
"after": 0.3537,
"delta": -0.0123,
"percent_delta": -0.0336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1919,
"after": 1.2266,
"delta": 0.0347,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.89,
"after": 0.9159,
"delta": 0.0259,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4996,
"after": 0.4993,
"delta": -0.0003,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.1823,
"after": 1.1798,
"delta": -0.0025,
"percent_delta": -0.0021,
"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.3093,
"after": 0.3322,
"delta": 0.0229,
"percent_delta": 0.074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.366,
"after": 0.3537,
"delta": -0.0123,
"percent_delta": -0.0336,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.09), rates preserved: AVG=0.332 HR/AB=0.020",
"stats": {
"predicted_2B": 1.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.5259,
"after": 1.0,
"delta": 0.4741,
"percent_delta": 0.9015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1166,
"after": 0.0,
"delta": -0.1166,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.0867,
"after": 7.0,
"delta": -0.0867,
"percent_delta": -0.0122,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2367,
"after": 0.0,
"delta": -0.2367,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 2.3539,
"after": 2.0,
"delta": -0.3539,
"percent_delta": -0.1503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.142,
"after": 0.0,
"delta": -0.142,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1417,
"after": 0.0,
"delta": -0.1417,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9159,
"after": 1.0,
"delta": 0.0841,
"percent_delta": 0.0918,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1798,
"after": 1.0,
"delta": -0.1798,
"percent_delta": -0.1524,
"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_2B",
"before": 0.5259,
"after": 1.0,
"delta": 0.4741,
"percent_delta": 0.9015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 2.3539,
"after": 2.0,
"delta": -0.3539,
"percent_delta": -0.1503,
"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": 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": 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": 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.2266,
"after": 1.0,
"delta": -0.2266,
"percent_delta": -0.1847,
"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.2266,
"after": 1.0,
"delta": -0.2266,
"percent_delta": -0.1847,
"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": 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.429,
"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": 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.3322,
"after": 0.286,
"delta": -0.0462,
"percent_delta": -0.1391,
"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.3537,
"after": 0.286,
"delta": -0.0677,
"percent_delta": -0.1914,
"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.4993,
"after": 0.429,
"delta": -0.0703,
"percent_delta": -0.1408,
"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.4993,
"after": 0.429,
"delta": -0.0703,
"percent_delta": -0.1408,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"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.3322,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3537,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4993,
"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.3322,
"delta": 0.0462,
"percent_delta": 0.1614,
"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.3537,
"delta": 0.0677,
"percent_delta": 0.2369,
"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.429,
"after": 0.4993,
"delta": 0.0703,
"percent_delta": 0.1638,
"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.429,
"after": 0.4993,
"delta": 0.0703,
"percent_delta": 0.1638,
"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.045,
"after": 0.0,
"delta": -0.045,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.51,
"after": 4.0,
"delta": -0.51,
"percent_delta": -0.1131,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.3322,
"delta": 0.0612,
"percent_delta": 0.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.169,
"after": 0.0,
"delta": -0.169,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.22,
"after": 0.0,
"delta": -1.22,
"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.353,
"after": 0.3537,
"delta": 0.0007,
"percent_delta": 0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.54,
"after": 0.0,
"delta": -0.54,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.473,
"after": 0.4993,
"delta": 0.0263,
"percent_delta": 0.0556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.679,
"after": 0.0,
"delta": -0.679,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.271,
"after": 0.3322,
"delta": 0.0612,
"percent_delta": 0.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.22,
"after": 0.0,
"delta": -1.22,
"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.045 | - |
| predicted_AB | 4.510 | - |
| predicted_AVG | 0.271 | - |
| predicted_BB | 0.169 | - |
| predicted_H | 1.220 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.353 | - |
| predicted_R | 0.613 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.473 | - |
| predicted_SO | 0.679 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.267 |
| predicted_3B | 0.117 | 0.072 |
| predicted_AB | 7.087 | 2.577 |
| predicted_AVG | 0.309 | 0.038 |
| predicted_BB | 0.236 | 0.067 |
| predicted_H | 2.316 | 1.096 |
| predicted_HBP | 0.142 | - |
| predicted_HR | 0.141 | 0.031 |
| predicted_OBP | 0.366 | 0.013 |
| predicted_R | 1.192 | 0.579 |
| predicted_RBI | 0.890 | 0.350 |
| predicted_SLG | 0.500 | 0.027 |
| predicted_SO | 1.182 | 0.503 |
Step 3: 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.117 | 0.000 |
| predicted_AB | 7.087 | 0.000 |
| predicted_AVG | 0.332 | 0.023 |
| predicted_BB | 0.237 | 0.001 |
| predicted_H | 2.354 | 0.038 |
| predicted_HBP | 0.142 | 0.000 |
| predicted_HR | 0.142 | 0.001 |
| predicted_OBP | 0.354 | -0.012 |
| predicted_R | 1.227 | 0.035 |
| predicted_RBI | 0.916 | 0.026 |
| predicted_SLG | 0.499 | -0.000 |
| predicted_SO | 1.180 | -0.002 |
AB rounded to 7 (raw=7.09), rates preserved: AVG=0.332 HR/AB=0.020
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.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 | 1.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 | 1.000 | 0.474 |
| predicted_3B | 0.000 | -0.117 |
| predicted_AB | 7.000 | -0.087 |
| predicted_AVG | 0.286 | -0.046 |
| predicted_BB | 0.000 | -0.237 |
| predicted_H | 2.000 | -0.354 |
| predicted_HR | 0.000 | -0.142 |
| predicted_OBP | 0.286 | -0.068 |
| predicted_R | 1.000 | -0.227 |
| predicted_RBI | 1.000 | 0.084 |
| predicted_SLG | 0.429 | -0.070 |
| predicted_SO | 1.000 | -0.180 |
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 | 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 | - | 22.000 | 9.000 | 3.000 | 1.000 | 0.000 | 4.000 | 6.000 | 0.000 | 4.000 | 0.4091 | 0.4091 | 0.6364 | 0.4091 | 0.0000 | 0.1818 | 0.0000 | 0.1818 |
| last_10 | 0.20 | 10 | - | 43.000 | 15.000 | 4.000 | 1.000 | 1.000 | 5.000 | 9.000 | 1.000 | 8.000 | 0.3488 | 0.3778 | 0.5581 | 0.3488 | 0.0233 | 0.1163 | 0.0233 | 0.1860 |
| season | 0.60 | 67 | - | 981.000 | 342.000 | 63.000 | 11.000 | 20.000 | 113.000 | 149.000 | 41.000 | 165.000 | 0.3486 | 0.3783 | 0.4964 | 0.3486 | 0.0204 | 0.1152 | 0.0418 | 0.1682 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8630 |
| predicted_3B | 0.2070 |
| predicted_AB | 10.3410 |
| predicted_AVG | 0.3577 |
| predicted_BB | 0.3210 |
| predicted_H | 3.6990 |
| predicted_HBP | 0.1420 |
| predicted_HR | 0.1800 |
| predicted_OBP | 0.3824 |
| predicted_R | 1.9230 |
| predicted_RBI | 1.3320 |
| predicted_SLG | 0.5332 |
| predicted_SO | 1.8180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2590 | 0.8630 | 0.5259 | model_form_blend |
| predicted_3B | 0.0450 | 0.2070 | 0.1166 | model_form_blend |
| predicted_AB | 4.5100 | 10.3410 | 7.0867 | model_form_blend |
| predicted_AVG | 0.2710 | 0.3577 | 0.3093 | model_form_blend |
| predicted_BB | 0.1690 | 0.3210 | 0.2362 | model_form_blend |
| predicted_H | 1.2200 | 3.6990 | 2.3155 | model_form_blend |
| predicted_HBP | - | 0.1420 | 0.1420 | form_only |
| predicted_HR | 0.1100 | 0.1800 | 0.1409 | model_form_blend |
| predicted_OBP | 0.3530 | 0.3824 | 0.3660 | model_form_blend |
| predicted_R | 0.6130 | 1.9230 | 1.1919 | model_form_blend |
| predicted_RBI | 0.5400 | 1.3320 | 0.8900 | model_form_blend |
| predicted_SLG | 0.4730 | 0.5332 | 0.4996 | model_form_blend |
| predicted_SO | 0.6790 | 1.8180 | 1.1823 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.349 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 1 |
| Hitting_RBI | 2 |
| 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 | SS |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 672640 |
| playerID | 672640 |
| playerName | Otto Lopez |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 15.8 |
| sl_bb_percent | 3.5 |
| sl_woba | 0.374 |
| sl_xwoba | 0.341 |
| sl_xba | 0.298 |
| sl_xslg | 0.459 |
| sl_sweet_spot_percent | 30.7 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 45.3 |
| sl_exit_velocity_avg | 90.5 |
| sl_launch_angle_avg | 6.3 |
| sl_whiff_percent | 20.8 |
| sl_swing_percent | 48.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.209 | 1.000 | 0.000 | Hitting_2B | 0.209 | 0.000 | 0.791 | 1.000 |
| predicted_3B | 0.060 | 0.000 | 0.000 | Hitting_3B | 0.060 | 0.000 | -0.060 | 0.000 |
| predicted_AB | 4.020 | 4.000 | 6.000 | Hitting_AB | 3.783 | 2.000 | 0.217 | 2.000 |
| predicted_AVG | 0.245 | 0.500 | 0.333 | Hitting_AVG | 0.318 | 0.000 | 0.182 | 0.500 |
| predicted_BB | 0.550 | 0.000 | 1.000 | Hitting_BB | 0.550 | 1.000 | -0.550 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_H | 0.980 | 2.000 | 2.000 | Hitting_H | 1.205 | 0.000 | 0.795 | 2.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.104 | 0.000 | -0.104 | 0.000 |
| predicted_OBP | 0.345 | 0.500 | 0.429 | Hitting_OBP | 0.405 | 0.333 | 0.095 | 0.167 |
| predicted_R | 0.727 | 1.000 | 1.000 | Hitting_R | 0.727 | 0.000 | 0.273 | 1.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.349 | 0.000 | -0.349 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.153 | 0.000 | -0.153 | 0.000 |
| predicted_SLG | 0.378 | 0.750 | 0.333 | Hitting_SLG | 0.488 | 0.000 | 0.262 | 0.750 |
| predicted_SO | 0.510 | 1.000 | 1.000 | Hitting_SO | 0.510 | 1.000 | 0.490 | 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: 0.9800 -> 2.0000 (boost 1.0200, better) |
| Biggest Deboost | predicted_BB: 0.5500 -> 0.0000 (deboost -0.5500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 4.0200 -> 6.4149 (boost 2.3949, 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.2568 -> 0.2663 (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 | 6 | 2 | 4 | 2 | 4 | predicted_RBI: 0.6426 -> 1.0000 (boost 0.3574, better) | predicted_AB: 6.4149 -> 6.0000 (deboost -0.4149, worse) | AB rounded to 6 (raw=6.41), rates preserved: AVG=0.266 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_AVG: 0.2663 -> 0.3330 (boost 0.0667, better) | predicted_SLG: 0.3861 -> 0.3330 (deboost -0.0531, 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_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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3861 (boost 0.0531, better) | predicted_AVG: 0.3330 -> 0.2663 (deboost -0.0667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669364",
"player_name": "Xavier Edwards",
"position": "2B",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.209,
"predicted_3B": 0.06,
"predicted_AB": 4.02,
"predicted_AVG": 0.245,
"predicted_BB": 0.55,
"predicted_H": 0.98,
"predicted_HR": 0.09,
"predicted_OBP": 0.345,
"predicted_R": 0.727,
"predicted_RBI": 0.41,
"predicted_SLG": 0.378,
"predicted_SO": 0.51
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2567,
"predicted_3B": 0.0728,
"predicted_AB": 6.4149,
"predicted_AVG": 0.2568,
"predicted_BB": 0.9992,
"predicted_H": 1.6803,
"predicted_HBP": 0.002,
"predicted_HR": 0.1214,
"predicted_OBP": 0.3565,
"predicted_R": 0.9662,
"predicted_RBI": 0.6244,
"predicted_SLG": 0.3767,
"predicted_SO": 1.0215
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.209,
"after": 0.2567,
"delta": 0.0477,
"percent_delta": 0.2282,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.06,
"after": 0.0728,
"delta": 0.0128,
"percent_delta": 0.2133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 6.4149,
"delta": 2.3949,
"percent_delta": 0.5957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2568,
"delta": 0.0118,
"percent_delta": 0.0482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.55,
"after": 0.9992,
"delta": 0.4492,
"percent_delta": 0.8167,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.6803,
"delta": 0.7003,
"percent_delta": 0.7146,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1214,
"delta": 0.0314,
"percent_delta": 0.3489,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3565,
"delta": 0.0115,
"percent_delta": 0.0333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.727,
"after": 0.9662,
"delta": 0.2392,
"percent_delta": 0.329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6244,
"delta": 0.2144,
"percent_delta": 0.5229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.378,
"after": 0.3767,
"delta": -0.0013,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.51,
"after": 1.0215,
"delta": 0.5115,
"percent_delta": 1.0029,
"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.02,
"after": 6.4149,
"delta": 2.3949,
"percent_delta": 0.5957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2567,
"predicted_3B": 0.0728,
"predicted_AB": 6.4149,
"predicted_AVG": 0.2663,
"predicted_BB": 1.0013,
"predicted_H": 1.7082,
"predicted_HBP": 0.002,
"predicted_HR": 0.1221,
"predicted_OBP": 0.3653,
"predicted_R": 0.9943,
"predicted_RBI": 0.6426,
"predicted_SLG": 0.3861,
"predicted_SO": 1.0194
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2567,
"after": 0.2567,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0728,
"after": 0.0728,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4149,
"after": 6.4149,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2568,
"after": 0.2663,
"delta": 0.0095,
"percent_delta": 0.037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9992,
"after": 1.0013,
"delta": 0.0021,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6803,
"after": 1.7082,
"delta": 0.0279,
"percent_delta": 0.0166,
"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.1214,
"after": 0.1221,
"delta": 0.0007,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3565,
"after": 0.3653,
"delta": 0.0088,
"percent_delta": 0.0247,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9662,
"after": 0.9943,
"delta": 0.0281,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6244,
"after": 0.6426,
"delta": 0.0182,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3767,
"after": 0.3861,
"delta": 0.0094,
"percent_delta": 0.025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0215,
"after": 1.0194,
"delta": -0.0021,
"percent_delta": -0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2568,
"after": 0.2663,
"delta": 0.0095,
"percent_delta": 0.037,
"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.266 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.2567,
"after": 0.0,
"delta": -0.2567,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0728,
"after": 0.0,
"delta": -0.0728,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.4149,
"after": 6.0,
"delta": -0.4149,
"percent_delta": -0.0647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0013,
"after": 1.0,
"delta": -0.0013,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7082,
"after": 2.0,
"delta": 0.2918,
"percent_delta": 0.1708,
"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.1221,
"after": 0.0,
"delta": -0.1221,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6426,
"after": 1.0,
"delta": 0.3574,
"percent_delta": 0.5562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0194,
"after": 1.0,
"delta": -0.0194,
"percent_delta": -0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6426,
"after": 1.0,
"delta": 0.3574,
"percent_delta": 0.5562,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.4149,
"after": 6.0,
"delta": -0.4149,
"percent_delta": -0.0647,
"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": 0.9943,
"after": 1.0,
"delta": 0.0057,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.2663,
"after": 0.333,
"delta": 0.0667,
"percent_delta": 0.2505,
"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.3653,
"after": 0.429,
"delta": 0.0637,
"percent_delta": 0.1744,
"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.3861,
"after": 0.333,
"delta": -0.0531,
"percent_delta": -0.1375,
"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.2663,
"after": 0.333,
"delta": 0.0667,
"percent_delta": 0.2505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3861,
"after": 0.333,
"delta": -0.0531,
"percent_delta": -0.1375,
"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": 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": 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": 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_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.2663,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3653,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3861,
"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.2663,
"delta": -0.0667,
"percent_delta": -0.2003,
"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.3653,
"delta": -0.0637,
"percent_delta": -0.1484,
"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.3861,
"delta": 0.0531,
"percent_delta": 0.1595,
"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.3861,
"delta": 0.0531,
"percent_delta": 0.1595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2663,
"delta": -0.0667,
"percent_delta": -0.2003,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.209,
"after": 1.0,
"delta": 0.791,
"percent_delta": 3.7847,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 4.0,
"delta": -0.02,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2663,
"delta": 0.0213,
"percent_delta": 0.0869,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3653,
"delta": 0.0203,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.727,
"after": 1.0,
"delta": 0.273,
"percent_delta": 0.3755,
"direction": "boost",
"projection_effect": "better",
"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.378,
"after": 0.3861,
"delta": 0.0081,
"percent_delta": 0.0214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"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.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | - |
| predicted_3B | 0.060 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.550 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.345 | - |
| predicted_R | 0.727 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.378 | - |
| predicted_SO | 0.510 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.257 | 0.048 |
| predicted_3B | 0.073 | 0.013 |
| predicted_AB | 6.415 | 2.395 |
| predicted_AVG | 0.257 | 0.012 |
| predicted_BB | 0.999 | 0.449 |
| predicted_H | 1.680 | 0.700 |
| predicted_HBP | 0.002 | - |
| predicted_HR | 0.121 | 0.031 |
| predicted_OBP | 0.356 | 0.012 |
| predicted_R | 0.966 | 0.239 |
| predicted_RBI | 0.624 | 0.214 |
| predicted_SLG | 0.377 | -0.001 |
| predicted_SO | 1.022 | 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.257 | 0.000 |
| predicted_3B | 0.073 | 0.000 |
| predicted_AB | 6.415 | 0.000 |
| predicted_AVG | 0.266 | 0.010 |
| predicted_BB | 1.001 | 0.002 |
| predicted_H | 1.708 | 0.028 |
| predicted_HBP | 0.002 | 0.000 |
| predicted_HR | 0.122 | 0.001 |
| predicted_OBP | 0.365 | 0.009 |
| predicted_R | 0.994 | 0.028 |
| predicted_RBI | 0.643 | 0.018 |
| predicted_SLG | 0.386 | 0.009 |
| predicted_SO | 1.019 | -0.002 |
AB rounded to 6 (raw=6.41), rates preserved: AVG=0.266 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.257 |
| predicted_3B | 0.000 | -0.073 |
| predicted_AB | 6.000 | -0.415 |
| predicted_AVG | 0.333 | 0.067 |
| predicted_BB | 1.000 | -0.001 |
| predicted_H | 2.000 | 0.292 |
| predicted_HR | 0.000 | -0.122 |
| predicted_OBP | 0.429 | 0.064 |
| predicted_R | 1.000 | 0.006 |
| predicted_RBI | 1.000 | 0.357 |
| predicted_SLG | 0.333 | -0.053 |
| predicted_SO | 1.000 | -0.019 |
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 | 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 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 3.000 | 4.000 | 0.2000 | 0.3158 | 0.2000 | 0.2000 | 0.0000 | 0.1333 | 0.2000 | 0.2667 |
| last_10 | 0.20 | 10 | - | 34.000 | 7.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 7.000 | 7.000 | 0.2059 | 0.3333 | 0.2059 | 0.2059 | 0.0000 | 0.0588 | 0.2059 | 0.2059 |
| season | 0.60 | 68 | - | 942.000 | 300.000 | 52.000 | 15.000 | 26.000 | 87.000 | 181.000 | 137.000 | 127.000 | 0.3185 | 0.4046 | 0.4883 | 0.3185 | 0.0276 | 0.0924 | 0.1454 | 0.1348 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3170 |
| predicted_3B | 0.0890 |
| predicted_AB | 9.4370 |
| predicted_AVG | 0.2717 |
| predicted_BB | 1.5660 |
| predicted_H | 2.5640 |
| predicted_HBP | 0.0020 |
| predicted_HR | 0.1610 |
| predicted_OBP | 0.3710 |
| predicted_R | 1.2680 |
| predicted_RBI | 0.8950 |
| predicted_SLG | 0.3751 |
| predicted_SO | 1.6670 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2090 | 0.3170 | 0.2567 | model_form_blend |
| predicted_3B | 0.0600 | 0.0890 | 0.0728 | model_form_blend |
| predicted_AB | 4.0200 | 9.4370 | 6.4149 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2717 | 0.2568 | model_form_blend |
| predicted_BB | 0.5500 | 1.5660 | 0.9992 | model_form_blend |
| predicted_H | 0.9800 | 2.5640 | 1.6803 | model_form_blend |
| predicted_HBP | - | 0.0020 | 0.0020 | form_only |
| predicted_HR | 0.0900 | 0.1610 | 0.1214 | model_form_blend |
| predicted_OBP | 0.3450 | 0.3710 | 0.3565 | model_form_blend |
| predicted_R | 0.7270 | 1.2680 | 0.9662 | model_form_blend |
| predicted_RBI | 0.4100 | 0.8950 | 0.6244 | model_form_blend |
| predicted_SLG | 0.3780 | 0.3751 | 0.3767 | model_form_blend |
| predicted_SO | 0.5100 | 1.6670 | 1.0215 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 249 |
| Season rows before report date | 249 |
| Report year | 2026 |
| Profile rows used | 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 | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.318 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 2B |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 669364 |
| playerID | 669364 |
| playerName | Xavier Edwards |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 12.2 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.371 |
| sl_xwoba | 0.345 |
| sl_xba | 0.28 |
| sl_xslg | 0.418 |
| sl_sweet_spot_percent | 39.6 |
| sl_barrel_batted_rate | 6.0 |
| sl_hard_hit_percent | 32.3 |
| sl_exit_velocity_avg | 87.2 |
| sl_launch_angle_avg | 11.4 |
| sl_whiff_percent | 14.2 |
| sl_swing_percent | 39.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.203 | 1.000 | 0.000 | Hitting_2B | 0.201 | 0.000 | 0.799 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.127 | 3.000 | 4.000 | Hitting_AB | 3.107 | 3.000 | -0.107 | 0.000 |
| predicted_AVG | 0.232 | 0.333 | 0.250 | Hitting_AVG | 0.229 | 0.333 | 0.105 | 0.000 |
| predicted_BB | 0.228 | 1.000 | 0.000 | Hitting_BB | 0.233 | 0.000 | 0.767 | 1.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.711 | 1.000 | 0.289 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.082 | 1.000 | -0.082 | -1.000 |
| predicted_OBP | 0.271 | 0.500 | 0.250 | Hitting_OBP | 0.285 | 0.250 | 0.215 | 0.250 |
| predicted_R | 0.348 | 1.000 | 1.000 | Hitting_R | 0.346 | 1.000 | 0.654 | 0.000 |
| predicted_RBI | 0.540 | 2.000 | 1.000 | Hitting_RBI | 0.629 | 3.000 | 1.371 | -1.000 |
| predicted_SLG | 0.384 | 0.667 | 0.250 | Hitting_SLG | 0.372 | 1.333 | 0.294 | -0.667 |
| predicted_SO | 1.424 | 0.000 | 2.000 | Hitting_SO | 1.415 | 0.000 | -1.415 | 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_RBI: 0.5400 -> 2.0000 (boost 1.4600, better) |
| Biggest Deboost | predicted_SO: 1.4240 -> 0.0000 (deboost -1.4240, 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.1270 -> 4.4609 (boost 1.3339, better) | predicted_AVG: 0.2320 -> 0.2140 (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 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3773 -> 0.3852 (boost 0.0079, better) | predicted_AVG: 0.2140 -> 0.2020 (deboost -0.0120, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 2 | 5 | predicted_RBI: 0.8963 -> 1.0000 (boost 0.1037, better) | predicted_AB: 4.4609 -> 4.0000 (deboost -0.4609, worse) | AB rounded to 4 (raw=4.46), rates preserved: AVG=0.202 HR/AB=0.043 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5090 -> 1.0000 (boost 0.4910, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2020 -> 0.2500 (boost 0.0480, better) | predicted_SLG: 0.3852 -> 0.2500 (deboost -0.1352, 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_SO: 2.0000 -> 0.0000 (deboost -2.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3852 (boost 0.1352, better) | predicted_AVG: 0.2500 -> 0.2020 (deboost -0.0480, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683357",
"player_name": "Owen Caissie",
"position": "RF",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.203,
"predicted_3B": 0.0,
"predicted_AB": 3.127,
"predicted_AVG": 0.232,
"predicted_BB": 0.228,
"predicted_H": 0.66,
"predicted_HR": 0.13,
"predicted_OBP": 0.271,
"predicted_R": 0.348,
"predicted_RBI": 0.54,
"predicted_SLG": 0.384,
"predicted_SO": 1.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.2391,
"predicted_3B": 0.0004,
"predicted_AB": 4.4609,
"predicted_AVG": 0.214,
"predicted_BB": 0.3607,
"predicted_H": 0.8862,
"predicted_HBP": 0.06,
"predicted_HR": 0.1913,
"predicted_OBP": 0.2633,
"predicted_R": 0.4946,
"predicted_RBI": 0.871,
"predicted_SLG": 0.3773,
"predicted_SO": 2.0081
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.203,
"after": 0.2391,
"delta": 0.0361,
"percent_delta": 0.1778,
"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.127,
"after": 4.4609,
"delta": 1.3339,
"percent_delta": 0.4266,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.214,
"delta": -0.018,
"percent_delta": -0.0776,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.228,
"after": 0.3607,
"delta": 0.1327,
"percent_delta": 0.582,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.8862,
"delta": 0.2262,
"percent_delta": 0.3427,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1913,
"delta": 0.0613,
"percent_delta": 0.4715,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.271,
"after": 0.2633,
"delta": -0.0077,
"percent_delta": -0.0284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.348,
"after": 0.4946,
"delta": 0.1466,
"percent_delta": 0.4213,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.871,
"delta": 0.331,
"percent_delta": 0.613,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.384,
"after": 0.3773,
"delta": -0.0067,
"percent_delta": -0.0174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.424,
"after": 2.0081,
"delta": 0.5841,
"percent_delta": 0.4102,
"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.127,
"after": 4.4609,
"delta": 1.3339,
"percent_delta": 0.4266,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.214,
"delta": -0.018,
"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": 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.2391,
"predicted_3B": 0.0004,
"predicted_AB": 4.4609,
"predicted_AVG": 0.202,
"predicted_BB": 0.3615,
"predicted_H": 0.9009,
"predicted_HBP": 0.06,
"predicted_HR": 0.1924,
"predicted_OBP": 0.2618,
"predicted_R": 0.509,
"predicted_RBI": 0.8963,
"predicted_SLG": 0.3852,
"predicted_SO": 2.0039
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2391,
"after": 0.2391,
"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.4609,
"after": 4.4609,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.214,
"after": 0.202,
"delta": -0.012,
"percent_delta": -0.0561,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3607,
"after": 0.3615,
"delta": 0.0008,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8862,
"after": 0.9009,
"delta": 0.0147,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.06,
"after": 0.06,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1913,
"after": 0.1924,
"delta": 0.0011,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2633,
"after": 0.2618,
"delta": -0.0015,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4946,
"after": 0.509,
"delta": 0.0144,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.871,
"after": 0.8963,
"delta": 0.0253,
"percent_delta": 0.029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3773,
"after": 0.3852,
"delta": 0.0079,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0081,
"after": 2.0039,
"delta": -0.0042,
"percent_delta": -0.0021,
"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.3773,
"after": 0.3852,
"delta": 0.0079,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.214,
"after": 0.202,
"delta": -0.012,
"percent_delta": -0.0561,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.46), rates preserved: AVG=0.202 HR/AB=0.043",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2391,
"after": 0.0,
"delta": -0.2391,
"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.4609,
"after": 4.0,
"delta": -0.4609,
"percent_delta": -0.1033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3615,
"after": 0.0,
"delta": -0.3615,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9009,
"after": 1.0,
"delta": 0.0991,
"percent_delta": 0.11,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1924,
"after": 0.0,
"delta": -0.1924,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8963,
"after": 1.0,
"delta": 0.1037,
"percent_delta": 0.1157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0039,
"after": 2.0,
"delta": -0.0039,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.8963,
"after": 1.0,
"delta": 0.1037,
"percent_delta": 0.1157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.4609,
"after": 4.0,
"delta": -0.4609,
"percent_delta": -0.1033,
"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": 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.509,
"after": 1.0,
"delta": 0.491,
"percent_delta": 0.9646,
"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.509,
"after": 1.0,
"delta": 0.491,
"percent_delta": 0.9646,
"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": 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.202,
"after": 0.25,
"delta": 0.048,
"percent_delta": 0.2376,
"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.2618,
"after": 0.25,
"delta": -0.0118,
"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.3852,
"after": 0.25,
"delta": -0.1352,
"percent_delta": -0.351,
"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.202,
"after": 0.25,
"delta": 0.048,
"percent_delta": 0.2376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3852,
"after": 0.25,
"delta": -0.1352,
"percent_delta": -0.351,
"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": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 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_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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.202,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2618,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3852,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.202,
"delta": -0.048,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.2618,
"delta": 0.0118,
"percent_delta": 0.0471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3852,
"delta": 0.1352,
"percent_delta": 0.5406,
"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.3852,
"delta": 0.1352,
"percent_delta": 0.5406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.202,
"delta": -0.048,
"percent_delta": -0.1922,
"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.203,
"after": 1.0,
"delta": 0.797,
"percent_delta": 3.9261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.127,
"after": 3.0,
"delta": -0.127,
"percent_delta": -0.0406,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.202,
"delta": -0.03,
"percent_delta": -0.1293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.228,
"after": 1.0,
"delta": 0.772,
"percent_delta": 3.386,
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.271,
"after": 0.2618,
"delta": -0.0092,
"percent_delta": -0.0339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.348,
"after": 1.0,
"delta": 0.652,
"percent_delta": 1.8736,
"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.384,
"after": 0.3852,
"delta": 0.0012,
"percent_delta": 0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.424,
"after": 0.0,
"delta": -1.424,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.54,
"after": 2.0,
"delta": 1.46,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.424,
"after": 0.0,
"delta": -1.424,
"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.203 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.127 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.228 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.271 | - |
| predicted_R | 0.348 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.384 | - |
| predicted_SO | 1.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.239 | 0.036 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.461 | 1.334 |
| predicted_AVG | 0.214 | -0.018 |
| predicted_BB | 0.361 | 0.133 |
| predicted_H | 0.886 | 0.226 |
| predicted_HBP | 0.060 | - |
| predicted_HR | 0.191 | 0.061 |
| predicted_OBP | 0.263 | -0.008 |
| predicted_R | 0.495 | 0.147 |
| predicted_RBI | 0.871 | 0.331 |
| predicted_SLG | 0.377 | -0.007 |
| predicted_SO | 2.008 | 0.584 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.239 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.461 | 0.000 |
| predicted_AVG | 0.202 | -0.012 |
| predicted_BB | 0.361 | 0.001 |
| predicted_H | 0.901 | 0.015 |
| predicted_HBP | 0.060 | 0.000 |
| predicted_HR | 0.192 | 0.001 |
| predicted_OBP | 0.262 | -0.002 |
| predicted_R | 0.509 | 0.014 |
| predicted_RBI | 0.896 | 0.025 |
| predicted_SLG | 0.385 | 0.008 |
| predicted_SO | 2.004 | -0.004 |
AB rounded to 4 (raw=4.46), rates preserved: AVG=0.202 HR/AB=0.043
| 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 | 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 | 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.239 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.461 |
| predicted_AVG | 0.250 | 0.048 |
| predicted_BB | 0.000 | -0.361 |
| predicted_H | 1.000 | 0.099 |
| predicted_HR | 0.000 | -0.192 |
| predicted_OBP | 0.250 | -0.012 |
| predicted_R | 1.000 | 0.491 |
| predicted_RBI | 1.000 | 0.104 |
| predicted_SLG | 0.250 | -0.135 |
| predicted_SO | 2.000 | -0.004 |
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 | 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 | 1.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 1.000 | 7.000 | 0.0714 | 0.1250 | 0.2857 | 0.0714 | 0.0714 | 0.2143 | 0.0714 | 0.5000 |
| last_10 | 0.20 | 10 | - | 28.000 | 5.000 | 1.000 | 0.000 | 2.000 | 7.000 | 4.000 | 4.000 | 12.000 | 0.1786 | 0.2727 | 0.4286 | 0.1786 | 0.0714 | 0.2500 | 0.1429 | 0.4286 |
| season | 0.60 | 57 | - | 494.000 | 113.000 | 32.000 | 0.000 | 13.000 | 100.000 | 55.000 | 36.000 | 225.000 | 0.2287 | 0.2839 | 0.3725 | 0.2287 | 0.0263 | 0.2024 | 0.0729 | 0.4555 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2860 |
| predicted_3B | 0.0010 |
| predicted_AB | 6.1940 |
| predicted_AVG | 0.1905 |
| predicted_BB | 0.5330 |
| predicted_H | 1.1800 |
| predicted_HBP | 0.0600 |
| predicted_HR | 0.2710 |
| predicted_OBP | 0.2532 |
| predicted_R | 0.6850 |
| predicted_RBI | 1.3010 |
| predicted_SLG | 0.3685 |
| predicted_SO | 2.7670 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2030 | 0.2860 | 0.2391 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.1270 | 6.1940 | 4.4609 | model_form_blend |
| predicted_AVG | 0.2320 | 0.1905 | 0.2140 | model_form_blend |
| predicted_BB | 0.2280 | 0.5330 | 0.3607 | model_form_blend |
| predicted_H | 0.6600 | 1.1800 | 0.8862 | model_form_blend |
| predicted_HBP | - | 0.0600 | 0.0600 | form_only |
| predicted_HR | 0.1300 | 0.2710 | 0.1913 | model_form_blend |
| predicted_OBP | 0.2710 | 0.2532 | 0.2633 | model_form_blend |
| predicted_R | 0.3480 | 0.6850 | 0.4946 | model_form_blend |
| predicted_RBI | 0.5400 | 1.3010 | 0.8710 | model_form_blend |
| predicted_SLG | 0.3840 | 0.3685 | 0.3773 | model_form_blend |
| predicted_SO | 1.4240 | 2.7670 | 2.0081 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 159 |
| Season rows before report date | 159 |
| 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.229 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| 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 | 1 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 683357 |
| playerID | 683357 |
| playerName | Owen Caissie |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 40.7 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.292 |
| sl_xwoba | 0.289 |
| sl_xba | 0.203 |
| sl_xslg | 0.381 |
| sl_sweet_spot_percent | 47.8 |
| sl_barrel_batted_rate | 13.0 |
| sl_hard_hit_percent | 45.7 |
| sl_exit_velocity_avg | 91.5 |
| sl_launch_angle_avg | 15.8 |
| sl_whiff_percent | 35.3 |
| sl_swing_percent | 46.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.318 | 0.000 | 0.000 | Hitting_2B | 0.304 | 0.000 | -0.304 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.434 | 4.000 | 5.000 | Hitting_AB | 3.281 | 4.000 | 0.719 | 0.000 |
| predicted_AVG | 0.267 | 0.500 | 0.200 | Hitting_AVG | 0.287 | 0.250 | 0.213 | 0.250 |
| predicted_BB | 0.194 | 0.000 | 0.000 | Hitting_BB | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_H | 0.800 | 2.000 | 1.000 | Hitting_H | 0.941 | 1.000 | 1.059 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_OBP | 0.314 | 0.500 | 0.200 | Hitting_OBP | 0.328 | 0.250 | 0.172 | 0.250 |
| predicted_R | 0.248 | 0.000 | 0.000 | Hitting_R | 0.237 | 1.000 | -0.237 | -1.000 |
| predicted_RBI | 0.490 | 0.000 | 1.000 | Hitting_RBI | 0.615 | 0.000 | -0.615 | 0.000 |
| predicted_SLG | 0.399 | 0.500 | 0.200 | Hitting_SLG | 0.413 | 0.250 | 0.087 | 0.250 |
| predicted_SO | 0.426 | 1.000 | 1.000 | Hitting_SO | 0.407 | 0.000 | 0.593 | 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.8000 -> 2.0000 (boost 1.2000, better) |
| Biggest Deboost | predicted_RBI: 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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.4340 -> 4.9539 (boost 1.5199, 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.4146 -> 0.4278 (boost 0.0132, better) | predicted_OBP: 0.3203 -> 0.3106 (deboost -0.0097, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 1 | 5 | predicted_SO: 0.6917 -> 1.0000 (boost 0.3083, worse) | predicted_H: 1.3746 -> 1.0000 (deboost -0.3746, worse) | AB rounded to 5 (raw=4.95), rates preserved: AVG=0.277 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4270 -> 0.0000 (deboost -0.4270, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4278 -> 0.2000 (deboost -0.2278, 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_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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4278 (boost 0.2278, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691594",
"player_name": "Javier Sanoja",
"position": "3B",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.318,
"predicted_3B": 0.0,
"predicted_AB": 3.434,
"predicted_AVG": 0.267,
"predicted_BB": 0.194,
"predicted_H": 0.8,
"predicted_HR": 0.09,
"predicted_OBP": 0.314,
"predicted_R": 0.248,
"predicted_RBI": 0.49,
"predicted_SLG": 0.399,
"predicted_SO": 0.426
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local 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.0009,
"predicted_AB": 4.9539,
"predicted_AVG": 0.2808,
"predicted_BB": 0.2372,
"predicted_H": 1.3522,
"predicted_HBP": 0.004,
"predicted_HR": 0.1315,
"predicted_OBP": 0.3203,
"predicted_R": 0.4149,
"predicted_RBI": 0.8407,
"predicted_SLG": 0.4146,
"predicted_SO": 0.6932
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.318,
"after": 0.3461,
"delta": 0.0281,
"percent_delta": 0.0884,
"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.434,
"after": 4.9539,
"delta": 1.5199,
"percent_delta": 0.4426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2808,
"delta": 0.0138,
"percent_delta": 0.0517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.194,
"after": 0.2372,
"delta": 0.0432,
"percent_delta": 0.2227,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 1.3522,
"delta": 0.5522,
"percent_delta": 0.6903,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1315,
"delta": 0.0415,
"percent_delta": 0.4611,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3203,
"delta": 0.0063,
"percent_delta": 0.0201,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.248,
"after": 0.4149,
"delta": 0.1669,
"percent_delta": 0.673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.8407,
"delta": 0.3507,
"percent_delta": 0.7157,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4146,
"delta": 0.0156,
"percent_delta": 0.0391,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.426,
"after": 0.6932,
"delta": 0.2672,
"percent_delta": 0.6272,
"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.434,
"after": 4.9539,
"delta": 1.5199,
"percent_delta": 0.4426,
"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.3461,
"predicted_3B": 0.0009,
"predicted_AB": 4.9539,
"predicted_AVG": 0.2775,
"predicted_BB": 0.2377,
"predicted_H": 1.3746,
"predicted_HBP": 0.004,
"predicted_HR": 0.1323,
"predicted_OBP": 0.3106,
"predicted_R": 0.427,
"predicted_RBI": 0.8652,
"predicted_SLG": 0.4278,
"predicted_SO": 0.6917
},
"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.0009,
"after": 0.0009,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9539,
"after": 4.9539,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2808,
"after": 0.2775,
"delta": -0.0033,
"percent_delta": -0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2372,
"after": 0.2377,
"delta": 0.0005,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3522,
"after": 1.3746,
"delta": 0.0224,
"percent_delta": 0.0166,
"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.1315,
"after": 0.1323,
"delta": 0.0008,
"percent_delta": 0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3203,
"after": 0.3106,
"delta": -0.0097,
"percent_delta": -0.0303,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4149,
"after": 0.427,
"delta": 0.0121,
"percent_delta": 0.0292,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8407,
"after": 0.8652,
"delta": 0.0245,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4146,
"after": 0.4278,
"delta": 0.0132,
"percent_delta": 0.0318,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6932,
"after": 0.6917,
"delta": -0.0015,
"percent_delta": -0.0022,
"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.4146,
"after": 0.4278,
"delta": 0.0132,
"percent_delta": 0.0318,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3203,
"after": 0.3106,
"delta": -0.0097,
"percent_delta": -0.0303,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.95), rates preserved: AVG=0.277 HR/AB=0.027",
"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.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9539,
"after": 5.0,
"delta": 0.0461,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2377,
"after": 0.0,
"delta": -0.2377,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3746,
"after": 1.0,
"delta": -0.3746,
"percent_delta": -0.2725,
"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.1323,
"after": 0.0,
"delta": -0.1323,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8652,
"after": 1.0,
"delta": 0.1348,
"percent_delta": 0.1558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6917,
"after": 1.0,
"delta": 0.3083,
"percent_delta": 0.4457,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.6917,
"after": 1.0,
"delta": 0.3083,
"percent_delta": 0.4457,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3746,
"after": 1.0,
"delta": -0.3746,
"percent_delta": -0.2725,
"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.427,
"after": 0.0,
"delta": -0.427,
"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.427,
"after": 0.0,
"delta": -0.427,
"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.2775,
"after": 0.2,
"delta": -0.0775,
"percent_delta": -0.2793,
"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.3106,
"after": 0.2,
"delta": -0.1106,
"percent_delta": -0.3561,
"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.4278,
"after": 0.2,
"delta": -0.2278,
"percent_delta": -0.5325,
"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.4278,
"after": 0.2,
"delta": -0.2278,
"percent_delta": -0.5325,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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_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": 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.2775,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3106,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4278,
"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.2,
"after": 0.2775,
"delta": 0.0775,
"percent_delta": 0.3874,
"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.3106,
"delta": 0.1106,
"percent_delta": 0.5528,
"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.4278,
"delta": 0.2278,
"percent_delta": 1.1391,
"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.4278,
"delta": 0.2278,
"percent_delta": 1.1391,
"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.318,
"after": 0.0,
"delta": -0.318,
"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.434,
"after": 4.0,
"delta": 0.566,
"percent_delta": 0.1648,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2775,
"delta": 0.0105,
"percent_delta": 0.0393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3106,
"delta": -0.0034,
"percent_delta": -0.0108,
"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.49,
"after": 0.0,
"delta": -0.49,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4278,
"delta": 0.0288,
"percent_delta": 0.0722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.426,
"after": 1.0,
"delta": 0.574,
"percent_delta": 1.3474,
"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.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"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.318 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.434 | - |
| predicted_AVG | 0.267 | - |
| predicted_BB | 0.194 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.248 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.399 | - |
| predicted_SO | 0.426 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.028 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.954 | 1.520 |
| predicted_AVG | 0.281 | 0.014 |
| predicted_BB | 0.237 | 0.043 |
| predicted_H | 1.352 | 0.552 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.132 | 0.042 |
| predicted_OBP | 0.320 | 0.006 |
| predicted_R | 0.415 | 0.167 |
| predicted_RBI | 0.841 | 0.351 |
| predicted_SLG | 0.415 | 0.016 |
| predicted_SO | 0.693 | 0.267 |
Step 3: 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.001 | 0.000 |
| predicted_AB | 4.954 | 0.000 |
| predicted_AVG | 0.278 | -0.003 |
| predicted_BB | 0.238 | 0.001 |
| predicted_H | 1.375 | 0.022 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.132 | 0.001 |
| predicted_OBP | 0.311 | -0.010 |
| predicted_R | 0.427 | 0.012 |
| predicted_RBI | 0.865 | 0.024 |
| predicted_SLG | 0.428 | 0.013 |
| predicted_SO | 0.692 | -0.002 |
AB rounded to 5 (raw=4.95), rates preserved: AVG=0.277 HR/AB=0.027
| 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.346 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.046 |
| predicted_AVG | 0.200 | -0.078 |
| predicted_BB | 0.000 | -0.238 |
| predicted_H | 1.000 | -0.375 |
| predicted_HR | 0.000 | -0.132 |
| predicted_OBP | 0.200 | -0.111 |
| predicted_R | 0.000 | -0.427 |
| predicted_RBI | 1.000 | 0.135 |
| predicted_SLG | 0.200 | -0.228 |
| predicted_SO | 1.000 | 0.308 |
Attached 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 | 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 | 1.000 | 4.000 | 2.000 | 0.000 | 3.000 | 0.4000 | 0.4000 | 0.6000 | 0.4000 | 0.0667 | 0.2667 | 0.0000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 32.000 | 8.000 | 0.000 | 0.000 | 1.000 | 4.000 | 3.000 | 1.000 | 5.000 | 0.2500 | 0.2727 | 0.3438 | 0.2500 | 0.0312 | 0.1250 | 0.0312 | 0.1562 |
| season | 0.60 | 45 | - | 443.000 | 127.000 | 41.000 | 0.000 | 5.000 | 83.000 | 32.000 | 25.000 | 55.000 | 0.2867 | 0.3248 | 0.4131 | 0.2867 | 0.0113 | 0.1874 | 0.0564 | 0.1241 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3830 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.9490 |
| predicted_AVG | 0.2989 |
| predicted_BB | 0.2940 |
| predicted_H | 2.0770 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1860 |
| predicted_OBP | 0.3285 |
| predicted_R | 0.6340 |
| predicted_RBI | 1.3010 |
| predicted_SLG | 0.4350 |
| predicted_SO | 1.0440 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3180 | 0.3830 | 0.3461 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.4340 | 6.9490 | 4.9539 | model_form_blend |
| predicted_AVG | 0.2670 | 0.2989 | 0.2808 | model_form_blend |
| predicted_BB | 0.1940 | 0.2940 | 0.2372 | model_form_blend |
| predicted_H | 0.8000 | 2.0770 | 1.3522 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0900 | 0.1860 | 0.1315 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3285 | 0.3203 | model_form_blend |
| predicted_R | 0.2480 | 0.6340 | 0.4149 | model_form_blend |
| predicted_RBI | 0.4900 | 1.3010 | 0.8407 | model_form_blend |
| predicted_SLG | 0.3990 | 0.4350 | 0.4146 | model_form_blend |
| predicted_SO | 0.4260 | 1.0440 | 0.6932 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 135 |
| Season rows before report date | 135 |
| Report year | 2026 |
| Profile rows used | 129 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 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.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 691594 |
| playerID | 691594 |
| playerName | Javier Sanoja |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 11.7 |
| sl_bb_percent | 6.5 |
| sl_woba | 0.308 |
| sl_xwoba | 0.262 |
| sl_xba | 0.233 |
| sl_xslg | 0.3 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 1.6 |
| sl_hard_hit_percent | 31.0 |
| sl_exit_velocity_avg | 87.3 |
| sl_launch_angle_avg | 10.6 |
| sl_whiff_percent | 13.1 |
| sl_swing_percent | 51.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.105 | 0.000 | 0.000 | Hitting_2B | 0.105 | 1.000 | -0.105 | -1.000 |
| predicted_3B | 0.057 | 0.000 | 0.000 | Hitting_3B | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_AB | 3.672 | 4.000 | 6.000 | Hitting_AB | 3.657 | 3.000 | 0.343 | 1.000 |
| predicted_AVG | 0.240 | 0.500 | 0.167 | Hitting_AVG | 0.195 | 0.333 | 0.305 | 0.167 |
| predicted_BB | 0.628 | 0.000 | 1.000 | Hitting_BB | 0.625 | 1.000 | -0.625 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.129 | 0.000 | -0.129 | 0.000 |
| predicted_H | 0.820 | 2.000 | 1.000 | Hitting_H | 0.714 | 1.000 | 1.286 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_OBP | 0.363 | 0.500 | 0.286 | Hitting_OBP | 0.329 | 0.500 | 0.171 | 0.000 |
| predicted_R | 0.619 | 1.000 | 1.000 | Hitting_R | 0.617 | 0.000 | 0.383 | 1.000 |
| predicted_RBI | 0.280 | 1.000 | 0.000 | Hitting_RBI | 0.258 | 0.000 | 0.742 | 1.000 |
| predicted_SLG | 0.354 | 0.500 | 0.167 | Hitting_SLG | 0.298 | 0.667 | 0.202 | -0.167 |
| predicted_SO | 1.000 | 0.000 | 2.000 | Hitting_SO | 0.996 | 0.000 | -0.996 | 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.8200 -> 2.0000 (boost 1.1800, 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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 3.6720 -> 6.1708 (boost 2.4988, better) | predicted_SLG: 0.3540 -> 0.3456 (deboost -0.0084, 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.3456 -> 0.3379 (deboost -0.0077, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 1 | 8 | 0 | 9 | predicted_SO: 1.5494 -> 2.0000 (boost 0.4506, worse) | predicted_H: 1.4530 -> 1.0000 (deboost -0.4530, worse) | AB rounded to 6 (raw=6.17), rates preserved: AVG=0.235 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0588 -> 1.0000 (deboost -0.0588, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3379 -> 0.1670 (deboost -0.1709, 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_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 | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3379 (boost 0.1709, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805300",
"player_name": "Jakob Marsee",
"position": "CF",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.105,
"predicted_3B": 0.057,
"predicted_AB": 3.672,
"predicted_AVG": 0.24,
"predicted_BB": 0.628,
"predicted_H": 0.82,
"predicted_HR": 0.06,
"predicted_OBP": 0.363,
"predicted_R": 0.619,
"predicted_RBI": 0.28,
"predicted_SLG": 0.354,
"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.2775,
"predicted_3B": 0.0694,
"predicted_AB": 6.1708,
"predicted_AVG": 0.2381,
"predicted_BB": 1.3527,
"predicted_H": 1.4293,
"predicted_HBP": 0.229,
"predicted_HR": 0.0715,
"predicted_OBP": 0.3743,
"predicted_R": 1.0289,
"predicted_RBI": 0.3662,
"predicted_SLG": 0.3456,
"predicted_SO": 1.5527
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.105,
"after": 0.2775,
"delta": 0.1725,
"percent_delta": 1.6429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.057,
"after": 0.0694,
"delta": 0.0124,
"percent_delta": 0.2175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.672,
"after": 6.1708,
"delta": 2.4988,
"percent_delta": 0.6805,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2381,
"delta": -0.0019,
"percent_delta": -0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.628,
"after": 1.3527,
"delta": 0.7247,
"percent_delta": 1.154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 1.4293,
"delta": 0.6093,
"percent_delta": 0.743,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0715,
"delta": 0.0115,
"percent_delta": 0.1917,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.363,
"after": 0.3743,
"delta": 0.0113,
"percent_delta": 0.0311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.619,
"after": 1.0289,
"delta": 0.4099,
"percent_delta": 0.6622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.3662,
"delta": 0.0862,
"percent_delta": 0.3079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.3456,
"delta": -0.0084,
"percent_delta": -0.0237,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.5527,
"delta": 0.5527,
"percent_delta": 0.5527,
"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": 3.672,
"after": 6.1708,
"delta": 2.4988,
"percent_delta": 0.6805,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.3456,
"delta": -0.0084,
"percent_delta": -0.0237,
"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.2775,
"predicted_3B": 0.0694,
"predicted_AB": 6.1708,
"predicted_AVG": 0.2355,
"predicted_BB": 1.3555,
"predicted_H": 1.453,
"predicted_HBP": 0.229,
"predicted_HR": 0.0719,
"predicted_OBP": 0.3732,
"predicted_R": 1.0588,
"predicted_RBI": 0.3769,
"predicted_SLG": 0.3379,
"predicted_SO": 1.5494
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2775,
"after": 0.2775,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0694,
"after": 0.0694,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.1708,
"after": 6.1708,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2381,
"after": 0.2355,
"delta": -0.0026,
"percent_delta": -0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.3527,
"after": 1.3555,
"delta": 0.0028,
"percent_delta": 0.0021,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4293,
"after": 1.453,
"delta": 0.0237,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.229,
"after": 0.229,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0715,
"after": 0.0719,
"delta": 0.0004,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3743,
"after": 0.3732,
"delta": -0.0011,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0289,
"after": 1.0588,
"delta": 0.0299,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3662,
"after": 0.3769,
"delta": 0.0107,
"percent_delta": 0.0292,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3456,
"after": 0.3379,
"delta": -0.0077,
"percent_delta": -0.0223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5527,
"after": 1.5494,
"delta": -0.0033,
"percent_delta": -0.0021,
"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.3456,
"after": 0.3379,
"delta": -0.0077,
"percent_delta": -0.0223,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.17), rates preserved: AVG=0.235 HR/AB=0.012",
"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.2775,
"after": 0.0,
"delta": -0.2775,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0694,
"after": 0.0,
"delta": -0.0694,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.1708,
"after": 6.0,
"delta": -0.1708,
"percent_delta": -0.0277,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.3555,
"after": 1.0,
"delta": -0.3555,
"percent_delta": -0.2623,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.453,
"after": 1.0,
"delta": -0.453,
"percent_delta": -0.3118,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.229,
"after": 0.0,
"delta": -0.229,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0719,
"after": 0.0,
"delta": -0.0719,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3769,
"after": 0.0,
"delta": -0.3769,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5494,
"after": 2.0,
"delta": 0.4506,
"percent_delta": 0.2908,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 0,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.5494,
"after": 2.0,
"delta": 0.4506,
"percent_delta": 0.2908,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.453,
"after": 1.0,
"delta": -0.453,
"percent_delta": -0.3118,
"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": 1.0588,
"after": 1.0,
"delta": -0.0588,
"percent_delta": -0.0555,
"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": 1.0588,
"after": 1.0,
"delta": -0.0588,
"percent_delta": -0.0555,
"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": 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.2355,
"after": 0.167,
"delta": -0.0685,
"percent_delta": -0.2909,
"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.3732,
"after": 0.286,
"delta": -0.0872,
"percent_delta": -0.2337,
"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.3379,
"after": 0.167,
"delta": -0.1709,
"percent_delta": -0.5058,
"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.3379,
"after": 0.167,
"delta": -0.1709,
"percent_delta": -0.5058,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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_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.2355,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3732,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3379,
"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.167,
"after": 0.2355,
"delta": 0.0685,
"percent_delta": 0.41,
"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.3732,
"delta": 0.0872,
"percent_delta": 0.3048,
"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.3379,
"delta": 0.1709,
"percent_delta": 1.0234,
"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.3379,
"delta": 0.1709,
"percent_delta": 1.0234,
"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.105,
"after": 0.0,
"delta": -0.105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.057,
"after": 0.0,
"delta": -0.057,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.672,
"after": 4.0,
"delta": 0.328,
"percent_delta": 0.0893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2355,
"delta": -0.0045,
"percent_delta": -0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.628,
"after": 0.0,
"delta": -0.628,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 2.0,
"delta": 1.18,
"percent_delta": 1.439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.363,
"after": 0.3732,
"delta": 0.0102,
"percent_delta": 0.0281,
"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.28,
"after": 1.0,
"delta": 0.72,
"percent_delta": 2.5714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.354,
"after": 0.3379,
"delta": -0.0161,
"percent_delta": -0.0455,
"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": "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.82,
"after": 2.0,
"delta": 1.18,
"percent_delta": 1.439,
"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.105 | - |
| predicted_3B | 0.057 | - |
| predicted_AB | 3.672 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.628 | - |
| predicted_H | 0.820 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.363 | - |
| predicted_R | 0.619 | - |
| predicted_RBI | 0.280 | - |
| predicted_SLG | 0.354 | - |
| 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.278 | 0.173 |
| predicted_3B | 0.069 | 0.012 |
| predicted_AB | 6.171 | 2.499 |
| predicted_AVG | 0.238 | -0.002 |
| predicted_BB | 1.353 | 0.725 |
| predicted_H | 1.429 | 0.609 |
| predicted_HBP | 0.229 | - |
| predicted_HR | 0.071 | 0.011 |
| predicted_OBP | 0.374 | 0.011 |
| predicted_R | 1.029 | 0.410 |
| predicted_RBI | 0.366 | 0.086 |
| predicted_SLG | 0.346 | -0.008 |
| predicted_SO | 1.553 | 0.553 |
Step 3: 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.069 | 0.000 |
| predicted_AB | 6.171 | 0.000 |
| predicted_AVG | 0.235 | -0.003 |
| predicted_BB | 1.355 | 0.003 |
| predicted_H | 1.453 | 0.024 |
| predicted_HBP | 0.229 | 0.000 |
| predicted_HR | 0.072 | 0.000 |
| predicted_OBP | 0.373 | -0.001 |
| predicted_R | 1.059 | 0.030 |
| predicted_RBI | 0.377 | 0.011 |
| predicted_SLG | 0.338 | -0.008 |
| predicted_SO | 1.549 | -0.003 |
AB rounded to 6 (raw=6.17), rates preserved: AVG=0.235 HR/AB=0.012
| 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.278 |
| predicted_3B | 0.000 | -0.069 |
| predicted_AB | 6.000 | -0.171 |
| predicted_AVG | 0.167 | -0.068 |
| predicted_BB | 1.000 | -0.355 |
| predicted_H | 1.000 | -0.453 |
| predicted_HR | 0.000 | -0.072 |
| predicted_OBP | 0.286 | -0.087 |
| predicted_R | 1.000 | -0.059 |
| predicted_RBI | 0.000 | -0.377 |
| predicted_SLG | 0.167 | -0.171 |
| predicted_SO | 2.000 | 0.451 |
Attached 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 | 0.000 |
| RBI | 1.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 | - | 12.000 | 4.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 6.000 | 2.000 | 0.3333 | 0.5556 | 0.4167 | 0.3333 | 0.0000 | 0.0000 | 0.5000 | 0.1667 |
| last_10 | 0.20 | 10 | - | 31.000 | 8.000 | 3.000 | 0.000 | 0.000 | 1.000 | 5.000 | 7.000 | 7.000 | 0.2581 | 0.4103 | 0.3548 | 0.2581 | 0.0000 | 0.0323 | 0.2258 | 0.2258 |
| season | 0.60 | 65 | - | 907.000 | 177.000 | 26.000 | 14.000 | 13.000 | 64.000 | 153.000 | 155.000 | 247.000 | 0.1951 | 0.3291 | 0.2977 | 0.1951 | 0.0143 | 0.0706 | 0.1709 | 0.2723 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4950 |
| predicted_3B | 0.0850 |
| predicted_AB | 9.3230 |
| predicted_AVG | 0.2357 |
| predicted_BB | 2.2670 |
| predicted_H | 2.1980 |
| predicted_HBP | 0.2290 |
| predicted_HR | 0.0860 |
| predicted_OBP | 0.3886 |
| predicted_R | 1.5460 |
| predicted_RBI | 0.4750 |
| predicted_SLG | 0.3349 |
| predicted_SO | 2.2500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1050 | 0.4950 | 0.2775 | model_form_blend |
| predicted_3B | 0.0570 | 0.0850 | 0.0694 | model_form_blend |
| predicted_AB | 3.6720 | 9.3230 | 6.1708 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2357 | 0.2381 | model_form_blend |
| predicted_BB | 0.6280 | 2.2670 | 1.3527 | model_form_blend |
| predicted_H | 0.8200 | 2.1980 | 1.4293 | model_form_blend |
| predicted_HBP | - | 0.2290 | 0.2290 | form_only |
| predicted_HR | 0.0600 | 0.0860 | 0.0715 | model_form_blend |
| predicted_OBP | 0.3630 | 0.3886 | 0.3743 | model_form_blend |
| predicted_R | 0.6190 | 1.5460 | 1.0289 | model_form_blend |
| predicted_RBI | 0.2800 | 0.4750 | 0.3662 | model_form_blend |
| predicted_SLG | 0.3540 | 0.3349 | 0.3456 | model_form_blend |
| predicted_SO | 1.0000 | 2.2500 | 1.5527 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.195 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 2 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 805300 |
| playerID | 805300 |
| playerName | Jakob Marsee |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.3 |
| sl_bb_percent | 13.9 |
| sl_woba | 0.299 |
| sl_xwoba | 0.308 |
| sl_xba | 0.22 |
| sl_xslg | 0.311 |
| sl_sweet_spot_percent | 28.6 |
| sl_barrel_batted_rate | 3.6 |
| sl_hard_hit_percent | 35.7 |
| sl_exit_velocity_avg | 86.8 |
| sl_launch_angle_avg | 19.1 |
| sl_whiff_percent | 19.1 |
| sl_swing_percent | 39.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.143 | 1.000 | 0.000 | Hitting_2B | 0.143 | 0.000 | 0.857 | 1.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 | 4.000 | Hitting_AB | 3.286 | 4.000 | 0.714 | 0.000 |
| predicted_AVG | 0.264 | 0.750 | 0.250 | Hitting_AVG | 0.226 | 1.000 | 0.524 | -0.250 |
| predicted_BB | 0.200 | 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.770 | 3.000 | 1.000 | Hitting_H | 0.743 | 4.000 | 2.257 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.014 | 0.000 | -0.014 | 0.000 |
| predicted_OBP | 0.320 | 0.750 | 0.250 | Hitting_OBP | 0.270 | 1.000 | 0.480 | -0.250 |
| predicted_R | 0.386 | 1.000 | 1.000 | Hitting_R | 0.386 | 3.000 | 0.614 | -2.000 |
| predicted_RBI | 0.460 | 1.000 | 1.000 | Hitting_RBI | 0.443 | 0.000 | 0.557 | 1.000 |
| predicted_SLG | 0.386 | 1.000 | 0.250 | Hitting_SLG | 0.283 | 1.000 | 0.717 | 0.000 |
| predicted_SO | 1.171 | 1.000 | 1.000 | Hitting_SO | 1.171 | 0.000 | -0.171 | 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_H: 0.7700 -> 3.0000 (boost 2.2300, better) |
| Biggest Deboost | predicted_BB: 0.2000 -> 0.0000 (deboost -0.2000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 7 | 1 | 6 | 2 | predicted_AB: 3.2860 -> 4.4229 (boost 1.1369, better) | predicted_SLG: 0.3860 -> 0.3731 (deboost -0.0129, 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.3731 -> 0.3541 (deboost -0.0190, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_RBI: 0.7044 -> 1.0000 (boost 0.2956, better) | predicted_SO: 1.4443 -> 1.0000 (deboost -0.4443, better) | AB rounded to 4 (raw=4.42), rates preserved: AVG=0.262 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5805 -> 1.0000 (boost 0.4195, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3541 -> 0.2500 (deboost -0.1041, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_H: 1.0000 -> 3.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.3541 (boost 0.1041, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691788",
"player_name": "Joe Mack",
"position": "C",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.143,
"predicted_3B": 0.0,
"predicted_AB": 3.286,
"predicted_AVG": 0.264,
"predicted_BB": 0.2,
"predicted_H": 0.77,
"predicted_HR": 0.07,
"predicted_OBP": 0.32,
"predicted_R": 0.386,
"predicted_RBI": 0.46,
"predicted_SLG": 0.386,
"predicted_SO": 1.171
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1948,
"predicted_3B": 0.0013,
"predicted_AB": 4.4229,
"predicted_AVG": 0.2688,
"predicted_BB": 0.2589,
"predicted_H": 1.1399,
"predicted_HBP": 0.006,
"predicted_HR": 0.0696,
"predicted_OBP": 0.3182,
"predicted_R": 0.5641,
"predicted_RBI": 0.6845,
"predicted_SLG": 0.3731,
"predicted_SO": 1.4473
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.143,
"after": 0.1948,
"delta": 0.0518,
"percent_delta": 0.3622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0013,
"delta": 0.0013,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.286,
"after": 4.4229,
"delta": 1.1369,
"percent_delta": 0.346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2688,
"delta": 0.0048,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.2589,
"delta": 0.0589,
"percent_delta": 0.2945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.1399,
"delta": 0.3699,
"percent_delta": 0.4804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0696,
"delta": -0.0004,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3182,
"delta": -0.0018,
"percent_delta": -0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.386,
"after": 0.5641,
"delta": 0.1781,
"percent_delta": 0.4614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.6845,
"delta": 0.2245,
"percent_delta": 0.488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.3731,
"delta": -0.0129,
"percent_delta": -0.0334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.171,
"after": 1.4473,
"delta": 0.2763,
"percent_delta": 0.236,
"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.286,
"after": 4.4229,
"delta": 1.1369,
"percent_delta": 0.346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.3731,
"delta": -0.0129,
"percent_delta": -0.0334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 28
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1948,
"predicted_3B": 0.0013,
"predicted_AB": 4.4229,
"predicted_AVG": 0.262,
"predicted_BB": 0.2594,
"predicted_H": 1.1588,
"predicted_HBP": 0.006,
"predicted_HR": 0.07,
"predicted_OBP": 0.3029,
"predicted_R": 0.5805,
"predicted_RBI": 0.7044,
"predicted_SLG": 0.3541,
"predicted_SO": 1.4443
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1948,
"after": 0.1948,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0013,
"after": 0.0013,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4229,
"after": 4.4229,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2688,
"after": 0.262,
"delta": -0.0068,
"percent_delta": -0.0253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2589,
"after": 0.2594,
"delta": 0.0005,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1399,
"after": 1.1588,
"delta": 0.0189,
"percent_delta": 0.0166,
"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.0696,
"after": 0.07,
"delta": 0.0004,
"percent_delta": 0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3182,
"after": 0.3029,
"delta": -0.0153,
"percent_delta": -0.0481,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5641,
"after": 0.5805,
"delta": 0.0164,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6845,
"after": 0.7044,
"delta": 0.0199,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3731,
"after": 0.3541,
"delta": -0.019,
"percent_delta": -0.0509,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4473,
"after": 1.4443,
"delta": -0.003,
"percent_delta": -0.0021,
"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.3731,
"after": 0.3541,
"delta": -0.019,
"percent_delta": -0.0509,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.42), rates preserved: AVG=0.262 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": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1948,
"after": 0.0,
"delta": -0.1948,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0013,
"after": 0.0,
"delta": -0.0013,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.4229,
"after": 4.0,
"delta": -0.4229,
"percent_delta": -0.0956,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2594,
"after": 0.0,
"delta": -0.2594,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1588,
"after": 1.0,
"delta": -0.1588,
"percent_delta": -0.137,
"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.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7044,
"after": 1.0,
"delta": 0.2956,
"percent_delta": 0.4196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4443,
"after": 1.0,
"delta": -0.4443,
"percent_delta": -0.3076,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.7044,
"after": 1.0,
"delta": 0.2956,
"percent_delta": 0.4196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4443,
"after": 1.0,
"delta": -0.4443,
"percent_delta": -0.3076,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.5805,
"after": 1.0,
"delta": 0.4195,
"percent_delta": 0.7227,
"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.5805,
"after": 1.0,
"delta": 0.4195,
"percent_delta": 0.7227,
"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.262,
"after": 0.25,
"delta": -0.012,
"percent_delta": -0.0458,
"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.3029,
"after": 0.25,
"delta": -0.0529,
"percent_delta": -0.1746,
"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.3541,
"after": 0.25,
"delta": -0.1041,
"percent_delta": -0.294,
"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.3541,
"after": 0.25,
"delta": -0.1041,
"percent_delta": -0.294,
"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": 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 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": 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": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.262,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3029,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3541,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.262,
"delta": 0.012,
"percent_delta": 0.048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3029,
"delta": 0.0529,
"percent_delta": 0.2116,
"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.3541,
"delta": 0.1041,
"percent_delta": 0.4165,
"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.3541,
"delta": 0.1041,
"percent_delta": 0.4165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.143,
"after": 1.0,
"delta": 0.857,
"percent_delta": 5.993,
"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.286,
"after": 4.0,
"delta": 0.714,
"percent_delta": 0.2173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.262,
"delta": -0.002,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 3.0,
"delta": 2.23,
"percent_delta": 2.8961,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3029,
"delta": -0.0171,
"percent_delta": -0.0534,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.386,
"after": 1.0,
"delta": 0.614,
"percent_delta": 1.5907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 1.0,
"delta": 0.54,
"percent_delta": 1.1739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.386,
"after": 0.3541,
"delta": -0.0319,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.171,
"after": 1.0,
"delta": -0.171,
"percent_delta": -0.146,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.77,
"after": 3.0,
"delta": 2.23,
"percent_delta": 2.8961,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.143 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.286 | - |
| predicted_AVG | 0.264 | - |
| predicted_BB | 0.200 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.320 | - |
| predicted_R | 0.386 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.386 | - |
| predicted_SO | 1.171 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.195 | 0.052 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.423 | 1.137 |
| predicted_AVG | 0.269 | 0.005 |
| predicted_BB | 0.259 | 0.059 |
| predicted_H | 1.140 | 0.370 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.070 | -0.000 |
| predicted_OBP | 0.318 | -0.002 |
| predicted_R | 0.564 | 0.178 |
| predicted_RBI | 0.684 | 0.224 |
| predicted_SLG | 0.373 | -0.013 |
| predicted_SO | 1.447 | 0.276 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.195 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.423 | 0.000 |
| predicted_AVG | 0.262 | -0.007 |
| predicted_BB | 0.259 | 0.001 |
| predicted_H | 1.159 | 0.019 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.070 | 0.000 |
| predicted_OBP | 0.303 | -0.015 |
| predicted_R | 0.581 | 0.016 |
| predicted_RBI | 0.704 | 0.020 |
| predicted_SLG | 0.354 | -0.019 |
| predicted_SO | 1.444 | -0.003 |
AB rounded to 4 (raw=4.42), rates preserved: AVG=0.262 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 | 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.195 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.423 |
| predicted_AVG | 0.250 | -0.012 |
| predicted_BB | 0.000 | -0.259 |
| predicted_H | 1.000 | -0.159 |
| predicted_HR | 0.000 | -0.070 |
| predicted_OBP | 0.250 | -0.053 |
| predicted_R | 1.000 | 0.419 |
| predicted_RBI | 1.000 | 0.296 |
| predicted_SLG | 0.250 | -0.104 |
| predicted_SO | 1.000 | -0.444 |
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 | 3.000 | 2.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 | 7.000 | 1.000 | 0.000 | 0.000 | 4.000 | 3.000 | 1.000 | 4.000 | 0.4118 | 0.4444 | 0.4706 | 0.4118 | 0.0000 | 0.2353 | 0.0588 | 0.2353 |
| last_10 | 0.20 | 10 | - | 33.000 | 10.000 | 1.000 | 0.000 | 1.000 | 7.000 | 5.000 | 1.000 | 9.000 | 0.3030 | 0.3235 | 0.4242 | 0.3030 | 0.0303 | 0.2121 | 0.0303 | 0.2727 |
| season | 0.60 | 28 | - | 230.000 | 52.000 | 10.000 | 0.000 | 1.000 | 31.000 | 27.000 | 14.000 | 82.000 | 0.2261 | 0.2705 | 0.2826 | 0.2261 | 0.0043 | 0.1348 | 0.0609 | 0.3565 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2670 |
| predicted_3B | 0.0030 |
| predicted_AB | 6.0060 |
| predicted_AVG | 0.2755 |
| predicted_BB | 0.3410 |
| predicted_H | 1.6550 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0690 |
| predicted_OBP | 0.3156 |
| predicted_R | 0.8120 |
| predicted_RBI | 0.9970 |
| predicted_SLG | 0.3551 |
| predicted_SO | 1.8320 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1430 | 0.2670 | 0.1948 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0013 | model_form_blend |
| predicted_AB | 3.2860 | 6.0060 | 4.4229 | model_form_blend |
| predicted_AVG | 0.2640 | 0.2755 | 0.2688 | model_form_blend |
| predicted_BB | 0.2000 | 0.3410 | 0.2589 | model_form_blend |
| predicted_H | 0.7700 | 1.6550 | 1.1399 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0700 | 0.0690 | 0.0696 | model_form_blend |
| predicted_OBP | 0.3200 | 0.3156 | 0.3182 | model_form_blend |
| predicted_R | 0.3860 | 0.8120 | 0.5641 | model_form_blend |
| predicted_RBI | 0.4600 | 0.9970 | 0.6845 | model_form_blend |
| predicted_SLG | 0.3860 | 0.3551 | 0.3731 | model_form_blend |
| predicted_SO | 1.1710 | 1.8320 | 1.4473 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 70 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 3 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 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 | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 4 |
| 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 | 4 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260609_ARI@MIA |
| game_type | full |
| mlbID | 691788 |
| playerID | 691788 |
| playerName | Joe Mack |
| pos | C |
| started | True |
| startingPosition | C |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-09 |
| sl_k_percent | 29.8 |
| sl_bb_percent | 5.3 |
| sl_woba | 0.281 |
| sl_xwoba | 0.282 |
| sl_xba | 0.237 |
| sl_xslg | 0.365 |
| sl_sweet_spot_percent | 32.8 |
| sl_barrel_batted_rate | 6.6 |
| sl_hard_hit_percent | 37.7 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 9.9 |
| sl_whiff_percent | 23.8 |
| 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.188 | 0.000 | 0.000 | Hitting_2B | 0.158 | 1.000 | -0.158 | -1.000 |
| predicted_3B | 0.062 | 0.000 | 0.000 | Hitting_3B | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_AB | 2.750 | 3.000 | 3.000 | Hitting_AB | 2.316 | 1.000 | 0.684 | 2.000 |
| predicted_AVG | 0.291 | 0.000 | 0.333 | Hitting_AVG | 0.205 | 1.000 | -0.205 | -1.000 |
| predicted_BB | 0.146 | 1.000 | 0.000 | Hitting_BB | 0.175 | 0.000 | 0.825 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 0.170 | 0.000 | 1.000 | Hitting_H | 0.474 | 1.000 | -0.474 | -1.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.158 | 0.000 | -0.158 | 0.000 |
| predicted_OBP | 0.291 | 0.250 | 0.333 | Hitting_OBP | 0.259 | 1.000 | -0.009 | -0.750 |
| predicted_R | 0.542 | 0.000 | 1.000 | Hitting_R | 0.526 | 0.000 | -0.526 | 0.000 |
| predicted_RBI | 0.120 | 0.000 | 0.000 | Hitting_RBI | 0.333 | 1.000 | -0.333 | -1.000 |
| predicted_SLG | 0.477 | 0.000 | 0.333 | Hitting_SLG | 0.523 | 2.000 | -0.523 | -2.000 |
| predicted_SO | 1.042 | 1.000 | 1.000 | Hitting_SO | 0.877 | 0.000 | 0.123 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.1460 -> 1.0000 (boost 0.8540, better) |
| Biggest Deboost | predicted_R: 0.5420 -> 0.0000 (deboost -0.5420, 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 | 8 | 1 | 7 | 2 | predicted_AB: 2.7500 -> 3.3421 (boost 0.5921, better) | predicted_AVG: 0.2910 -> 0.2687 (deboost -0.0223, 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.5032 -> 0.3857 (deboost -0.1175, 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: 0.5077 -> 0.0000 (deboost -0.5077, worse) | AB rounded to 3 (raw=3.34), rates preserved: AVG=0.152 HR/AB=0.043 |
| 5 | consistency_constraints | 2 | 2 | 0 | 2 | 0 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1519 -> 0.3330 (boost 0.1811, better) | predicted_SLG: 0.3857 -> 0.3330 (deboost -0.0527, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3857 (boost 0.0527, better) | predicted_AVG: 0.3330 -> 0.1519 (deboost -0.1811, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665923",
"player_name": "Esteury Ruiz",
"position": "LF",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.062,
"predicted_AB": 2.75,
"predicted_AVG": 0.291,
"predicted_BB": 0.146,
"predicted_H": 0.17,
"predicted_HR": 0.04,
"predicted_OBP": 0.291,
"predicted_R": 0.542,
"predicted_RBI": 0.12,
"predicted_SLG": 0.477,
"predicted_SO": 1.042
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2351,
"predicted_3B": 0.0592,
"predicted_AB": 3.3421,
"predicted_AVG": 0.2687,
"predicted_BB": 0.2203,
"predicted_H": 0.4994,
"predicted_HBP": 0.007,
"predicted_HR": 0.1418,
"predicted_OBP": 0.2895,
"predicted_R": 0.6346,
"predicted_RBI": 0.3336,
"predicted_SLG": 0.5032,
"predicted_SO": 1.2668
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.188,
"after": 0.2351,
"delta": 0.0471,
"percent_delta": 0.2505,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.062,
"after": 0.0592,
"delta": -0.0028,
"percent_delta": -0.0452,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.75,
"after": 3.3421,
"delta": 0.5921,
"percent_delta": 0.2153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.2687,
"delta": -0.0223,
"percent_delta": -0.0766,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.146,
"after": 0.2203,
"delta": 0.0743,
"percent_delta": 0.5089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.17,
"after": 0.4994,
"delta": 0.3294,
"percent_delta": 1.9376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.1418,
"delta": 0.1018,
"percent_delta": 2.545,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.291,
"after": 0.2895,
"delta": -0.0015,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.542,
"after": 0.6346,
"delta": 0.0926,
"percent_delta": 0.1708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.12,
"after": 0.3336,
"delta": 0.2136,
"percent_delta": 1.78,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.5032,
"delta": 0.0262,
"percent_delta": 0.0549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.042,
"after": 1.2668,
"delta": 0.2248,
"percent_delta": 0.2157,
"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": 2.75,
"after": 3.3421,
"delta": 0.5921,
"percent_delta": 0.2153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.2687,
"delta": -0.0223,
"percent_delta": -0.0766,
"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": 24
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2351,
"predicted_3B": 0.0592,
"predicted_AB": 3.3421,
"predicted_AVG": 0.1519,
"predicted_BB": 0.2208,
"predicted_H": 0.5077,
"predicted_HBP": 0.007,
"predicted_HR": 0.1427,
"predicted_OBP": 0.2045,
"predicted_R": 0.6531,
"predicted_RBI": 0.3433,
"predicted_SLG": 0.3857,
"predicted_SO": 1.2641
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2351,
"after": 0.2351,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0592,
"after": 0.0592,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.3421,
"after": 3.3421,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2687,
"after": 0.1519,
"delta": -0.1168,
"percent_delta": -0.4347,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2203,
"after": 0.2208,
"delta": 0.0005,
"percent_delta": 0.0023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4994,
"after": 0.5077,
"delta": 0.0083,
"percent_delta": 0.0166,
"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.1418,
"after": 0.1427,
"delta": 0.0009,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2895,
"after": 0.2045,
"delta": -0.085,
"percent_delta": -0.2936,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6346,
"after": 0.6531,
"delta": 0.0185,
"percent_delta": 0.0292,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3336,
"after": 0.3433,
"delta": 0.0097,
"percent_delta": 0.0291,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5032,
"after": 0.3857,
"delta": -0.1175,
"percent_delta": -0.2335,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2668,
"after": 1.2641,
"delta": -0.0027,
"percent_delta": -0.0021,
"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.5032,
"after": 0.3857,
"delta": -0.1175,
"percent_delta": -0.2335,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.34), rates preserved: AVG=0.152 HR/AB=0.043",
"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.2351,
"after": 0.0,
"delta": -0.2351,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0592,
"after": 0.0,
"delta": -0.0592,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.3421,
"after": 3.0,
"delta": -0.3421,
"percent_delta": -0.1024,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2208,
"after": 0.0,
"delta": -0.2208,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5077,
"after": 0.0,
"delta": -0.5077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.1427,
"after": 0.0,
"delta": -0.1427,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3433,
"after": 0.0,
"delta": -0.3433,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2641,
"after": 1.0,
"delta": -0.2641,
"percent_delta": -0.2089,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 0,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.5077,
"after": 0.0,
"delta": -0.5077,
"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": 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.6531,
"after": 1.0,
"delta": 0.3469,
"percent_delta": 0.5312,
"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": 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.1519,
"after": 0.333,
"delta": 0.1811,
"percent_delta": 1.1922,
"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.2045,
"after": 0.333,
"delta": 0.1285,
"percent_delta": 0.6284,
"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.3857,
"after": 0.333,
"delta": -0.0527,
"percent_delta": -0.1366,
"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.1519,
"after": 0.333,
"delta": 0.1811,
"percent_delta": 1.1922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3857,
"after": 0.333,
"delta": -0.0527,
"percent_delta": -0.1366,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1519,
"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.2045,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3857,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1519,
"delta": -0.1811,
"percent_delta": -0.5438,
"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.2045,
"delta": -0.1285,
"percent_delta": -0.386,
"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.3857,
"delta": 0.0527,
"percent_delta": 0.1583,
"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.3857,
"delta": 0.0527,
"percent_delta": 0.1583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1519,
"delta": -0.1811,
"percent_delta": -0.5438,
"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.062,
"after": 0.0,
"delta": -0.062,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 2.75,
"after": 3.0,
"delta": 0.25,
"percent_delta": 0.0909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.291,
"after": 0.1519,
"delta": -0.1391,
"percent_delta": -0.478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.146,
"after": 1.0,
"delta": 0.854,
"percent_delta": 5.8493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.291,
"after": 0.2045,
"delta": -0.0865,
"percent_delta": -0.2973,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.542,
"after": 0.0,
"delta": -0.542,
"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.477,
"after": 0.3857,
"delta": -0.0913,
"percent_delta": -0.1914,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.146,
"after": 1.0,
"delta": 0.854,
"percent_delta": 5.8493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.542,
"after": 0.0,
"delta": -0.542,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.188 | - |
| predicted_3B | 0.062 | - |
| predicted_AB | 2.750 | - |
| predicted_AVG | 0.291 | - |
| predicted_BB | 0.146 | - |
| predicted_H | 0.170 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.291 | - |
| predicted_R | 0.542 | - |
| predicted_RBI | 0.120 | - |
| predicted_SLG | 0.477 | - |
| predicted_SO | 1.042 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.235 | 0.047 |
| predicted_3B | 0.059 | -0.003 |
| predicted_AB | 3.342 | 0.592 |
| predicted_AVG | 0.269 | -0.022 |
| predicted_BB | 0.220 | 0.074 |
| predicted_H | 0.499 | 0.329 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.142 | 0.102 |
| predicted_OBP | 0.289 | -0.002 |
| predicted_R | 0.635 | 0.093 |
| predicted_RBI | 0.334 | 0.214 |
| predicted_SLG | 0.503 | 0.026 |
| predicted_SO | 1.267 | 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.235 | 0.000 |
| predicted_3B | 0.059 | 0.000 |
| predicted_AB | 3.342 | 0.000 |
| predicted_AVG | 0.152 | -0.117 |
| predicted_BB | 0.221 | 0.001 |
| predicted_H | 0.508 | 0.008 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.143 | 0.001 |
| predicted_OBP | 0.204 | -0.085 |
| predicted_R | 0.653 | 0.018 |
| predicted_RBI | 0.343 | 0.010 |
| predicted_SLG | 0.386 | -0.117 |
| predicted_SO | 1.264 | -0.003 |
AB rounded to 3 (raw=3.34), rates preserved: AVG=0.152 HR/AB=0.043
| 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 | 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.235 |
| predicted_3B | 0.000 | -0.059 |
| predicted_AB | 3.000 | -0.342 |
| predicted_AVG | 0.333 | 0.181 |
| predicted_BB | 0.000 | -0.221 |
| predicted_H | 1.000 | 0.492 |
| predicted_HR | 0.000 | -0.143 |
| predicted_OBP | 0.333 | 0.129 |
| predicted_R | 1.000 | 0.347 |
| predicted_RBI | 0.000 | -0.343 |
| predicted_SLG | 0.333 | -0.053 |
| predicted_SO | 1.000 | -0.264 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 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 | - | 8.000 | 3.000 | 1.000 | 0.000 | 1.000 | 2.000 | 2.000 | 1.000 | 4.000 | 0.3750 | 0.4444 | 0.8750 | 0.3750 | 0.1250 | 0.2500 | 0.1250 | 0.5000 |
| last_10 | 0.20 | 8 | - | 23.000 | 3.000 | 1.000 | 0.000 | 1.000 | 2.000 | 2.000 | 3.000 | 10.000 | 0.1304 | 0.2308 | 0.3043 | 0.1304 | 0.0435 | 0.0870 | 0.1304 | 0.4348 |
| season | 0.60 | 24 | - | 132.000 | 27.000 | 9.000 | 3.000 | 9.000 | 19.000 | 26.000 | 7.000 | 50.000 | 0.2045 | 0.2378 | 0.5227 | 0.2046 | 0.0682 | 0.1439 | 0.0530 | 0.3788 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3060 |
| predicted_3B | 0.0550 |
| predicted_AB | 4.2330 |
| predicted_AVG | 0.2351 |
| predicted_BB | 0.3320 |
| predicted_H | 0.9950 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.2950 |
| predicted_OBP | 0.2873 |
| predicted_R | 0.7740 |
| predicted_RBI | 0.6550 |
| predicted_SLG | 0.5427 |
| predicted_SO | 1.6050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1880 | 0.3060 | 0.2351 | model_form_blend |
| predicted_3B | 0.0620 | 0.0550 | 0.0592 | model_form_blend |
| predicted_AB | 2.7500 | 4.2330 | 3.3421 | model_form_blend |
| predicted_AVG | 0.2910 | 0.2351 | 0.2687 | model_form_blend |
| predicted_BB | 0.1460 | 0.3320 | 0.2203 | model_form_blend |
| predicted_H | 0.1700 | 0.9950 | 0.4994 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.0400 | 0.2950 | 0.1418 | model_form_blend |
| predicted_OBP | 0.2910 | 0.2873 | 0.2895 | model_form_blend |
| predicted_R | 0.5420 | 0.7740 | 0.6346 | model_form_blend |
| predicted_RBI | 0.1200 | 0.6550 | 0.3336 | model_form_blend |
| predicted_SLG | 0.4770 | 0.5427 | 0.5032 | model_form_blend |
| predicted_SO | 1.0420 | 1.6050 | 1.2668 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 57 |
| Season rows before report date | 57 |
| Report year | 2026 |
| Profile rows used | 48 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.205 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260609_ARI@MIA |
| game_type | short |
| mlbID | 665923 |
| playerID | 665923 |
| playerName | Esteury Ruiz |
| pos | RF |
| started | False |
| startingPosition | RF |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-09 |
| sl_k_percent | 31.1 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.348 |
| sl_xwoba | 0.28 |
| sl_xba | 0.173 |
| sl_xslg | 0.335 |
| sl_sweet_spot_percent | 35.3 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 29.4 |
| sl_exit_velocity_avg | 87.7 |
| sl_launch_angle_avg | 27.6 |
| sl_whiff_percent | 36.0 |
| 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 | 0.000 | 0.000 | 0.000 | Pitching_BB | 1.222 | 3.000 | -1.222 | -3.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.556 | 3.000 | -0.556 | -3.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 2.056 | 7.000 | -1.056 | -6.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 2.278 | 4.200 | 2.722 | 0.800 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 2.000 | 3.000 | 1.000 | 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.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 | 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": "663969",
"player_name": "Tyler Phillips",
"position": "Starter",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement 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": 5.6667,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 5.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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.0,
"delta": -0.6667,
"percent_delta": -0.1176,
"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": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 5.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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 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": 4,
"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": 5.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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.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 | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.667 | - |
| 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 | 0.000 | 0.000 |
| predicted_ER | 0.000 | 0.000 |
| predicted_H | 1.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.000 | -0.667 |
| 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 | 0.000 | 0.000 |
| predicted_ER | 0.000 | 0.000 |
| predicted_H | 1.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.000 | 0.000 |
| predicted_SO | 3.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 18.100 | 7.000 | 19.000 | 9.000 | 11.000 | 1.000 | 3.4364 | 1.5273 | 0.3818 | 1.0364 | 0.4909 | 0.6000 | 0.0546 |
| last_10 | 0.35 | 10 | 26.100 | 7.000 | 26.000 | 10.000 | 18.000 | 1.000 | 2.3924 | 1.3671 | 0.2658 | 0.9873 | 0.3797 | 0.6835 | 0.0380 |
| season | 0.20 | 18 | 43.100 | 10.000 | 37.000 | 22.000 | 36.000 | 2.000 | 2.0769 | 1.3615 | 0.2308 | 0.8538 | 0.5077 | 0.8308 | 0.0461 |
| Metric | Value |
|---|---|
| predicted_BB | 1.6940 |
| predicted_ER | 1.5080 |
| predicted_ERA | 3.3799 |
| predicted_H | 3.9110 |
| predicted_HR | 0.3280 |
| predicted_IP | 4.0000 |
| predicted_SO | 3.0970 |
| predicted_WHIP | 1.3963 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 1.6940 | 0.8372 | model_form_blend |
| predicted_ER | 0.0000 | 1.5080 | 0.7453 | model_form_blend |
| predicted_ERA | - | 3.3799 | 3.3799 | form_only |
| predicted_H | 1.0000 | 3.9110 | 2.4387 | model_form_blend |
| predicted_HR | 0.0000 | 0.3280 | 0.1621 | model_form_blend |
| predicted_IP | 5.2000 | 4.0000 | 5.0000 | model_form_blend |
| predicted_SO | 3.0000 | 3.0970 | 3.0479 | model_form_blend |
| predicted_WHIP | - | 1.3963 | 1.3963 | 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 | 18 |
| Season rows before report date | 18 |
| 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 | 5.0 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 3 |
| HR | 0 |
| BF | 16 |
| 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 | 24 |
| Pitching_ER | 3 |
| Pitching_ERA | 2.08 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 4 |
| Pitching_H | 7 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.2 |
| Pitching_Pitches | 82 |
| Pitching_R | 3 |
| Pitching_SO | 3 |
| Pitching_Strikes | 50 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260605_TB@MIA |
| game_type | full |
| mlbID | 663969 |
| playerID | 663969 |
| playerName | Tyler Phillips |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-05 |
| sl_k_percent | 19.0 |
| sl_bb_percent | 11.6 |
| sl_woba | 0.296 |
| sl_xwoba | 0.31 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 34.9 |
| sl_whiff_percent | 28.2 |
| sl_swing_percent | 44.5 |
| sl_avg_best_speed | 76.852994286 |
| sl_avg_hyper_speed | 93.394501746 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.500 | 0.000 | -1.500 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 2.750 | 3.000 | -0.750 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 2.250 | 4.000 | -1.150 | -2.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 2.250 | 4.000 | -2.250 | -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: 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": "687473",
"player_name": "Ryan Gusto",
"position": "Middle Reliever",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement 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": 1.0,
"predicted_IP": 1.3333,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 4 | 9.000 | 6.000 | 11.000 | 2.000 | 9.000 | 0.000 | 6.0000 | 1.4444 | 0.6667 | 1.2222 | 0.2222 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 4 | 9.000 | 6.000 | 11.000 | 2.000 | 9.000 | 0.000 | 6.0000 | 1.4444 | 0.6667 | 1.2222 | 0.2222 | 1.0000 | 0.0000 |
| season | 0.20 | 4 | 9.000 | 6.000 | 11.000 | 2.000 | 9.000 | 0.000 | 6.0000 | 1.4444 | 0.6667 | 1.2222 | 0.2222 | 1.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5230 |
| predicted_ER | 0.8510 |
| predicted_ERA | 4.8008 |
| predicted_H | 1.6410 |
| predicted_HR | 0.1660 |
| predicted_IP | 1.2000 |
| predicted_SO | 1.5200 |
| predicted_WHIP | 1.3562 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5230 | 0.1769 | model_form_blend |
| predicted_ER | 0.0000 | 0.8510 | 0.2879 | model_form_blend |
| predicted_ERA | - | 4.8008 | 4.8008 | form_only |
| predicted_H | 2.0000 | 1.6410 | 1.8785 | model_form_blend |
| predicted_HR | 1.0000 | 0.1660 | 0.7178 | model_form_blend |
| predicted_IP | 1.1000 | 1.2000 | 1.1000 | model_form_blend |
| predicted_SO | 0.0000 | 1.5200 | 0.5142 | model_form_blend |
| predicted_WHIP | - | 1.3562 | 1.3562 | 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 | 1.1 |
| H | 2 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 1 |
| BF | 6 |
| Pitches | 6 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 16 |
| Pitching_ER | 0 |
| Pitching_ERA | 6.00 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 4 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.0 |
| Pitching_Pitches | 66 |
| Pitching_R | 0 |
| Pitching_SO | 4 |
| Pitching_Strikes | 45 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260610_ARI@MIA |
| game_type | full |
| mlbID | 687473 |
| playerID | 687473 |
| playerName | Ryan Gusto |
| pos | P |
| started | True |
| startingPosition | P |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 5.0 |
| sl_woba | 0.309 |
| sl_xwoba | 0.323 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 48.3 |
| sl_whiff_percent | 16.4 |
| sl_swing_percent | 48.3 |
| sl_avg_best_speed | 76.237084 |
| sl_avg_hyper_speed | 95.15615069 |
| 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 | 0.000 | -0.321 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.321 | 0.000 | -0.321 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.793 | 0.200 | 0.407 | 1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.107 | 2.000 | -1.107 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 1.0000 -> 1.2000 (boost 0.2000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "669622",
"player_name": "Anthony Bender",
"position": "Middle Reliever",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement 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.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": 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": 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": 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 | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 2.000 | 0.000 | 7.000 | 1.000 | 1.8000 | 0.4000 | 0.2000 | 0.4000 | 0.0000 | 1.4000 | 0.2000 |
| last_10 | 0.35 | 10 | 10.200 | 2.000 | 3.000 | 1.000 | 13.000 | 1.000 | 1.6875 | 0.3750 | 0.1875 | 0.2812 | 0.0938 | 1.2188 | 0.0938 |
| season | 0.20 | 28 | 27.100 | 9.000 | 14.000 | 9.000 | 31.000 | 1.000 | 2.9634 | 0.8415 | 0.3293 | 0.5122 | 0.3293 | 1.1341 | 0.0366 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2270 |
| predicted_ER | 0.3490 |
| predicted_ERA | 3.1381 |
| predicted_H | 0.6590 |
| predicted_HR | 0.1350 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1160 |
| predicted_WHIP | 0.8860 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2270 | 0.1014 | model_form_blend |
| predicted_ER | 0.0000 | 0.3490 | 0.1560 | model_form_blend |
| predicted_ERA | - | 3.1381 | 3.1381 | form_only |
| predicted_H | 0.0000 | 0.6590 | 0.2945 | 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 | 0.0000 | 1.1160 | 0.4987 | model_form_blend |
| predicted_WHIP | - | 0.8860 | 0.8860 | 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.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.96 |
| 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 | 11 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260609_ARI@MIA |
| game_type | full |
| mlbID | 669622 |
| playerID | 669622 |
| playerName | Anthony Bender |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-09 |
| sl_k_percent | 28.7 |
| sl_bb_percent | 8.3 |
| sl_woba | 0.205 |
| sl_xwoba | 0.254 |
| sl_sweet_spot_percent | 30.3 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 21.0 |
| sl_swing_percent | 39.4 |
| sl_avg_best_speed | 78.850869091 |
| sl_avg_hyper_speed | 93.257955455 |
| 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.550 | 1.000 | 1.450 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.700 | 0.000 | 0.300 | 1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.850 | 1.000 | 0.150 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.830 | 1.000 | 0.170 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.250 | 2.000 | -1.250 | -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": "664126",
"player_name": "Pete Fairbanks",
"position": "Middle Reliever",
"team": "MIA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 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.000 | 3.000 | 5.000 | 4.000 | 4.000 | 1.000 | 6.7500 | 2.2500 | 0.7500 | 1.2500 | 1.0000 | 1.0000 | 0.2500 |
| last_10 | 0.35 | 10 | 9.000 | 4.000 | 8.000 | 7.000 | 12.000 | 2.000 | 4.0000 | 1.6667 | 0.4444 | 0.8889 | 0.7778 | 1.3333 | 0.2222 |
| season | 0.20 | 20 | 18.000 | 14.000 | 17.000 | 11.000 | 25.000 | 3.000 | 7.0000 | 1.5556 | 0.7778 | 0.9444 | 0.6111 | 1.3889 | 0.1667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5290 |
| predicted_ER | 0.5190 |
| predicted_ERA | 4.9825 |
| predicted_H | 0.9400 |
| predicted_HR | 0.1640 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9780 |
| predicted_WHIP | 1.5668 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.5290 | 1.4071 | model_form_blend |
| predicted_ER | 1.0000 | 0.5190 | 0.8061 | model_form_blend |
| predicted_ERA | - | 4.9825 | 4.9825 | form_only |
| predicted_H | 1.0000 | 0.9400 | 0.9758 | model_form_blend |
| predicted_HR | 0.0000 | 0.1640 | 0.0661 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9780 | 0.3942 | model_form_blend |
| predicted_WHIP | - | 1.5668 | 1.5668 | 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 | 1 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 7.00 |
| 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 | 24 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260609_ARI@MIA |
| game_type | full |
| mlbID | 664126 |
| playerID | 664126 |
| playerName | Pete Fairbanks |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIA |
| teamID | 15 |
| game_date | 2026-06-09 |
| sl_k_percent | 30.1 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.35 |
| sl_xwoba | 0.292 |
| sl_sweet_spot_percent | 31.1 |
| sl_barrel_batted_rate | 11.4 |
| sl_hard_hit_percent | 35.6 |
| sl_whiff_percent | 28.5 |
| sl_swing_percent | 46.1 |
| sl_avg_best_speed | 81.381975238 |
| sl_avg_hyper_speed | 94.720253333 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | ATL 4 - 2 CHW | ATL | 0.568 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | ATL 6 - 2 CHW | ATL | - | 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.5682 |
| 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.823 | 4.950 | - | Base ML historical model prediction |
| 2 | variance_applied | 5 | 5 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 2 | 0.5682 | 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 | 6 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.5879199857142858,
"base_low_score_probability": 0.41785714285714287,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.17006284285714296,
"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": 6,
"pre_simulation_expected_total_runs": 6.7,
"low_score_model_expected_total_runs": 6.7,
"final_simulation_total_runs": 8,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 151,
"near_bucket_sample_size": 151,
"medium_bucket_sample_size": 172,
"wide_bucket_sample_size": 174,
"global_sample_size": 174,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5894,
"bayesian_hit_rate": 0.5799,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8935,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5697,
"calibrated_pick_probability": 0.5682,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "CHW",
"games": 67,
"wins": 36,
"losses": 31,
"win_pct": 0.5373134328358209,
"runs_scored": 318,
"runs_allowed": 308,
"run_differential": 10,
"run_differential_per_game": 0.14925373134328357,
"available": true
},
"away": {
"team": "ATL",
"games": 68,
"wins": 45,
"losses": 23,
"win_pct": 0.6617647058823529,
"runs_scored": 350,
"runs_allowed": 236,
"run_differential": 114,
"run_differential_per_game": 1.6764705882352942,
"available": true
},
"run_differential_edge_per_game": -1.5272,
"win_pct_edge": -0.1245,
"quality_edge": -1.7139,
"margin_adjustment": -0.7198,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 2.513,
"home_runs": 1.693,
"home_win_probability": 0.4303
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "ATL",
"guardrail_predicted_team": "ATL",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "ATL",
"output_opponent_team": "CHW",
"final_score_winner": "ATL",
"pre_simulation_winner": "ATL",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "ATL 4 - 2 CHW",
"winner": "ATL"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 2,
"score_text": "ATL 6 - 2 CHW",
"winner": "ATL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 2,
"home_run_delta": 0,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "CHW",
"games": 67,
"wins": 36,
"losses": 31,
"win_pct": 0.5373134328358209,
"runs_scored": 318,
"runs_allowed": 308,
"run_differential": 10,
"run_differential_per_game": 0.14925373134328357,
"available": true
},
"away": {
"team": "ATL",
"games": 68,
"wins": 45,
"losses": 23,
"win_pct": 0.6617647058823529,
"runs_scored": 350,
"runs_allowed": 236,
"run_differential": 114,
"run_differential_per_game": 1.6764705882352942,
"available": true
}
}
}{
"applied": false,
"raw_margin": -0.8205,
"final_margin": -0.8205,
"margin_cap": 4.25,
"season_quality_edge": 1.7139,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.568245,
"final_confidence": 0.568245,
"confidence_cap": 0.66,
"score_gap": 0.8205,
"calibration_sample_size": 151,
"calibration_empirical_hit_rate": 0.5894,
"calibration_bayesian_hit_rate": 0.5799,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.7139,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is close",
"local calibration sample has at least 30 games",
"local calibration sample has at least 60 games",
"season run-differential edge supports the pick",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 4,
"home_runs": 2,
"score_text": "ATL 4 - 2 CHW",
"winner": "ATL"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 2,
"score_text": "ATL 6 - 2 CHW",
"winner": "ATL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 2,
"home_run_delta": 0,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 4,
"home_runs": 2,
"confidence": 0.568245,
"home_win_probability": 0.431755,
"away_win_probability": 0.568245,
"predicted_score_text": "ATL 4 - 2 CHW",
"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": "ATL",
"original_runs": 3,
"run_delta": 0.6008,
"adjusted_runs": 4,
"lineup": {
"players_used": 9,
"total_weight": 49.0,
"quality": 0.2537626315635472,
"contact": 0.21312412859715682,
"power": 0.23009365045542493,
"discipline": -0.19302437194630342,
"xwoba": 0.31918367346938775,
"recent_xwoba": 0.31918367346938775,
"barrel": 8.287755102040817,
"ab_hard_contact": 0.33395308139211155,
"ab_bat_speed": 70.29235691867773,
"ab_strikeout_rate": 0.22077760707494123,
"available_players": 9,
"top_players": [
{
"player_id": "621566",
"player_name": "Matt Olson",
"position": "DH_621566",
"weight": 7.0,
"quality": 1.2837229557270784,
"contact": 1.2835467120181407,
"power": 1.8221124273313496,
"discipline": 0.10645488721804502,
"xwoba": 0.378,
"recent_xwoba": 0.378,
"barrel": 14.6,
"ab_hard_contact": 1.6485342609126994,
"ab_bat_speed": 73.18710813492063,
"ab_strikeout_rate": 0.23154761904761906,
"available": 1.0
},
{
"player_id": "671739",
"player_name": "Michael Harris II",
"position": "DH_671739",
"weight": 6.0,
"quality": 1.1764923259348863,
"contact": 1.5524479907825308,
"power": 1.769389727366214,
"discipline": -0.5143546365914788,
"xwoba": 0.383,
"recent_xwoba": 0.383,
"barrel": 15.1,
"ab_hard_contact": 1.535985023514748,
"ab_bat_speed": 73.9240186965812,
"ab_strikeout_rate": 0.2,
"available": 1.0
},
{
"player_id": "506702",
"player_name": "Sandy León",
"position": "DH_506702",
"weight": 3.0,
"quality": -0.1459302717158912,
"contact": -2.0,
"power": -2.0,
"discipline": -1.8799763297131717,
"xwoba": 0.149,
"recent_xwoba": 0.149,
"barrel": 0.0,
"ab_hard_contact": -1.9331683431770637,
"ab_bat_speed": 66.41962962962963,
"ab_strikeout_rate": 0.4074074074074074,
"available": 1.0
},
{
"player_id": "645277",
"player_name": "Ozzie Albies",
"position": "DH",
"weight": 7.0,
"quality": -0.259267847580992,
"contact": -0.15048974610260743,
"power": -0.5098552747505005,
"discipline": 0.278157268170426,
"xwoba": 0.309,
"recent_xwoba": 0.309,
"barrel": 4.4,
"ab_hard_contact": 0.2863230764185517,
"ab_bat_speed": 67.33196853741497,
"ab_strikeout_rate": 0.12470238095238095,
"available": 1.0
},
{
"player_id": "642086",
"player_name": "Dominic Smith",
"position": "DH_642086",
"weight": 5.0,
"quality": 0.23827983662499652,
"contact": 0.7356863382988358,
"power": 0.36742879365882725,
"discipline": -0.010510850296473057,
"xwoba": 0.351,
"recent_xwoba": 0.351,
"barrel": 7.8,
"ab_hard_contact": -0.3241860315853695,
"ab_bat_speed": 67.28202913279132,
"ab_strikeout_rate": 0.21422764227642277,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "641743",
"player_name": "Anthony Kay",
"quality": -0.6910206687232153,
"contact": -0.9391095228555558,
"command": -0.6636668961781744,
"movement": -0.29194374789700744,
"xwoba": 0.372,
"whiff": 20.2,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "CHW",
"original_runs": 2,
"run_delta": 0.227,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 48.0,
"quality": 0.0873996021503532,
"contact": 0.03282979434718802,
"power": 0.1495752556325388,
"discipline": -0.011718221304060203,
"xwoba": 0.3283333333333333,
"recent_xwoba": 0.3283333333333333,
"barrel": 9.064583333333333,
"ab_hard_contact": -0.055034569888917674,
"ab_bat_speed": 68.43338637396762,
"ab_strikeout_rate": 0.2396645193408186,
"available_players": 8,
"top_players": [
{
"player_id": "678246",
"player_name": "Miguel Vargas",
"position": "DH_678246",
"weight": 6.0,
"quality": 1.1151337256509513,
"contact": 1.0903257980678387,
"power": 1.280027942205483,
"discipline": 1.0860316067947644,
"xwoba": 0.394,
"recent_xwoba": 0.394,
"barrel": 14.1,
"ab_hard_contact": 0.5392255107763217,
"ab_bat_speed": 72.40690402704291,
"ab_strikeout_rate": 0.18518518518518517,
"available": 1.0
},
{
"player_id": "805367",
"player_name": "Chase Meidroth",
"position": "DH_805367",
"weight": 7.0,
"quality": -0.48820760428221915,
"contact": -0.47402174639695605,
"power": -0.6273387612840563,
"discipline": 0.2101307113938693,
"xwoba": 0.291,
"recent_xwoba": 0.291,
"barrel": 5.3,
"ab_hard_contact": -0.8439180828239914,
"ab_bat_speed": 64.46452457264958,
"ab_strikeout_rate": 0.23237179487179488,
"available": 1.0
},
{
"player_id": "671976",
"player_name": "Tristan Peters",
"position": "DH_671976",
"weight": 5.0,
"quality": -0.41961753159249116,
"contact": -0.5455361663832194,
"power": -0.8078645535657852,
"discipline": -0.12251138262322483,
"xwoba": 0.293,
"recent_xwoba": 0.293,
"barrel": 4.4,
"ab_hard_contact": -0.7492910713157228,
"ab_bat_speed": 63.24040798611111,
"ab_strikeout_rate": 0.22951388888888888,
"available": 1.0
},
{
"player_id": "643217",
"player_name": "Andrew Benintendi",
"position": "DH_643217",
"weight": 6.0,
"quality": 0.2438946643116201,
"contact": 0.23802476566043096,
"power": 0.6337466668733887,
"discipline": -0.51412447786132,
"xwoba": 0.327,
"recent_xwoba": 0.327,
"barrel": 11.0,
"ab_hard_contact": 0.4120761946106247,
"ab_bat_speed": 67.71190740740741,
"ab_strikeout_rate": 0.3055555555555555,
"available": 1.0
},
{
"player_id": "691011",
"player_name": "Drew Romo",
"position": "DH_691011",
"weight": 5.0,
"quality": -0.21122636638697628,
"contact": -1.224141966978457,
"power": -0.6056107568204355,
"discipline": -0.1200153508771933,
"xwoba": 0.281,
"recent_xwoba": 0.281,
"barrel": 8.8,
"ab_hard_contact": 0.5148324826388897,
"ab_bat_speed": 67.24905381944444,
"ab_strikeout_rate": 0.296875,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "527048",
"player_name": "Martín Pérez",
"quality": -0.13548071392013425,
"contact": 0.09437772686984103,
"command": -0.3095240390353172,
"movement": -1.0165193012643043,
"xwoba": 0.317,
"whiff": 22.3,
"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": "ATL 4 - 2 CHW",
"confidence": 0.568245,
"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": 2,
"score_text": "ATL 4 - 2 CHW",
"winner": "ATL"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 2,
"score_text": "ATL 6 - 2 CHW",
"winner": "ATL"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 2,
"home_run_delta": 0,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away ATL | True | 1.0204 | 1.0204 | 1 | 9 | 0 |
| Home CHW | True | 1.0204 | 1.0204 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Ozzie Albies | 27 | 0.9861 | -0.1854 | negative_batter_regression | 0.3090 | 0.2550 | 0.3880 | 4.40 | 27.60 | 86.80 | 16.70 | 20.40 | 12.30 | 7.20 | -0.8857 |
| DH_643289 | Mauricio Dubón | 48 | 1.0032 | 0.0430 | neutral | 0.3140 | 0.2620 | 0.3920 | 6.20 | 28.40 | 86.60 | 16.50 | 17.80 | 15.70 | 7.10 | -0.2571 |
| DH_671739 | Michael Harris II | 33 | 1.1096 | 1.4614 | neutral | 0.3830 | 0.3050 | 0.5490 | 15.10 | 52.20 | 92.80 | 11.90 | 26.30 | 19.20 | 4.50 | 0.3714 |
| DH_621566 | Matt Olson | 10 | 1.1136 | 1.5153 | neutral | 0.3780 | 0.2650 | 0.5480 | 14.60 | 53.50 | 93.80 | 19 | 24.70 | 22.70 | 10 | -0.2000 |
| DH_506702 | Sandy León | 510 | 0.9438 | -0.7496 | positive_batter_regression | 0.1490 | 0.1510 | 0.1920 | 0 | 18.20 | 82.10 | 21.40 | 28.90 | 38.90 | 0 | 2 |
| DH_663586 | Austin Riley | 307 | 1.0106 | 0.1415 | neutral | 0.3010 | 0.2100 | 0.3910 | 10 | 44.10 | 90.80 | 19.20 | 31.70 | 28.50 | 7.90 | 0.4000 |
| DH_573262 | Mike Yastrzemski | 189 | 0.9853 | -0.1957 | neutral | 0.2930 | 0.2310 | 0.3240 | 3.90 | 40.90 | 90.60 | 16.10 | 24.30 | 22.80 | 9.30 | -0.3714 |
| DH_642201 | Eli White | 217 | 0.9979 | -0.0282 | neutral | 0.2940 | 0.2530 | 0.3520 | 6.70 | 35 | 87.30 | 4.30 | 27.30 | 17.50 | 6.30 | 0.7143 |
| DH_642086 | Dominic Smith | 177 | 1.0335 | 0.4463 | neutral | 0.3510 | 0.2920 | 0.4670 | 7.80 | 36.90 | 89.30 | 15.80 | 19.40 | 13.60 | 5.60 | 0.2857 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Jacob Gonzalez | 228 | 1.0274 | 0.3651 | neutral | 0.3650 | 0.2520 | 0.4530 | 5.90 | 52.90 | 91.50 | 16 | 25.80 | 29 | 12.90 | -0.5143 |
| DH_805367 | Chase Meidroth | 92 | 0.9667 | -0.4442 | negative_batter_regression | 0.2910 | 0.2300 | 0.3350 | 5.30 | 35.30 | 87.60 | 7.20 | 19.70 | 21.90 | 9.30 | -1.0571 |
| DH_695657 | Colson Montgomery | 39 | 1.0318 | 0.4242 | neutral | 0.3260 | 0.2150 | 0.4380 | 13.70 | 45.10 | 89.80 | 19.50 | 38.20 | 30.70 | 9.30 | -0.6286 |
| DH_671976 | Tristan Peters | 46 | 0.9717 | -0.3773 | negative_batter_regression | 0.2930 | 0.2460 | 0.3500 | 4.40 | 25.50 | 86.40 | 13.90 | 23.50 | 18.70 | 7 | -1.6286 |
| DH_691011 | Drew Romo | 248 | 0.9777 | -0.2978 | neutral | 0.2810 | 0.1900 | 0.3330 | 8.80 | 28.10 | 84.40 | 11.60 | 33.10 | 23.60 | 11.20 | -0.3714 |
| DH_656537 | Derek Hill | 403 | 1.0017 | 0.0222 | neutral | 0.3020 | 0.2330 | 0.3770 | 9.60 | 35.80 | 90 | 15.40 | 34.60 | 32.20 | 7.80 | 0.2000 |
| DH_803011 | Sam Antonacci | 105 | 1.0489 | 0.6515 | neutral | 0.3740 | 0.3060 | 0.4300 | 6.50 | 36 | 87.90 | 11.50 | 16.30 | 14.80 | 6.60 | 0.6857 |
| DH_678246 | Miguel Vargas | 18 | 1.1183 | 1.5771 | neutral | 0.3940 | 0.2620 | 0.5260 | 14.10 | 45.30 | 89.80 | 19.60 | 20.50 | 16.80 | 15.10 | 0.4857 |
| DH_643217 | Andrew Benintendi | 503 | 1.0395 | 0.5268 | neutral | 0.3270 | 0.2520 | 0.4430 | 11 | 47.40 | 89.10 | 18 | 29.60 | 27.70 | 8 | 0.7143 |
{
"home": {
"applied": true,
"offense_factor": 1.0204,
"raw_average_factor": 1.0204,
"team_espn_average_rank": 186.89,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "694378",
"player_name": "Jacob Gonzalez",
"offense_factor": 1.0274,
"quality_score": 0.3651,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694378",
"espn_id": 4720990,
"player_name": "Jacob Gonzalez",
"team": "CHW",
"role": "batter",
"espn_rank": 228,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 228,
"gp_value": 9.0,
"gp_rank": 480,
"ab_value": 26.0,
"ab_rank": 461,
"r_value": 3.0,
"r_rank": 435,
"h_value": 8.0,
"h_rank": 423,
"avg_value": 0.3076923,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 5.0,
"rbi_rank": 390,
"tb_value": 11.0,
"tb_rank": 2299,
"bb_value": 4.0,
"bb_rank": 394,
"so_value": 9.0,
"so_rank": 438,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.4193548,
"obp_rank": "-",
"slg_value": 0.4230769,
"slg_rank": "-",
"ops_value": 0.8424317,
"ops_rank": null,
"war_value": 0.33,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 29.0,
"bb_percent": 12.9,
"woba": 0.383,
"xwoba": 0.365,
"xba": 0.252,
"xslg": 0.453,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 52.9,
"exit_velocity_avg": 91.5,
"launch_angle_avg": 16.0,
"whiff_percent": 25.8,
"swing_percent": 46.6
},
"components": {
"expected_quality": 1.0272,
"regression_edge": -0.5143,
"xwoba_edge": 1.7429,
"xba_edge": 0.4,
"xslg_edge": 1.1286,
"barrel_edge": -0.2222,
"hard_hit_edge": 2.0571,
"exit_velocity_edge": 1.08,
"sweet_spot_edge": -0.65,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_805367",
"player_id": "805367",
"player_name": "Chase Meidroth",
"offense_factor": 0.9667,
"quality_score": -0.4442,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "805367",
"espn_id": 5136929,
"player_name": "Chase Meidroth",
"team": "CHW",
"role": "batter",
"espn_rank": 92,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 92,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 245.0,
"ab_rank": 48,
"r_value": 40.0,
"r_rank": 38,
"h_value": 67.0,
"h_rank": 35,
"avg_value": 0.2734693,
"avg_rank": 45.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 21.0,
"rbi_rank": 178,
"tb_value": 95.0,
"tb_rank": 936,
"bb_value": 26.0,
"bb_rank": 67,
"so_value": 61.0,
"so_rank": 57,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3430656,
"obp_rank": "67",
"slg_value": 0.3877551,
"slg_rank": "111",
"ops_value": 0.7308207,
"ops_rank": 44.0,
"war_value": 1.27,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 21.9,
"bb_percent": 9.3,
"woba": 0.328,
"xwoba": 0.291,
"xba": 0.23,
"xslg": 0.335,
"sweet_spot_percent": 32.6,
"barrel_batted_rate": 5.3,
"hard_hit_percent": 35.3,
"exit_velocity_avg": 87.6,
"launch_angle_avg": 7.2,
"whiff_percent": 19.7,
"swing_percent": 41.1
},
"components": {
"expected_quality": -0.3468,
"regression_edge": -1.0571,
"xwoba_edge": -0.3714,
"xba_edge": -0.2286,
"xslg_edge": -0.5571,
"barrel_edge": -0.3556,
"hard_hit_edge": -0.4571,
"exit_velocity_edge": -0.48,
"sweet_spot_edge": -0.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_695657",
"player_id": "695657",
"player_name": "Colson Montgomery",
"offense_factor": 1.0318,
"quality_score": 0.4242,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695657",
"espn_id": 4872685,
"player_name": "Colson Montgomery",
"team": "CHW",
"role": "batter",
"espn_rank": 39,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 39,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 236.0,
"ab_rank": 75,
"r_value": 31.0,
"r_rank": 79,
"h_value": 53.0,
"h_rank": 110,
"avg_value": 0.2245762,
"avg_rank": 134.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 16.0,
"hr_rank": 12,
"rbi_value": 38.0,
"rbi_rank": 34,
"tb_value": 113.0,
"tb_rank": 573,
"bb_value": 25.0,
"bb_rank": 74,
"so_value": 83.0,
"so_rank": 11,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3222222,
"obp_rank": "104",
"slg_value": 0.4788135,
"slg_rank": "38",
"ops_value": 0.8010357,
"ops_rank": 66.0,
"war_value": 2.15,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 221.0,
"k_percent": 30.7,
"bb_percent": 9.3,
"woba": 0.348,
"xwoba": 0.326,
"xba": 0.215,
"xslg": 0.438,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 13.7,
"hard_hit_percent": 45.1,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 19.5,
"whiff_percent": 38.2,
"swing_percent": 52.1
},
"components": {
"expected_quality": 0.5956,
"regression_edge": -0.6286,
"xwoba_edge": 0.6286,
"xba_edge": -0.6571,
"xslg_edge": 0.9143,
"barrel_edge": 1.5111,
"hard_hit_edge": 0.9429,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 0.4333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_671976",
"player_id": "671976",
"player_name": "Tristan Peters",
"offense_factor": 0.9717,
"quality_score": -0.3773,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "671976",
"espn_id": 5085893,
"player_name": "Tristan Peters",
"team": "CHW",
"role": "batter",
"espn_rank": 46,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 46,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 168.0,
"ab_rank": 190,
"r_value": 19.0,
"r_rank": 202,
"h_value": 50.0,
"h_rank": 124,
"avg_value": 0.297619,
"avg_rank": null,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 18.0,
"rbi_rank": 214,
"tb_value": 73.0,
"tb_rank": 1111,
"bb_value": 13.0,
"bb_rank": 220,
"so_value": 35.0,
"so_rank": 212,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.3551912,
"obp_rank": "-",
"slg_value": 0.4345238,
"slg_rank": "-",
"ops_value": 0.789715,
"ops_rank": null,
"war_value": 1.89,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 141.0,
"k_percent": 18.7,
"bb_percent": 7.0,
"woba": 0.35,
"xwoba": 0.293,
"xba": 0.246,
"xslg": 0.35,
"sweet_spot_percent": 32.8,
"barrel_batted_rate": 4.4,
"hard_hit_percent": 25.5,
"exit_velocity_avg": 86.4,
"launch_angle_avg": 13.9,
"whiff_percent": 23.5,
"swing_percent": 56.3
},
"components": {
"expected_quality": -0.4193,
"regression_edge": -1.6286,
"xwoba_edge": -0.3143,
"xba_edge": 0.2286,
"xslg_edge": -0.3429,
"barrel_edge": -0.5556,
"hard_hit_edge": -1.8571,
"exit_velocity_edge": -0.96,
"sweet_spot_edge": -0.0833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_691011",
"player_id": "691011",
"player_name": "Drew Romo",
"offense_factor": 0.9777,
"quality_score": -0.2978,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691011",
"espn_id": 4917765,
"player_name": "Drew Romo",
"team": "CHW",
"role": "batter",
"espn_rank": 248,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 248,
"gp_value": 25.0,
"gp_rank": 371,
"ab_value": 76.0,
"ab_rank": 357,
"r_value": 8.0,
"r_rank": 357,
"h_value": 12.0,
"h_rank": 382,
"avg_value": 0.1578947,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 11.0,
"rbi_rank": 290,
"tb_value": 31.0,
"tb_rank": 1520,
"bb_value": 10.0,
"bb_rank": 268,
"so_value": 21.0,
"so_rank": 325,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2613636,
"obp_rank": "-",
"slg_value": 0.4078947,
"slg_rank": "-",
"ops_value": 0.6692583,
"ops_rank": null,
"war_value": 0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 61.0,
"k_percent": 23.6,
"bb_percent": 11.2,
"woba": 0.294,
"xwoba": 0.281,
"xba": 0.19,
"xslg": 0.333,
"sweet_spot_percent": 24.6,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 28.1,
"exit_velocity_avg": 84.4,
"launch_angle_avg": 11.6,
"whiff_percent": 33.1,
"swing_percent": 47.7
},
"components": {
"expected_quality": -0.7089,
"regression_edge": -0.3714,
"xwoba_edge": -0.6571,
"xba_edge": -1.3714,
"xslg_edge": -0.5857,
"barrel_edge": 0.4222,
"hard_hit_edge": -1.4857,
"exit_velocity_edge": -1.76,
"sweet_spot_edge": -1.45,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_656537",
"player_id": "656537",
"player_name": "Derek Hill",
"offense_factor": 1.0017,
"quality_score": 0.0222,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656537",
"espn_id": 33721,
"player_name": "Derek Hill",
"team": "CHW",
"role": "batter",
"espn_rank": 403,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 403,
"gp_value": 50.0,
"gp_rank": 212,
"ab_value": 80.0,
"ab_rank": 351,
"r_value": 11.0,
"r_rank": 310,
"h_value": 17.0,
"h_rank": 348,
"avg_value": 0.2125,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 418,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 8.0,
"rbi_rank": 338,
"tb_value": 30.0,
"tb_rank": 1702,
"bb_value": 7.0,
"bb_rank": 320,
"so_value": 29.0,
"so_rank": 261,
"sb_value": 7.0,
"sb_rank": 57,
"obp_value": 0.2840909,
"obp_rank": "-",
"slg_value": 0.375,
"slg_rank": "-",
"ops_value": 0.6590909,
"ops_rank": null,
"war_value": -0.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 62.0,
"k_percent": 32.2,
"bb_percent": 7.8,
"woba": 0.295,
"xwoba": 0.302,
"xba": 0.233,
"xslg": 0.377,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 9.6,
"hard_hit_percent": 35.8,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 15.4,
"whiff_percent": 34.6,
"swing_percent": 51.6
},
"components": {
"expected_quality": 0.0247,
"regression_edge": 0.2,
"xwoba_edge": -0.0571,
"xba_edge": -0.1429,
"xslg_edge": 0.0429,
"barrel_edge": 0.6,
"hard_hit_edge": -0.3857,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 0.1167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_803011",
"player_id": "803011",
"player_name": "Sam Antonacci",
"offense_factor": 1.0489,
"quality_score": 0.6515,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "803011",
"espn_id": 5207167,
"player_name": "Sam Antonacci",
"team": "CHW",
"role": "batter",
"espn_rank": 105,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 105,
"gp_value": 49.0,
"gp_rank": 220,
"ab_value": 165.0,
"ab_rank": 193,
"r_value": 30.0,
"r_rank": 90,
"h_value": 47.0,
"h_rank": 143,
"avg_value": 0.2848484,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 15.0,
"rbi_rank": 247,
"tb_value": 62.0,
"tb_rank": 1375,
"bb_value": 13.0,
"bb_rank": 220,
"so_value": 29.0,
"so_rank": 261,
"sb_value": 8.0,
"sb_rank": 50,
"obp_value": 0.3865979,
"obp_rank": "-",
"slg_value": 0.3757575,
"slg_rank": "-",
"ops_value": 0.7623554,
"ops_rank": null,
"war_value": 1.16,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 143.0,
"k_percent": 14.8,
"bb_percent": 6.6,
"woba": 0.35,
"xwoba": 0.374,
"xba": 0.306,
"xslg": 0.43,
"sweet_spot_percent": 41.0,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 36.0,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 11.5,
"whiff_percent": 16.3,
"swing_percent": 40.3
},
"components": {
"expected_quality": 1.0538,
"regression_edge": 0.6857,
"xwoba_edge": 2.0,
"xba_edge": 1.9429,
"xslg_edge": 0.8,
"barrel_edge": -0.0889,
"hard_hit_edge": -0.3571,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": 1.2833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_678246",
"player_id": "678246",
"player_name": "Miguel Vargas",
"offense_factor": 1.1183,
"quality_score": 1.5771,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "678246",
"espn_id": 42453,
"player_name": "Miguel Vargas",
"team": "CHW",
"role": "batter",
"espn_rank": 18,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 18,
"gp_value": 66.0,
"gp_rank": 45,
"ab_value": 239.0,
"ab_rank": 66,
"r_value": 49.0,
"r_rank": 4,
"h_value": 58.0,
"h_rank": 84,
"avg_value": 0.2426778,
"avg_rank": 101.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 16.0,
"hr_rank": 12,
"rbi_value": 43.0,
"rbi_rank": 15,
"tb_value": 118.0,
"tb_rank": 351,
"bb_value": 44.0,
"bb_rank": 8,
"so_value": 49.0,
"so_rank": 119,
"sb_value": 9.0,
"sb_rank": 41,
"obp_value": 0.3689655,
"obp_rank": "32",
"slg_value": 0.4937238,
"slg_rank": "30",
"ops_value": 0.8626893,
"ops_rank": 62.0,
"war_value": 2.7,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 234.0,
"k_percent": 16.8,
"bb_percent": 15.1,
"woba": 0.377,
"xwoba": 0.394,
"xba": 0.262,
"xslg": 0.526,
"sweet_spot_percent": 40.6,
"barrel_batted_rate": 14.1,
"hard_hit_percent": 45.3,
"exit_velocity_avg": 89.8,
"launch_angle_avg": 19.6,
"whiff_percent": 20.5,
"swing_percent": 44.1
},
"components": {
"expected_quality": 1.7548,
"regression_edge": 0.4857,
"xwoba_edge": 2.5,
"xba_edge": 0.6857,
"xslg_edge": 2.1714,
"barrel_edge": 1.6,
"hard_hit_edge": 0.9714,
"exit_velocity_edge": 0.4,
"sweet_spot_edge": 1.2167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_643217",
"player_id": "643217",
"player_name": "Andrew Benintendi",
"offense_factor": 1.0395,
"quality_score": 0.5268,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643217",
"espn_id": 34986,
"player_name": "Andrew Benintendi",
"team": "CHW",
"role": "batter",
"espn_rank": 503,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 503,
"gp_value": 60.0,
"gp_rank": 146,
"ab_value": 192.0,
"ab_rank": 145,
"r_value": 26.0,
"r_rank": 136,
"h_value": 45.0,
"h_rank": 159,
"avg_value": 0.234375,
"avg_rank": 114.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 30.0,
"rbi_rank": 92,
"tb_value": 76.0,
"tb_rank": 728,
"bb_value": 17.0,
"bb_rank": 171,
"so_value": 59.0,
"so_rank": 65,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2924528,
"obp_rank": "135",
"slg_value": 0.3958333,
"slg_rank": "106",
"ops_value": 0.6882861,
"ops_rank": 241.0,
"war_value": -0.44,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 164.0,
"k_percent": 27.7,
"bb_percent": 8.0,
"woba": 0.302,
"xwoba": 0.327,
"xba": 0.252,
"xslg": 0.443,
"sweet_spot_percent": 39.4,
"barrel_batted_rate": 11.0,
"hard_hit_percent": 47.4,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 18.0,
"whiff_percent": 29.6,
"swing_percent": 52.3
},
"components": {
"expected_quality": 0.7055,
"regression_edge": 0.7143,
"xwoba_edge": 0.6571,
"xba_edge": 0.4,
"xslg_edge": 0.9857,
"barrel_edge": 0.9111,
"hard_hit_edge": 1.2714,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": 1.0167,
"launch_angle_hr_bonus": 0.2
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0204,
"raw_average_factor": 1.0204,
"team_espn_average_rank": 168.67,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "645277",
"player_name": "Ozzie Albies",
"offense_factor": 0.9861,
"quality_score": -0.1854,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "645277",
"espn_id": 33783,
"player_name": "Ozzie Albies",
"team": "ATL",
"role": "batter",
"espn_rank": 27,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 27,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 261.0,
"ab_rank": 18,
"r_value": 43.0,
"r_rank": 18,
"h_value": 73.0,
"h_rank": 13,
"avg_value": 0.2796934,
"avg_rank": 34.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 10.0,
"hr_rank": 54,
"rbi_value": 36.0,
"rbi_rank": 47,
"tb_value": 116.0,
"tb_rank": 584,
"bb_value": 21.0,
"bb_rank": 121,
"so_value": 36.0,
"so_rank": 205,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3344709,
"obp_rank": "81",
"slg_value": 0.4444444,
"slg_rank": "60",
"ops_value": 0.7789153,
"ops_rank": 141.0,
"war_value": 2.36,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 242.0,
"k_percent": 12.3,
"bb_percent": 7.2,
"woba": 0.34,
"xwoba": 0.309,
"xba": 0.255,
"xslg": 0.388,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 4.4,
"hard_hit_percent": 27.6,
"exit_velocity_avg": 86.8,
"launch_angle_avg": 16.7,
"whiff_percent": 20.4,
"swing_percent": 54.7
},
"components": {
"expected_quality": -0.0714,
"regression_edge": -0.8857,
"xwoba_edge": 0.1429,
"xba_edge": 0.4857,
"xslg_edge": 0.2,
"barrel_edge": -0.5556,
"hard_hit_edge": -1.5571,
"exit_velocity_edge": -0.8,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_643289",
"player_id": "643289",
"player_name": "Mauricio Dubón",
"offense_factor": 1.0032,
"quality_score": 0.043,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "643289",
"espn_id": 35304,
"player_name": "Mauricio Dubon",
"team": "ATL",
"role": "batter",
"espn_rank": 48,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 48,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 234.0,
"ab_rank": 85,
"r_value": 28.0,
"r_rank": 111,
"h_value": 61.0,
"h_rank": 68,
"avg_value": 0.2606837,
"avg_rank": 67.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 37.0,
"rbi_rank": 42,
"tb_value": 96.0,
"tb_rank": 548,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 40.0,
"so_rank": 170,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3188976,
"obp_rank": "107",
"slg_value": 0.4102564,
"slg_rank": "89",
"ops_value": 0.729154,
"ops_rank": 18.0,
"war_value": 1.86,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 15.7,
"bb_percent": 7.1,
"woba": 0.323,
"xwoba": 0.314,
"xba": 0.262,
"xslg": 0.392,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 28.4,
"exit_velocity_avg": 86.6,
"launch_angle_avg": 16.5,
"whiff_percent": 17.8,
"swing_percent": 51.3
},
"components": {
"expected_quality": 0.0935,
"regression_edge": -0.2571,
"xwoba_edge": 0.2857,
"xba_edge": 0.6857,
"xslg_edge": 0.2571,
"barrel_edge": -0.1556,
"hard_hit_edge": -1.4429,
"exit_velocity_edge": -0.88,
"sweet_spot_edge": 0.9,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_671739",
"player_id": "671739",
"player_name": "Michael Harris II",
"offense_factor": 1.1096,
"quality_score": 1.4614,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671739",
"espn_id": 42470,
"player_name": "Michael Harris II",
"team": "ATL",
"role": "batter",
"espn_rank": 33,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 33,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 232.0,
"ab_rank": 89,
"r_value": 31.0,
"r_rank": 79,
"h_value": 71.0,
"h_rank": 21,
"avg_value": 0.3060344,
"avg_rank": 9.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 13.0,
"hr_rank": 28,
"rbi_value": 40.0,
"rbi_rank": 28,
"tb_value": 119.0,
"tb_rank": 603,
"bb_value": 11.0,
"bb_rank": 252,
"so_value": 47.0,
"so_rank": 130,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3387755,
"obp_rank": "72",
"slg_value": 0.512931,
"slg_rank": "27",
"ops_value": 0.8517065,
"ops_rank": 45.0,
"war_value": 2.24,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 195.0,
"k_percent": 19.2,
"bb_percent": 4.5,
"woba": 0.37,
"xwoba": 0.383,
"xba": 0.305,
"xslg": 0.549,
"sweet_spot_percent": 29.6,
"barrel_batted_rate": 15.1,
"hard_hit_percent": 52.2,
"exit_velocity_avg": 92.8,
"launch_angle_avg": 11.9,
"whiff_percent": 26.3,
"swing_percent": 55.3
},
"components": {
"expected_quality": 1.8567,
"regression_edge": 0.3714,
"xwoba_edge": 2.2571,
"xba_edge": 1.9143,
"xslg_edge": 2.5,
"barrel_edge": 1.8222,
"hard_hit_edge": 1.9571,
"exit_velocity_edge": 1.6,
"sweet_spot_edge": -0.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_621566",
"player_id": "621566",
"player_name": "Matt Olson",
"offense_factor": 1.1136,
"quality_score": 1.5153,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "621566",
"espn_id": 32767,
"player_name": "Matt Olson",
"team": "ATL",
"role": "batter",
"espn_rank": 10,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 10,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 265.0,
"ab_rank": 13,
"r_value": 49.0,
"r_rank": 4,
"h_value": 72.0,
"h_rank": 17,
"avg_value": 0.2716981,
"avg_rank": 47.0,
"2b_value": 19.0,
"2b_rank": 2,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 19.0,
"hr_rank": 5,
"rbi_value": 50.0,
"rbi_rank": 4,
"tb_value": 148.0,
"tb_rank": 370,
"bb_value": 30.0,
"bb_rank": 45,
"so_value": 68.0,
"so_rank": 34,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3444816,
"obp_rank": "66",
"slg_value": 0.5584905,
"slg_rank": "7",
"ops_value": 0.9029721,
"ops_rank": 73.0,
"war_value": 3.06,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 244.0,
"k_percent": 22.7,
"bb_percent": 10.0,
"woba": 0.385,
"xwoba": 0.378,
"xba": 0.265,
"xslg": 0.548,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 14.6,
"hard_hit_percent": 53.5,
"exit_velocity_avg": 93.8,
"launch_angle_avg": 19.0,
"whiff_percent": 24.7,
"swing_percent": 45.8
},
"components": {
"expected_quality": 1.7946,
"regression_edge": -0.2,
"xwoba_edge": 2.1143,
"xba_edge": 0.7714,
"xslg_edge": 2.4857,
"barrel_edge": 1.7111,
"hard_hit_edge": 2.1429,
"exit_velocity_edge": 2.0,
"sweet_spot_edge": 0.1167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "DH_506702",
"player_id": "506702",
"player_name": "Sandy León",
"offense_factor": 0.9438,
"quality_score": -0.7496,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "506702",
"espn_id": 32101,
"player_name": "Sandy Leon",
"team": "ATL",
"role": "batter",
"espn_rank": 510,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 510,
"gp_value": 18.0,
"gp_rank": 408,
"ab_value": 36.0,
"ab_rank": 428,
"r_value": 0.0,
"r_rank": 526,
"h_value": 3.0,
"h_rank": 483,
"avg_value": 0.0833333,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 0.0,
"rbi_rank": 507,
"tb_value": 3.0,
"tb_rank": 2602,
"bb_value": 0.0,
"bb_rank": 510,
"so_value": 14.0,
"so_rank": 394,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.0833333,
"obp_rank": "-",
"slg_value": 0.0833333,
"slg_rank": "-",
"ops_value": 0.1666666,
"ops_rank": null,
"war_value": -0.46,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 18.0,
"k_percent": 38.9,
"bb_percent": 0.0,
"woba": 0.075,
"xwoba": 0.149,
"xba": 0.151,
"xslg": 0.192,
"sweet_spot_percent": 27.3,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 18.2,
"exit_velocity_avg": 82.1,
"launch_angle_avg": 21.4,
"whiff_percent": 28.9,
"swing_percent": 58.9
},
"components": {
"expected_quality": -2.2625,
"regression_edge": 2.0,
"xwoba_edge": -2.5,
"xba_edge": -2.4857,
"xslg_edge": -2.5,
"barrel_edge": -1.5333,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -2.5,
"sweet_spot_edge": -1.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_663586",
"player_id": "663586",
"player_name": "Austin Riley",
"offense_factor": 1.0106,
"quality_score": 0.1415,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663586",
"espn_id": 34982,
"player_name": "Austin Riley",
"team": "ATL",
"role": "batter",
"espn_rank": 307,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 307,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 247.0,
"ab_rank": 39,
"r_value": 31.0,
"r_rank": 79,
"h_value": 51.0,
"h_rank": 119,
"avg_value": 0.2064777,
"avg_rank": 154.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 34.0,
"rbi_rank": 55,
"tb_value": 87.0,
"tb_rank": 602,
"bb_value": 22.0,
"bb_rank": 105,
"so_value": 79.0,
"so_rank": 16,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.2851985,
"obp_rank": "143",
"slg_value": 0.3522267,
"slg_rank": "133",
"ops_value": 0.6374252,
"ops_rank": 276.0,
"war_value": 0.06,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 232.0,
"k_percent": 28.5,
"bb_percent": 7.9,
"woba": 0.287,
"xwoba": 0.301,
"xba": 0.21,
"xslg": 0.391,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 10.0,
"hard_hit_percent": 44.1,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 19.2,
"whiff_percent": 31.7,
"swing_percent": 47.2
},
"components": {
"expected_quality": 0.0994,
"regression_edge": 0.4,
"xwoba_edge": -0.0857,
"xba_edge": -0.8,
"xslg_edge": 0.2429,
"barrel_edge": 0.6889,
"hard_hit_edge": 0.8,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": -0.65,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "DH_573262",
"player_id": "573262",
"player_name": "Mike Yastrzemski",
"offense_factor": 0.9853,
"quality_score": -0.1957,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "573262",
"espn_id": 33341,
"player_name": "Mike Yastrzemski",
"team": "ATL",
"role": "batter",
"espn_rank": 189,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 189,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 171.0,
"ab_rank": 185,
"r_value": 26.0,
"r_rank": 136,
"h_value": 40.0,
"h_rank": 187,
"avg_value": 0.2339181,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 60.0,
"tb_rank": 1116,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 44.0,
"so_rank": 149,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3212435,
"obp_rank": "-",
"slg_value": 0.3508771,
"slg_rank": "-",
"ops_value": 0.6721206,
"ops_rank": null,
"war_value": 0.55,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 151.0,
"k_percent": 22.8,
"bb_percent": 9.3,
"woba": 0.306,
"xwoba": 0.293,
"xba": 0.231,
"xslg": 0.324,
"sweet_spot_percent": 29.9,
"barrel_batted_rate": 3.9,
"hard_hit_percent": 40.9,
"exit_velocity_avg": 90.6,
"launch_angle_avg": 16.1,
"whiff_percent": 24.3,
"swing_percent": 41.9
},
"components": {
"expected_quality": -0.2711,
"regression_edge": -0.3714,
"xwoba_edge": -0.3143,
"xba_edge": -0.2,
"xslg_edge": -0.7143,
"barrel_edge": -0.6667,
"hard_hit_edge": 0.3429,
"exit_velocity_edge": 0.72,
"sweet_spot_edge": -0.5667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH_642201",
"player_id": "642201",
"player_name": "Eli White",
"offense_factor": 0.9979,
"quality_score": -0.0282,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642201",
"espn_id": 39963,
"player_name": "Eli White",
"team": "ATL",
"role": "batter",
"espn_rank": 217,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 217,
"gp_value": 38.0,
"gp_rank": 300,
"ab_value": 73.0,
"ab_rank": 361,
"r_value": 11.0,
"r_rank": 310,
"h_value": 15.0,
"h_rank": 361,
"avg_value": 0.2054794,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 374,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 11.0,
"rbi_rank": 290,
"tb_value": 25.0,
"tb_rank": 1703,
"bb_value": 5.0,
"bb_rank": 364,
"so_value": 14.0,
"so_rank": 394,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.2625,
"obp_rank": "-",
"slg_value": 0.3424657,
"slg_rank": "-",
"ops_value": 0.6049657,
"ops_rank": null,
"war_value": 0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 72.0,
"k_percent": 17.5,
"bb_percent": 6.3,
"woba": 0.269,
"xwoba": 0.294,
"xba": 0.253,
"xslg": 0.352,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 35.0,
"exit_velocity_avg": 87.3,
"launch_angle_avg": 4.3,
"whiff_percent": 27.3,
"swing_percent": 49.2
},
"components": {
"expected_quality": -0.1892,
"regression_edge": 0.7143,
"xwoba_edge": -0.2857,
"xba_edge": 0.4286,
"xslg_edge": -0.3143,
"barrel_edge": -0.0444,
"hard_hit_edge": -0.5,
"exit_velocity_edge": -0.6,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH_642086",
"player_id": "642086",
"player_name": "Dominic Smith",
"offense_factor": 1.0335,
"quality_score": 0.4463,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642086",
"espn_id": 33218,
"player_name": "Dominic Smith",
"team": "ATL",
"role": "batter",
"espn_rank": 177,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 177,
"gp_value": 55.0,
"gp_rank": 181,
"ab_value": 148.0,
"ab_rank": 220,
"r_value": 24.0,
"r_rank": 157,
"h_value": 43.0,
"h_rank": 167,
"avg_value": 0.2905405,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 28.0,
"rbi_rank": 108,
"tb_value": 67.0,
"tb_rank": 986,
"bb_value": 9.0,
"bb_rank": 286,
"so_value": 22.0,
"so_rank": 319,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3291925,
"obp_rank": "-",
"slg_value": 0.4527027,
"slg_rank": "-",
"ops_value": 0.7818952,
"ops_rank": null,
"war_value": 0.62,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 116.0,
"k_percent": 13.6,
"bb_percent": 5.6,
"woba": 0.341,
"xwoba": 0.351,
"xba": 0.292,
"xslg": 0.467,
"sweet_spot_percent": 37.7,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 36.9,
"exit_velocity_avg": 89.3,
"launch_angle_avg": 15.8,
"whiff_percent": 19.4,
"swing_percent": 53.7
},
"components": {
"expected_quality": 0.9377,
"regression_edge": 0.2857,
"xwoba_edge": 1.3429,
"xba_edge": 1.5429,
"xslg_edge": 1.3286,
"barrel_edge": 0.2,
"hard_hit_edge": -0.2286,
"exit_velocity_edge": 0.2,
"sweet_spot_edge": 0.7333,
"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 ATL | True | 66 | -0.1343 | 0.7360 | 1.0114 | 0.9786 | 0.9985 | 1.0120 | negative_pitcher_regression | 0.3170 | 0.2850 | 20.90 | 8.90 | 22.30 | 7.70 | 39.70 | |
| Home CHW | True | 155 | -0.7449 | 0.9280 | 1.0633 | 0.9385 | 1.0056 | 1.1118 | neutral | 0.3720 | 0.3550 | 16.50 | 9.30 | 20.20 | 10.30 | 41.60 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away ATL | True | None | 47 | 85.45 | 1967 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.2387 | |
| Home CHW | True | None | 90 | 90.30 | 2236 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0330 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0587 |
| home_runs_vs_away_pitcher | 1.0084 |
| home_pitcher_quality_edge | -0.6106 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "641743",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 232.0,
"k_percent": 16.5,
"bb_percent": 9.3,
"woba": 0.355,
"xwoba": 0.372,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 41.6,
"avg_best_speed": 78.0142,
"avg_hyper_speed": 94.8397,
"whiff_percent": 20.2,
"swing_percent": 45.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.034,
"command_and_miss": -0.6836,
"regression_edge": -0.4857,
"xwoba_edge": -1.6286,
"barrel_edge": -0.6667,
"hard_hit_edge": -0.4571,
"whiff_edge": -0.7714,
"bb_edge": -0.075,
"pitch_design_score": 0.033
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641743",
"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.30335745660126,
"release_spin_rate": 2235.737728378803,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.30335745660126,
"release_spin_rate": 2235.737728378803,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3034,
"release_spin_rate": 2235.7377,
"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.033,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2358,
"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.7449,
"sample_weight": 0.928,
"run_prevention_factor": 1.0633,
"strikeout_factor": 0.9385,
"walk_factor": 1.0056,
"homer_factor": 1.1118,
"woba_minus_xwoba": -0.017,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641743",
"espn_id": 40947,
"player_name": "Anthony Kay",
"team": "CHW",
"role": "pitcher",
"espn_rank": 155,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 155,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 11.0,
"gs_rank": 88,
"qs_value": 2.0,
"qs_rank": 107,
"era_value": 4.4021,
"era_rank": null,
"w_value": 5.0,
"w_rank": 30,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 61.1,
"ip_rank": 90,
"h_value": 63.0,
"h_rank": 62,
"er_value": 30.0,
"er_rank": 67,
"hr_value": 10.0,
"hr_rank": 41,
"bb_value": 26.0,
"bb_rank": 33,
"k_value": 46.0,
"k_rank": 114,
"k_per_9_value": 6.75,
"k_per_9_rank": 34,
"whip_value": 1.451,
"whip_rank": null,
"war_value": 0.59,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "527048",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 184.0,
"k_percent": 20.9,
"bb_percent": 8.9,
"woba": 0.285,
"xwoba": 0.317,
"sweet_spot_percent": 36.5,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 39.7,
"avg_best_speed": 78.0297,
"avg_hyper_speed": 94.2622,
"whiff_percent": 22.3,
"swing_percent": 43.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.0005,
"command_and_miss": -0.2757,
"regression_edge": -0.9143,
"xwoba_edge": -0.0571,
"barrel_edge": -0.0889,
"hard_hit_edge": -0.1857,
"whiff_edge": -0.4714,
"bb_edge": 0.025,
"pitch_design_score": -0.2387
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "527048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 47,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 47,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 47,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.4512,
"release_spin_rate": 1966.6648,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2387,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.705,
"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.1343,
"sample_weight": 0.736,
"run_prevention_factor": 1.0114,
"strikeout_factor": 0.9786,
"walk_factor": 0.9985,
"homer_factor": 1.012,
"woba_minus_xwoba": -0.032,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "527048",
"espn_id": 31098,
"player_name": "Martin Perez",
"team": "ATL",
"role": "pitcher",
"espn_rank": 66,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 66,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 9.0,
"gs_rank": 116,
"qs_value": 1.0,
"qs_rank": 131,
"era_value": 3.0176,
"era_rank": null,
"w_value": 4.0,
"w_rank": 56,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 56.2,
"ip_rank": 112,
"h_value": 40.0,
"h_rank": 130,
"er_value": 19.0,
"er_rank": 143,
"hr_value": 6.0,
"hr_rank": 108,
"bb_value": 20.0,
"bb_rank": 96,
"k_value": 47.0,
"k_rank": 108,
"k_per_9_value": 7.464706,
"k_per_9_rank": 26,
"whip_value": 1.0588,
"whip_rank": null,
"war_value": 1.19,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0587,
"home_runs_vs_away_pitcher": 1.0084,
"home_pitcher_quality_edge": -0.6106
},
"score_before": {
"away_runs": 2.0,
"home_runs": 2.0
},
"score_after": {
"away_runs": 2.1175,
"home_runs": 2.0168,
"home_win_probability": 0.4804
},
"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 ATL | 17-41 | 0.293 | 1.20 | 2.70 | -83 | cold | strong | |
| Home CHW | 20-44 | 0.312 | 1.40 | 2.30 | -58 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away ATL | 45-23 | 0.662 | 114 | 1.676 | True |
| Home CHW | 36-31 | 0.537 | 10 | 0.149 | True |
| Signal | - | - | -1.527 | -1.714 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target ATL | - | - | 4 | - | - | - | - |
| Game target CHW | - | - | 2 | - | - | - | - |
| Player finalized ATL | 49 | 13 | 8 | 1 | 6 | 5 | 11 |
| Player finalized CHW | 48 | 11 | 6 | 0 | 8 | 6 | 13 |
| Player model fractional ATL | 48.54 | 12.22 | 7.06 | 1.78 | 7.14 | 3.94 | 10.50 |
| Player model fractional CHW | 47.06 | 10.48 | 6.62 | 1.63 | 5.58 | 5.13 | 12.31 |
| Simulation box ATL | 38 | 11 | 6 | 2 | 6 | 6 | 9 |
| Simulation box CHW | 30 | 3 | 2 | 1 | 2 | 1 | 8 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away ATL | Starter | Martín Pérez | 5.10 | 2 | 5 | 3 | 1 | 3.75 | 1.19 | True |
| Away ATL | Middle Reliever | Dylan Lee | 1.10 | 0 | 2 | 0 | 0 | 2.45 | 1.01 | True |
| Away ATL | Middle Reliever | Raisel Iglesias | 1 | 0 | 1 | 0 | 0 | 3.19 | 1.23 | True |
| Away ATL | Middle Reliever | Robert Suarez | 1.10 | 0 | 0 | 0 | 0 | 2.24 | 0.96 | True |
| Home CHW | Starter | Anthony Kay | 6.10 | 1 | 8 | 6 | 3 | 3.26 | 1.28 | True |
| Home CHW | Middle Reliever | Grant Taylor | 1 | 0 | 0 | 0 | 0 | 3.54 | 1.26 | True |
| Home CHW | Middle Reliever | Bryan Hudson | 0.20 | 0 | 1 | 0 | 1 | 3.51 | 1.28 | True |
| Home CHW | Middle Reliever | Sean Newcomb | 1 | 4 | 0 | 4 | 2 | 4.66 | 1.36 | True |
| Home CHW | Middle Reliever | Seranthony Domínguez | 0 | 1 | 0 | 1 | 0 | 4.83 | 1.41 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | ATL | batter | DH | Ozzie Albies | better | 11 | 9 | 2 | 8 | 3 | predicted_RBI | 2.4400 | boost | better |
| away | ATL | batter | CF | Eli White | worse | 12 | 3 | 9 | 2 | 10 | predicted_SO | 2.4030 | boost | worse |
| away | ATL | batter | 3B | Sandy León | worse | 10 | 5 | 5 | 4 | 6 | predicted_BB | 2.0000 | boost | better |
| home | CHW | pitcher | Starter | Anthony Kay | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 2.0000 | boost | better |
| home | CHW | pitcher | Middle Reliever | Seranthony Domínguez | worse | 2 | 0 | 2 | 0 | 2 | predicted_SO | -2.0000 | deboost | worse |
| home | CHW | batter | 2B | Tristan Peters | worse | 10 | 4 | 6 | 3 | 7 | predicted_H | 1.6300 | boost | better |
| away | ATL | batter | RF | Dominic Smith | worse | 11 | 5 | 6 | 4 | 7 | predicted_SO | 1.5200 | boost | worse |
| home | CHW | batter | 1B | Colson Montgomery | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_RBI | 1.4500 | boost | better |
| away | ATL | batter | SS | Austin Riley | better | 10 | 5 | 5 | 6 | 4 | predicted_SO | -1.2530 | deboost | better |
| home | CHW | batter | CF | Miguel Vargas | worse | 10 | 1 | 9 | 0 | 10 | predicted_SO | 1.2330 | boost | worse |
| home | CHW | batter | RF | Andrew Benintendi | worse | 11 | 0 | 11 | 1 | 10 | predicted_SO | -1.0770 | deboost | better |
| home | CHW | batter | C | Chase Meidroth | worse | 10 | 1 | 9 | 1 | 9 | predicted_H | -1.0300 | deboost | worse |
| away | ATL | batter | 2B | Matt Olson | better | 11 | 5 | 6 | 6 | 5 | predicted_SO | -0.9960 | deboost | better |
| home | CHW | batter | SS | Derek Hill | worse | 9 | 1 | 8 | 2 | 7 | predicted_SO | -0.9340 | deboost | better |
| home | CHW | pitcher | Middle Reliever | Sean Newcomb | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.9000 | boost | better |
| away | ATL | batter | 1B | Michael Harris II | better | 10 | 8 | 2 | 7 | 3 | predicted_H | 0.8800 | boost | better |
| home | CHW | batter | DH | Jacob Gonzalez | worse | 7 | 1 | 6 | 1 | 6 | predicted_H | -0.8500 | deboost | worse |
| home | CHW | batter | LF | Sam Antonacci | worse | 11 | 1 | 10 | 0 | 11 | predicted_H | -0.8500 | deboost | worse |
| away | ATL | batter | LF | Mike Yastrzemski | worse | 11 | 4 | 7 | 3 | 8 | predicted_AB | 0.7850 | boost | better |
| away | ATL | batter | C | Mauricio Dubón | better | 9 | 5 | 4 | 6 | 3 | predicted_2B | 0.7600 | boost | better |
| away | ATL | pitcher | Starter | Martín Pérez | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.5667 | deboost | worse |
| home | CHW | batter | 3B | Drew Romo | worse | 10 | 0 | 10 | 0 | 10 | predicted_BB | -0.4930 | deboost | worse |
| home | CHW | pitcher | Middle Reliever | Bryan Hudson | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | ATL | pitcher | Middle Reliever | Dylan Lee | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| away | ATL | pitcher | Middle Reliever | Robert Suarez | 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 | Martín Pérez |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1343 |
| ESPN Rank | 66 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2387 |
| Avg Velo | 85.4512 |
| Avg Spin | 1966.6648 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 2 |
| Pre H | 3 |
| Pre BB | 1 |
| Pre SO | 5 |
| Season ERA | 3.0176 |
| Season WHIP | 1.0588 |
| Role Avg IP | 5.2590 |
| Recent Avg IP | 5.2670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"opponent": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"edges": {
"quality_edge": 0.3635,
"offense_edge": 0.1327,
"opponent_offense_edge": 0.0458,
"defense_strength": 0.3296,
"opponent_defense_weakness": 0.0519,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0226,
"run_prevention": 0.9562,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "527048",
"profile": {
"available": true,
"pitcher_id": "527048",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 184.0,
"k_percent": 20.9,
"bb_percent": 8.9,
"woba": 0.285,
"xwoba": 0.317,
"sweet_spot_percent": 36.5,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 39.7,
"avg_best_speed": 78.0297,
"avg_hyper_speed": 94.2622,
"whiff_percent": 22.3,
"swing_percent": 43.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.0005,
"command_and_miss": -0.2757,
"regression_edge": -0.9143,
"xwoba_edge": -0.0571,
"barrel_edge": -0.0889,
"hard_hit_edge": -0.1857,
"whiff_edge": -0.4714,
"bb_edge": 0.025,
"pitch_design_score": -0.2387
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "527048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 47,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 47,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 47,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.4512,
"release_spin_rate": 1966.6648,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2387,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.705,
"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.1343,
"sample_weight": 0.736,
"run_prevention_factor": 1.0114,
"strikeout_factor": 0.9786,
"walk_factor": 0.9985,
"homer_factor": 1.012,
"woba_minus_xwoba": -0.032,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "527048",
"espn_id": 31098,
"player_name": "Martin Perez",
"team": "ATL",
"role": "pitcher",
"espn_rank": 66,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 66,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 9.0,
"gs_rank": 116,
"qs_value": 1.0,
"qs_rank": 131,
"era_value": 3.0176,
"era_rank": null,
"w_value": 4.0,
"w_rank": 56,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 56.2,
"ip_rank": 112,
"h_value": 40.0,
"h_rank": 130,
"er_value": 19.0,
"er_rank": 143,
"hr_value": 6.0,
"hr_rank": 108,
"bb_value": 20.0,
"bb_rank": 96,
"k_value": 47.0,
"k_rank": 108,
"k_per_9_value": 7.464706,
"k_per_9_rank": 26,
"whip_value": 1.0588,
"whip_rank": null,
"war_value": 1.19,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0084,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0084,
"adjusted": 4
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9989,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0088,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9842,
"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": 42.1,
"ER": 14,
"H": 31,
"BB": 16,
"SO": 41,
"HR": 5,
"ERA": 2.9763779527559056,
"WHIP": 1.110236220472441,
"K9": 8.716535433070865,
"HR9": 1.0629921259842519,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "527048",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 47,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 47,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 47,
"pitch_usage": 0.0,
"release_speed": 85.45123859333805,
"release_spin_rate": 1966.6647703525239,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 85.4512,
"release_spin_rate": 1966.6648,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2387,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.705,
"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": "527048",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 21.2,
"ER": 10.0,
"R": 10.0,
"H": 17.0,
"BB": 9.0,
"SO": 21.0,
"HR": 2.0,
"BF": 88.0,
"Pitches": 344.0
},
"per_game": {
"IP": 4.1,
"ER": 2.0,
"R": 2.0,
"H": 3.4,
"BB": 1.8,
"SO": 4.2,
"HR": 0.4,
"BF": 17.6,
"Pitches": 68.8
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.2,
"ER_per_IP": 0.46154,
"H_per_IP": 0.78462,
"BB_per_IP": 0.41538,
"SO_per_IP": 0.96923,
"HR_per_IP": 0.09231
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 42.1,
"ER": 14.0,
"R": 14.0,
"H": 31.0,
"BB": 16.0,
"SO": 41.0,
"HR": 5.0,
"BF": 172.0,
"Pitches": 677.0
},
"per_game": {
"IP": 4.1,
"ER": 1.4,
"R": 1.4,
"H": 3.1,
"BB": 1.6,
"SO": 4.1,
"HR": 0.5,
"BF": 17.2,
"Pitches": 67.7
},
"rates": {
"ERA": 2.9764,
"WHIP": 1.1102,
"ER_per_IP": 0.33071,
"H_per_IP": 0.73228,
"BB_per_IP": 0.37795,
"SO_per_IP": 0.9685,
"HR_per_IP": 0.11811
}
},
"season": {
"games": 13,
"totals": {
"IP": 56.2,
"ER": 19.0,
"R": 19.0,
"H": 40.0,
"BB": 20.0,
"SO": 47.0,
"HR": 6.0,
"BF": 225.0,
"Pitches": 885.0
},
"per_game": {
"IP": 4.1,
"ER": 1.4615,
"R": 1.4615,
"H": 3.0769,
"BB": 1.5385,
"SO": 3.6154,
"HR": 0.4615,
"BF": 17.3077,
"Pitches": 68.0769
},
"rates": {
"ERA": 3.0176,
"WHIP": 1.0588,
"ER_per_IP": 0.33529,
"H_per_IP": 0.70588,
"BB_per_IP": 0.35294,
"SO_per_IP": 0.82941,
"HR_per_IP": 0.10588
}
}
},
"weighted_prediction": {
"predicted_IP": 4.2,
"predicted_ER": 1.962,
"predicted_H": 3.804,
"predicted_BB": 1.801,
"predicted_SO": 4.419,
"predicted_HR": 0.538,
"predicted_ERA": 3.7534,
"predicted_WHIP": 1.1916
}
}{
"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": 4.2,
"final": 5.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 1.962,
"final": 1.9798,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 3.804,
"final": 3.4282,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.801,
"final": 1.4266,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 4.419,
"final": 4.6905,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.538,
"final": 0.7539,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7534,
"final": 3.7534,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1916,
"final": 1.1916,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Dylan Lee |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5805 |
| ESPN Rank | 64 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 1.1613 |
| Season WHIP | 0.6129 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"opponent": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"edges": {
"quality_edge": 0.3635,
"offense_edge": 0.1327,
"opponent_offense_edge": 0.0458,
"defense_strength": 0.3296,
"opponent_defense_weakness": 0.0519,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0226,
"run_prevention": 0.9562,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669276",
"profile": {
"available": true,
"pitcher_id": "669276",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 93.0,
"k_percent": 34.8,
"bb_percent": 4.5,
"woba": 0.18,
"xwoba": 0.212,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 4.4,
"hard_hit_percent": 32.4,
"avg_best_speed": 76.0597,
"avg_hyper_speed": 92.8538,
"whiff_percent": 38.8,
"swing_percent": 53.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.6949,
"command_and_miss": 1.6629,
"regression_edge": -0.9143,
"xwoba_edge": 2.5,
"barrel_edge": 0.6444,
"hard_hit_edge": 0.8571,
"whiff_edge": 1.8857,
"bb_edge": 1.125,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "669276",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.5805,
"sample_weight": 0.45,
"run_prevention_factor": 0.9507,
"strikeout_factor": 1.0651,
"walk_factor": 0.9595,
"homer_factor": 0.9276,
"woba_minus_xwoba": -0.032,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "669276",
"espn_id": 41455,
"player_name": "Dylan Lee",
"team": "ATL",
"role": "pitcher",
"espn_rank": 64,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 64,
"gp_value": 32.0,
"gp_rank": 8,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.1612,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 13.0,
"hld_rank": 6,
"ip_value": 31.0,
"ip_rank": 199,
"h_value": 14.0,
"h_rank": 410,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 5.0,
"bb_rank": 454,
"k_value": 39.0,
"k_rank": 147,
"k_per_9_value": 11.32258,
"k_per_9_rank": 19,
"whip_value": 0.6129,
"whip_rank": null,
"war_value": 1.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9778,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9778,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9818,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9674,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0293,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.2,
"ER": 2,
"H": 6,
"BB": 3,
"SO": 13,
"HR": 1,
"ERA": 1.8620689655172415,
"WHIP": 0.9310344827586208,
"K9": 12.10344827586207,
"HR9": 0.9310344827586208,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "669276",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.124,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5505,
"prior_weight": 0.4495
},
"role": "pitcher",
"player_id": "669276",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 0.0,
"R": 0.0,
"H": 1.0,
"BB": 2.0,
"SO": 6.0,
"HR": 0.0,
"BF": 16.0,
"Pitches": 66.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.2,
"BB": 0.4,
"SO": 1.2,
"HR": 0.0,
"BF": 3.2,
"Pitches": 13.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6923,
"ER_per_IP": 0.0,
"H_per_IP": 0.23077,
"BB_per_IP": 0.46154,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 2.0,
"R": 3.0,
"H": 6.0,
"BB": 3.0,
"SO": 13.0,
"HR": 1.0,
"BF": 38.0,
"Pitches": 156.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.6,
"BB": 0.3,
"SO": 1.3,
"HR": 0.1,
"BF": 3.8,
"Pitches": 15.6
},
"rates": {
"ERA": 1.8621,
"WHIP": 0.931,
"ER_per_IP": 0.2069,
"H_per_IP": 0.62069,
"BB_per_IP": 0.31034,
"SO_per_IP": 1.34483,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 32,
"totals": {
"IP": 31.0,
"ER": 4.0,
"R": 5.0,
"H": 14.0,
"BB": 5.0,
"SO": 39.0,
"HR": 1.0,
"BF": 112.0,
"Pitches": 456.0
},
"per_game": {
"IP": 1.0,
"ER": 0.125,
"R": 0.1562,
"H": 0.4375,
"BB": 0.1562,
"SO": 1.2188,
"HR": 0.0312,
"BF": 3.5,
"Pitches": 14.25
},
"rates": {
"ERA": 1.1613,
"WHIP": 0.6129,
"ER_per_IP": 0.12903,
"H_per_IP": 0.45161,
"BB_per_IP": 0.16129,
"SO_per_IP": 1.25806,
"HR_per_IP": 0.03226
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.273,
"predicted_H": 0.658,
"predicted_BB": 0.356,
"predicted_SO": 1.161,
"predicted_HR": 0.087,
"predicted_ERA": 2.4529,
"predicted_WHIP": 1.0139
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5399,
"form_weight": 0.4601,
"form_reliability": 0.5505,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.124,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5505,
"prior_weight": 0.4495
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.273,
"final": 0.1256,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.658,
"final": 0.3027,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.356,
"final": 0.1638,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.161,
"final": 1.614,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.087,
"final": 0.04,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.4529,
"final": 2.4529,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0139,
"final": 1.0139,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Raisel Iglesias |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5328 |
| ESPN Rank | 96 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1378 |
| Avg Velo | 92.1747 |
| Avg Spin | 2190.7643 |
| 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.2090 |
| Season WHIP | 0.9403 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"opponent": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"edges": {
"quality_edge": 0.3635,
"offense_edge": 0.1327,
"opponent_offense_edge": 0.0458,
"defense_strength": 0.3296,
"opponent_defense_weakness": 0.0519,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0226,
"run_prevention": 0.9562,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "628452",
"profile": {
"available": true,
"pitcher_id": "628452",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 63.0,
"k_percent": 30.6,
"bb_percent": 4.7,
"woba": 0.239,
"xwoba": 0.231,
"sweet_spot_percent": 27.3,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 29.1,
"avg_best_speed": 78.3652,
"avg_hyper_speed": 92.4223,
"whiff_percent": 32.8,
"swing_percent": 55.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.5512,
"command_and_miss": 1.0829,
"regression_edge": 0.2286,
"xwoba_edge": 2.4,
"barrel_edge": 0.3778,
"hard_hit_edge": 1.3286,
"whiff_edge": 1.0286,
"bb_edge": 1.075,
"pitch_design_score": 0.1378
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "628452",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 25,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 25,
"pitch_usage": 0.0,
"release_speed": 92.17465607579985,
"release_spin_rate": 2190.764271378776,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 25,
"pitch_usage": 0.0,
"release_speed": 92.17465607579985,
"release_spin_rate": 2190.764271378776,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1747,
"release_spin_rate": 2190.7643,
"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.1378,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9844,
"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.5328,
"sample_weight": 0.45,
"run_prevention_factor": 0.9547,
"strikeout_factor": 1.0388,
"walk_factor": 0.9613,
"homer_factor": 0.9301,
"woba_minus_xwoba": 0.008,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "628452",
"espn_id": 33618,
"player_name": "Raisel Iglesias",
"team": "ATL",
"role": "pitcher",
"espn_rank": 96,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 96,
"gp_value": 21.0,
"gp_rank": 147,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.2089,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 13.0,
"sv_rank": 7,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 22.1,
"ip_rank": 334,
"h_value": 17.0,
"h_rank": 363,
"er_value": 3.0,
"er_rank": 544,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 4.0,
"bb_rank": 490,
"k_value": 26.0,
"k_rank": 264,
"k_per_9_value": 10.477612,
"k_per_9_rank": 21,
"whip_value": 0.9402,
"whip_rank": null,
"war_value": 0.94,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9796,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9796,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9826,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9685,
"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": 10.2,
"ER": 3,
"H": 11,
"BB": 3,
"SO": 11,
"HR": 1,
"ERA": 2.5312499999999996,
"WHIP": 1.3124999999999998,
"K9": 9.281249999999998,
"HR9": 0.8437499999999999,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-09T00:00:00"
}{
"available": true,
"pitcher_id": "628452",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 25,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 25,
"pitch_usage": 0.0,
"release_speed": 92.17465607579985,
"release_spin_rate": 2190.764271378776,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 25,
"pitch_usage": 0.0,
"release_speed": 92.17465607579985,
"release_spin_rate": 2190.764271378776,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1747,
"release_spin_rate": 2190.7643,
"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.1378,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9844,
"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.412,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4688,
"prior_weight": 0.5312
},
"role": "pitcher",
"player_id": "628452",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 21,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 1.0,
"R": 2.0,
"H": 5.0,
"BB": 1.0,
"SO": 6.0,
"HR": 1.0,
"BF": 22.0,
"Pitches": 93.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.4,
"H": 1.0,
"BB": 0.2,
"SO": 1.2,
"HR": 0.2,
"BF": 4.4,
"Pitches": 18.6
},
"rates": {
"ERA": 1.5882,
"WHIP": 1.0588,
"ER_per_IP": 0.17647,
"H_per_IP": 0.88235,
"BB_per_IP": 0.17647,
"SO_per_IP": 1.05882,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 3.0,
"R": 4.0,
"H": 11.0,
"BB": 3.0,
"SO": 11.0,
"HR": 1.0,
"BF": 44.0,
"Pitches": 169.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.4,
"H": 1.1,
"BB": 0.3,
"SO": 1.1,
"HR": 0.1,
"BF": 4.4,
"Pitches": 16.9
},
"rates": {
"ERA": 2.5312,
"WHIP": 1.3125,
"ER_per_IP": 0.28125,
"H_per_IP": 1.03125,
"BB_per_IP": 0.28125,
"SO_per_IP": 1.03125,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 21,
"totals": {
"IP": 22.1,
"ER": 3.0,
"R": 4.0,
"H": 17.0,
"BB": 4.0,
"SO": 26.0,
"HR": 1.0,
"BF": 85.0,
"Pitches": 327.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1429,
"R": 0.1905,
"H": 0.8095,
"BB": 0.1905,
"SO": 1.2381,
"HR": 0.0476,
"BF": 4.0476,
"Pitches": 15.5714
},
"rates": {
"ERA": 1.209,
"WHIP": 0.9403,
"ER_per_IP": 0.13433,
"H_per_IP": 0.76119,
"BB_per_IP": 0.1791,
"SO_per_IP": 1.16418,
"HR_per_IP": 0.04478
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.354,
"predicted_H": 0.937,
"predicted_BB": 0.294,
"predicted_SO": 0.999,
"predicted_HR": 0.132,
"predicted_ERA": 3.1874,
"predicted_WHIP": 1.2306
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5744,
"form_weight": 0.4256,
"form_reliability": 0.4688,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.412,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4688,
"prior_weight": 0.5312
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.354,
"final": 0.1507,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.937,
"final": 0.3988,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.294,
"final": 0.1251,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.999,
"final": 0.9996,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.132,
"final": 0.0562,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.1874,
"final": 3.1874,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2306,
"final": 1.2306,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Robert Suarez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2682 |
| ESPN Rank | 47 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 0.6067 |
| Season WHIP | 0.8090 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"opponent": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"edges": {
"quality_edge": 0.3635,
"offense_edge": 0.1327,
"opponent_offense_edge": 0.0458,
"defense_strength": 0.3296,
"opponent_defense_weakness": 0.0519,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 1.0226,
"run_prevention": 0.9562,
"strikeout": 1.0072
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663158",
"profile": {
"available": true,
"pitcher_id": "663158",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 88.0,
"k_percent": 22.5,
"bb_percent": 4.5,
"woba": 0.201,
"xwoba": 0.272,
"sweet_spot_percent": 32.5,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 31.3,
"avg_best_speed": 71.6489,
"avg_hyper_speed": 92.7202,
"whiff_percent": 25.6,
"swing_percent": 53.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.3229,
"command_and_miss": 0.2121,
"regression_edge": -2.0,
"xwoba_edge": 1.2286,
"barrel_edge": 0.7778,
"hard_hit_edge": 1.0143,
"whiff_edge": 0.0,
"bb_edge": 1.125,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "663158",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2682,
"sample_weight": 0.45,
"run_prevention_factor": 0.9772,
"strikeout_factor": 0.9995,
"walk_factor": 0.9595,
"homer_factor": 0.9372,
"woba_minus_xwoba": -0.071,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663158",
"espn_id": 4148749,
"player_name": "Robert Suarez",
"team": "ATL",
"role": "pitcher",
"espn_rank": 47,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 47,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 0.6067,
"era_rank": null,
"w_value": 4.0,
"w_rank": 56,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 4.0,
"sv_rank": 29,
"hld_value": 10.0,
"hld_rank": 18,
"ip_value": 29.2,
"ip_rank": 220,
"h_value": 19.0,
"h_rank": 317,
"er_value": 2.0,
"er_rank": 573,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 5.0,
"bb_rank": 454,
"k_value": 25.0,
"k_rank": 277,
"k_per_9_value": 7.5842695,
"k_per_9_rank": 33,
"whip_value": 0.8089,
"whip_rank": null,
"war_value": 1.45,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9897,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9897,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9818,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9717,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9998,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.1,
"ER": 1,
"H": 6,
"BB": 1,
"SO": 6,
"HR": 1,
"ERA": 0.870967741935484,
"WHIP": 0.6774193548387097,
"K9": 5.225806451612904,
"HR9": 0.870967741935484,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": true,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-09T00:00:00"
}{
"available": false,
"pitcher_id": "663158",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.861,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5396,
"prior_weight": 0.4604
},
"role": "pitcher",
"player_id": "663158",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 0.0,
"SO": 3.0,
"HR": 0.0,
"BF": 18.0,
"Pitches": 56.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.0,
"SO": 0.6,
"HR": 0.0,
"BF": 3.6,
"Pitches": 11.2
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5625,
"ER_per_IP": 0.0,
"H_per_IP": 0.5625,
"BB_per_IP": 0.0,
"SO_per_IP": 0.5625,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 1.0,
"SO": 6.0,
"HR": 1.0,
"BF": 37.0,
"Pitches": 126.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.6,
"BB": 0.1,
"SO": 0.6,
"HR": 0.1,
"BF": 3.7,
"Pitches": 12.6
},
"rates": {
"ERA": 0.871,
"WHIP": 0.6774,
"ER_per_IP": 0.09677,
"H_per_IP": 0.58065,
"BB_per_IP": 0.09677,
"SO_per_IP": 0.58065,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 29,
"totals": {
"IP": 29.2,
"ER": 2.0,
"R": 2.0,
"H": 19.0,
"BB": 5.0,
"SO": 25.0,
"HR": 1.0,
"BF": 111.0,
"Pitches": 424.0
},
"per_game": {
"IP": 1.0,
"ER": 0.069,
"R": 0.069,
"H": 0.6552,
"BB": 0.1724,
"SO": 0.8621,
"HR": 0.0345,
"BF": 3.8276,
"Pitches": 14.6207
},
"rates": {
"ERA": 0.6067,
"WHIP": 0.809,
"ER_per_IP": 0.06742,
"H_per_IP": 0.64045,
"BB_per_IP": 0.16854,
"SO_per_IP": 0.8427,
"HR_per_IP": 0.03371
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.249,
"predicted_H": 0.757,
"predicted_BB": 0.205,
"predicted_SO": 0.768,
"predicted_HR": 0.087,
"predicted_ERA": 2.2439,
"predicted_WHIP": 0.9618
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5445,
"form_weight": 0.4555,
"form_reliability": 0.5396,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.861,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5396,
"prior_weight": 0.4604
},
"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.1134,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.757,
"final": 0.3448,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.205,
"final": 0.0934,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.768,
"final": 0.3498,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.087,
"final": 0.0396,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.2439,
"final": 2.2439,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9618,
"final": 0.9618,
"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.181 | 0.000 | 0.000 | Hitting_2B | 0.181 | 0.000 | -0.181 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.310 | 5.000 | 7.000 | Hitting_AB | 3.909 | 5.000 | 1.091 | 0.000 |
| predicted_AVG | 0.248 | 0.400 | 0.286 | Hitting_AVG | 0.279 | 0.200 | 0.121 | 0.200 |
| predicted_BB | 0.335 | 0.000 | 1.000 | Hitting_BB | 0.335 | 0.000 | -0.335 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.055 | 0.000 | -0.055 | 0.000 |
| predicted_H | 1.070 | 2.000 | 2.000 | Hitting_H | 1.091 | 1.000 | 0.909 | 1.000 |
| predicted_HR | 0.120 | 1.000 | 0.000 | Hitting_HR | 0.157 | 0.000 | 0.843 | 1.000 |
| predicted_OBP | 0.332 | 0.400 | 0.375 | Hitting_OBP | 0.337 | 0.200 | 0.063 | 0.200 |
| predicted_R | 0.657 | 1.000 | 1.000 | Hitting_R | 0.657 | 0.000 | 0.343 | 1.000 |
| predicted_RBI | 0.560 | 3.000 | 1.000 | Hitting_RBI | 0.539 | 0.000 | 2.461 | 3.000 |
| predicted_SLG | 0.423 | 1.000 | 0.286 | Hitting_SLG | 0.446 | 0.200 | 0.554 | 0.800 |
| predicted_SO | 0.547 | 1.000 | 1.000 | Hitting_SO | 0.547 | 0.000 | 0.453 | 1.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_RBI: 0.5600 -> 3.0000 (boost 2.4400, better) |
| Biggest Deboost | predicted_BB: 0.3350 -> 0.0000 (deboost -0.3350, 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.3100 -> 6.8167 (boost 2.5067, 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_R: 1.1139 -> 1.1768 (boost 0.0629, 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 | 3 | 3 | predicted_BB: 0.6007 -> 1.0000 (boost 0.3993, better) | predicted_2B: 0.4256 -> 0.0000 (deboost -0.4256, worse) | AB rounded to 7 (raw=6.82), rates preserved: AVG=0.283 HR/AB=0.030 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1768 -> 1.0000 (deboost -0.1768, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3409 -> 0.3750 (boost 0.0341, better) | predicted_SLG: 0.4365 -> 0.2860 (deboost -0.1505, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 2 | 2 | 2 | 2 | predicted_RBI: 1.0000 -> 3.0000 (boost 2.0000, better) | 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.4365 (boost 0.1505, better) | predicted_OBP: 0.3750 -> 0.3409 (deboost -0.0341, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "645277",
"player_name": "Ozzie Albies",
"position": "DH",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.181,
"predicted_3B": 0.0,
"predicted_AB": 4.31,
"predicted_AVG": 0.248,
"predicted_BB": 0.335,
"predicted_H": 1.07,
"predicted_HR": 0.12,
"predicted_OBP": 0.332,
"predicted_R": 0.657,
"predicted_RBI": 0.56,
"predicted_SLG": 0.423,
"predicted_SO": 0.547
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4256,
"predicted_3B": 0.0004,
"predicted_AB": 6.8167,
"predicted_AVG": 0.2657,
"predicted_BB": 0.5911,
"predicted_H": 1.868,
"predicted_HBP": 0.254,
"predicted_HR": 0.1992,
"predicted_OBP": 0.338,
"predicted_R": 1.1139,
"predicted_RBI": 0.9563,
"predicted_SLG": 0.4357,
"predicted_SO": 1.0672
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 0.4256,
"delta": 0.2446,
"percent_delta": 1.3514,
"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": 6.8167,
"delta": 2.5067,
"percent_delta": 0.5816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2657,
"delta": 0.0177,
"percent_delta": 0.0714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.335,
"after": 0.5911,
"delta": 0.2561,
"percent_delta": 0.7645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.868,
"delta": 0.798,
"percent_delta": 0.7458,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1992,
"delta": 0.0792,
"percent_delta": 0.66,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.338,
"delta": 0.006,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.657,
"after": 1.1139,
"delta": 0.4569,
"percent_delta": 0.6954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.9563,
"delta": 0.3963,
"percent_delta": 0.7077,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.423,
"after": 0.4357,
"delta": 0.0127,
"percent_delta": 0.03,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.547,
"after": 1.0672,
"delta": 0.5202,
"percent_delta": 0.951,
"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.31,
"after": 6.8167,
"delta": 2.5067,
"percent_delta": 0.5816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.4256,
"predicted_3B": 0.0004,
"predicted_AB": 6.8167,
"predicted_AVG": 0.2828,
"predicted_BB": 0.6007,
"predicted_H": 1.9278,
"predicted_HBP": 0.254,
"predicted_HR": 0.207,
"predicted_OBP": 0.3409,
"predicted_R": 1.1768,
"predicted_RBI": 1.0103,
"predicted_SLG": 0.4365,
"predicted_SO": 1.0499
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4256,
"after": 0.4256,
"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.8167,
"after": 6.8167,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2657,
"after": 0.2828,
"delta": 0.0171,
"percent_delta": 0.0644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5911,
"after": 0.6007,
"delta": 0.0096,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.868,
"after": 1.9278,
"delta": 0.0598,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.1992,
"after": 0.207,
"delta": 0.0078,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.338,
"after": 0.3409,
"delta": 0.0029,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.1139,
"after": 1.1768,
"delta": 0.0629,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9563,
"after": 1.0103,
"delta": 0.054,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4357,
"after": 0.4365,
"delta": 0.0008,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0672,
"after": 1.0499,
"delta": -0.0173,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 1.1139,
"after": 1.1768,
"delta": 0.0629,
"percent_delta": 0.0565,
"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.82), rates preserved: AVG=0.283 HR/AB=0.030",
"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.4256,
"after": 0.0,
"delta": -0.4256,
"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.8167,
"after": 7.0,
"delta": 0.1833,
"percent_delta": 0.0269,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6007,
"after": 1.0,
"delta": 0.3993,
"percent_delta": 0.6647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9278,
"after": 2.0,
"delta": 0.0722,
"percent_delta": 0.0375,
"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.207,
"after": 0.0,
"delta": -0.207,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0103,
"after": 1.0,
"delta": -0.0103,
"percent_delta": -0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0499,
"after": 1.0,
"delta": -0.0499,
"percent_delta": -0.0475,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.6007,
"after": 1.0,
"delta": 0.3993,
"percent_delta": 0.6647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4256,
"after": 0.0,
"delta": -0.4256,
"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.1768,
"after": 1.0,
"delta": -0.1768,
"percent_delta": -0.1502,
"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.1768,
"after": 1.0,
"delta": -0.1768,
"percent_delta": -0.1502,
"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.2828,
"after": 0.286,
"delta": 0.0032,
"percent_delta": 0.0113,
"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.3409,
"after": 0.375,
"delta": 0.0341,
"percent_delta": 0.1,
"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.4365,
"after": 0.286,
"delta": -0.1505,
"percent_delta": -0.3448,
"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.3409,
"after": 0.375,
"delta": 0.0341,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4365,
"after": 0.286,
"delta": -0.1505,
"percent_delta": -0.3448,
"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": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"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": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2828,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3409,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4365,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2828,
"delta": -0.0032,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"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.375,
"after": 0.3409,
"delta": -0.0341,
"percent_delta": -0.091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.286,
"after": 0.4365,
"delta": 0.1505,
"percent_delta": 0.5261,
"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.4365,
"delta": 0.1505,
"percent_delta": 0.5261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3409,
"delta": -0.0341,
"percent_delta": -0.091,
"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.181,
"after": 0.0,
"delta": -0.181,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.31,
"after": 5.0,
"delta": 0.69,
"percent_delta": 0.1601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2828,
"delta": 0.0348,
"percent_delta": 0.1403,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.335,
"after": 0.0,
"delta": -0.335,
"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": 1.0,
"delta": 0.88,
"percent_delta": 7.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3409,
"delta": 0.0089,
"percent_delta": 0.0268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.657,
"after": 1.0,
"delta": 0.343,
"percent_delta": 0.5221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 3.0,
"delta": 2.44,
"percent_delta": 4.3571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.423,
"after": 0.4365,
"delta": 0.0135,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.547,
"after": 1.0,
"delta": 0.453,
"percent_delta": 0.8282,
"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_RBI",
"before": 0.56,
"after": 3.0,
"delta": 2.44,
"percent_delta": 4.3571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.335,
"after": 0.0,
"delta": -0.335,
"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.181 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.310 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.335 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.657 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.423 | - |
| predicted_SO | 0.547 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.426 | 0.245 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.817 | 2.507 |
| predicted_AVG | 0.266 | 0.018 |
| predicted_BB | 0.591 | 0.256 |
| predicted_H | 1.868 | 0.798 |
| predicted_HBP | 0.254 | - |
| predicted_HR | 0.199 | 0.079 |
| predicted_OBP | 0.338 | 0.006 |
| predicted_R | 1.114 | 0.457 |
| predicted_RBI | 0.956 | 0.396 |
| predicted_SLG | 0.436 | 0.013 |
| predicted_SO | 1.067 | 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.426 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.817 | 0.000 |
| predicted_AVG | 0.283 | 0.017 |
| predicted_BB | 0.601 | 0.010 |
| predicted_H | 1.928 | 0.060 |
| predicted_HBP | 0.254 | 0.000 |
| predicted_HR | 0.207 | 0.008 |
| predicted_OBP | 0.341 | 0.003 |
| predicted_R | 1.177 | 0.063 |
| predicted_RBI | 1.010 | 0.054 |
| predicted_SLG | 0.436 | 0.001 |
| predicted_SO | 1.050 | -0.017 |
AB rounded to 7 (raw=6.82), rates preserved: AVG=0.283 HR/AB=0.030
| 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.426 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.183 |
| predicted_AVG | 0.286 | 0.003 |
| predicted_BB | 1.000 | 0.399 |
| predicted_H | 2.000 | 0.072 |
| predicted_HR | 0.000 | -0.207 |
| predicted_OBP | 0.375 | 0.034 |
| predicted_R | 1.000 | -0.177 |
| predicted_RBI | 1.000 | -0.010 |
| predicted_SLG | 0.286 | -0.151 |
| 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 | 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 | 1.000 | 1.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 3.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 | 5.000 | 2.000 | 0.000 | 0.000 | 2.000 | 3.000 | 2.000 | 5.000 | 0.2941 | 0.3636 | 0.4118 | 0.2941 | 0.0000 | 0.1177 | 0.1177 | 0.2941 |
| last_10 | 0.20 | 10 | - | 35.000 | 11.000 | 4.000 | 0.000 | 1.000 | 7.000 | 6.000 | 3.000 | 5.000 | 0.3143 | 0.3571 | 0.5143 | 0.3143 | 0.0286 | 0.2000 | 0.0857 | 0.1429 |
| season | 0.60 | 68 | - | 993.000 | 277.000 | 46.000 | 0.000 | 40.000 | 137.000 | 167.000 | 85.000 | 139.000 | 0.2790 | 0.3372 | 0.4461 | 0.2789 | 0.0403 | 0.1380 | 0.0856 | 0.1400 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7340 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.9770 |
| predicted_AVG | 0.2881 |
| predicted_BB | 0.9140 |
| predicted_H | 2.8740 |
| predicted_HBP | 0.2540 |
| predicted_HR | 0.2990 |
| predicted_OBP | 0.3456 |
| predicted_R | 1.6900 |
| predicted_RBI | 1.4560 |
| predicted_SLG | 0.4517 |
| predicted_SO | 1.7230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1810 | 0.7340 | 0.4256 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3100 | 9.9770 | 6.8167 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2881 | 0.2657 | model_form_blend |
| predicted_BB | 0.3350 | 0.9140 | 0.5911 | model_form_blend |
| predicted_H | 1.0700 | 2.8740 | 1.8680 | model_form_blend |
| predicted_HBP | - | 0.2540 | 0.2540 | form_only |
| predicted_HR | 0.1200 | 0.2990 | 0.1992 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3456 | 0.3380 | model_form_blend |
| predicted_R | 0.6570 | 1.6900 | 1.1139 | model_form_blend |
| predicted_RBI | 0.5600 | 1.4560 | 0.9563 | model_form_blend |
| predicted_SLG | 0.4230 | 0.4517 | 0.4357 | model_form_blend |
| predicted_SO | 0.5470 | 1.7230 | 1.0672 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.279 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 645277 |
| playerID | 645277 |
| playerName | Ozzie Albies |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 12.3 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.34 |
| sl_xwoba | 0.309 |
| sl_xba | 0.255 |
| sl_xslg | 0.388 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 27.6 |
| sl_exit_velocity_avg | 86.8 |
| sl_launch_angle_avg | 16.7 |
| sl_whiff_percent | 20.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.240 | 1.000 | 0.000 | Hitting_2B | 0.240 | 0.000 | 0.760 | 1.000 |
| predicted_3B | 0.040 | 0.000 | 0.000 | Hitting_3B | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_AB | 4.150 | 4.000 | 6.000 | Hitting_AB | 3.827 | 4.000 | 0.173 | 0.000 |
| predicted_AVG | 0.249 | 0.250 | 0.333 | Hitting_AVG | 0.256 | 0.250 | -0.006 | 0.000 |
| predicted_BB | 0.271 | 1.000 | 1.000 | Hitting_BB | 0.271 | 0.000 | 0.729 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_H | 1.030 | 1.000 | 2.000 | Hitting_H | 0.978 | 1.000 | 0.022 | 0.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_OBP | 0.336 | 0.400 | 0.429 | Hitting_OBP | 0.311 | 0.250 | 0.089 | 0.150 |
| predicted_R | 0.427 | 1.000 | 1.000 | Hitting_R | 0.427 | 0.000 | 0.573 | 1.000 |
| predicted_RBI | 0.650 | 0.000 | 1.000 | Hitting_RBI | 0.569 | 0.000 | -0.569 | 0.000 |
| predicted_SLG | 0.438 | 0.500 | 0.333 | Hitting_SLG | 0.391 | 0.250 | 0.109 | 0.250 |
| predicted_SO | 0.640 | 0.000 | 1.000 | Hitting_SO | 0.640 | 0.000 | -0.640 | 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_2B: 0.2400 -> 1.0000 (boost 0.7600, better) |
| Biggest Deboost | predicted_RBI: 0.6500 -> 0.0000 (deboost -0.6500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.1500 -> 6.4020 (boost 2.2520, 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 | 4 | 1 | 4 | 1 | predicted_RBI: 1.1063 -> 1.1688 (boost 0.0625, better) | predicted_OBP: 0.3406 -> 0.3351 (deboost -0.0055, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 3 | 5 | predicted_BB: 0.5496 -> 1.0000 (boost 0.4504, better) | predicted_AB: 6.4020 -> 6.0000 (deboost -0.4020, worse) | AB rounded to 6 (raw=6.40), rates preserved: AVG=0.278 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8913 -> 1.0000 (boost 0.1087, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3351 -> 0.4290 (boost 0.0939, better) | predicted_SLG: 0.4692 -> 0.3330 (deboost -0.1362, 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_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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4692 (boost 0.1362, better) | predicted_OBP: 0.4290 -> 0.3351 (deboost -0.0939, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "643289",
"player_name": "Mauricio Dubón",
"position": "C",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.24,
"predicted_3B": 0.04,
"predicted_AB": 4.15,
"predicted_AVG": 0.249,
"predicted_BB": 0.271,
"predicted_H": 1.03,
"predicted_HR": 0.15,
"predicted_OBP": 0.336,
"predicted_R": 0.427,
"predicted_RBI": 0.65,
"predicted_SLG": 0.438,
"predicted_SO": 0.64
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local 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.0475,
"predicted_AB": 6.402,
"predicted_AVG": 0.2633,
"predicted_BB": 0.5408,
"predicted_H": 1.7248,
"predicted_HBP": 0.053,
"predicted_HR": 0.2474,
"predicted_OBP": 0.3406,
"predicted_R": 0.8436,
"predicted_RBI": 1.1063,
"predicted_SLG": 0.4517,
"predicted_SO": 1.1069
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.24,
"after": 0.3577,
"delta": 0.1177,
"percent_delta": 0.4904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0475,
"delta": 0.0075,
"percent_delta": 0.1875,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.15,
"after": 6.402,
"delta": 2.252,
"percent_delta": 0.5427,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2633,
"delta": 0.0143,
"percent_delta": 0.0574,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.271,
"after": 0.5408,
"delta": 0.2698,
"percent_delta": 0.9956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.7248,
"delta": 0.6948,
"percent_delta": 0.6746,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2474,
"delta": 0.0974,
"percent_delta": 0.6493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.336,
"after": 0.3406,
"delta": 0.0046,
"percent_delta": 0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.427,
"after": 0.8436,
"delta": 0.4166,
"percent_delta": 0.9756,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 1.1063,
"delta": 0.4563,
"percent_delta": 0.702,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.438,
"after": 0.4517,
"delta": 0.0137,
"percent_delta": 0.0313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.64,
"after": 1.1069,
"delta": 0.4669,
"percent_delta": 0.7295,
"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.15,
"after": 6.402,
"delta": 2.252,
"percent_delta": 0.5427,
"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.3577,
"predicted_3B": 0.0475,
"predicted_AB": 6.402,
"predicted_AVG": 0.278,
"predicted_BB": 0.5496,
"predicted_H": 1.78,
"predicted_HBP": 0.053,
"predicted_HR": 0.2571,
"predicted_OBP": 0.3351,
"predicted_R": 0.8913,
"predicted_RBI": 1.1688,
"predicted_SLG": 0.4692,
"predicted_SO": 1.089
},
"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.0475,
"after": 0.0475,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.402,
"after": 6.402,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2633,
"after": 0.278,
"delta": 0.0147,
"percent_delta": 0.0558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5408,
"after": 0.5496,
"delta": 0.0088,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7248,
"after": 1.78,
"delta": 0.0552,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.053,
"after": 0.053,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2474,
"after": 0.2571,
"delta": 0.0097,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3406,
"after": 0.3351,
"delta": -0.0055,
"percent_delta": -0.0161,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8436,
"after": 0.8913,
"delta": 0.0477,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1063,
"after": 1.1688,
"delta": 0.0625,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4517,
"after": 0.4692,
"delta": 0.0175,
"percent_delta": 0.0387,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1069,
"after": 1.089,
"delta": -0.0179,
"percent_delta": -0.0162,
"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_RBI",
"before": 1.1063,
"after": 1.1688,
"delta": 0.0625,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3406,
"after": 0.3351,
"delta": -0.0055,
"percent_delta": -0.0161,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.40), rates preserved: AVG=0.278 HR/AB=0.040",
"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.3577,
"after": 0.0,
"delta": -0.3577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0475,
"after": 0.0,
"delta": -0.0475,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.402,
"after": 6.0,
"delta": -0.402,
"percent_delta": -0.0628,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5496,
"after": 1.0,
"delta": 0.4504,
"percent_delta": 0.8195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.78,
"after": 2.0,
"delta": 0.22,
"percent_delta": 0.1236,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.053,
"after": 0.0,
"delta": -0.053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2571,
"after": 0.0,
"delta": -0.2571,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1688,
"after": 1.0,
"delta": -0.1688,
"percent_delta": -0.1444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.089,
"after": 1.0,
"delta": -0.089,
"percent_delta": -0.0817,
"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.5496,
"after": 1.0,
"delta": 0.4504,
"percent_delta": 0.8195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.402,
"after": 6.0,
"delta": -0.402,
"percent_delta": -0.0628,
"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": 0.8913,
"after": 1.0,
"delta": 0.1087,
"percent_delta": 0.122,
"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.8913,
"after": 1.0,
"delta": 0.1087,
"percent_delta": 0.122,
"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": 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.278,
"after": 0.333,
"delta": 0.055,
"percent_delta": 0.1978,
"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.3351,
"after": 0.429,
"delta": 0.0939,
"percent_delta": 0.2802,
"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.4692,
"after": 0.333,
"delta": -0.1362,
"percent_delta": -0.2903,
"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.3351,
"after": 0.429,
"delta": 0.0939,
"percent_delta": 0.2802,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4692,
"after": 0.333,
"delta": -0.1362,
"percent_delta": -0.2903,
"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": 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": 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": 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_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.278,
"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.3351,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4692,
"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.278,
"delta": -0.055,
"percent_delta": -0.1651,
"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.3351,
"delta": -0.0939,
"percent_delta": -0.2189,
"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.4692,
"delta": 0.1362,
"percent_delta": 0.4091,
"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.4692,
"delta": 0.1362,
"percent_delta": 0.4091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3351,
"delta": -0.0939,
"percent_delta": -0.2189,
"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.24,
"after": 1.0,
"delta": 0.76,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.15,
"after": 4.0,
"delta": -0.15,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.278,
"delta": 0.029,
"percent_delta": 0.1165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.271,
"after": 1.0,
"delta": 0.729,
"percent_delta": 2.69,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.0,
"delta": -0.03,
"percent_delta": -0.0291,
"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.336,
"after": 0.3351,
"delta": -0.0009,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.427,
"after": 1.0,
"delta": 0.573,
"percent_delta": 1.3419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.438,
"after": 0.4692,
"delta": 0.0312,
"percent_delta": 0.0712,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.64,
"after": 0.0,
"delta": -0.64,
"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_2B",
"before": 0.24,
"after": 1.0,
"delta": 0.76,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.240 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 4.150 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.271 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.336 | - |
| predicted_R | 0.427 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.438 | - |
| predicted_SO | 0.640 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.118 |
| predicted_3B | 0.048 | 0.007 |
| predicted_AB | 6.402 | 2.252 |
| predicted_AVG | 0.263 | 0.014 |
| predicted_BB | 0.541 | 0.270 |
| predicted_H | 1.725 | 0.695 |
| predicted_HBP | 0.053 | - |
| predicted_HR | 0.247 | 0.097 |
| predicted_OBP | 0.341 | 0.005 |
| predicted_R | 0.844 | 0.417 |
| predicted_RBI | 1.106 | 0.456 |
| predicted_SLG | 0.452 | 0.014 |
| predicted_SO | 1.107 | 0.467 |
Step 3: 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.048 | 0.000 |
| predicted_AB | 6.402 | 0.000 |
| predicted_AVG | 0.278 | 0.015 |
| predicted_BB | 0.550 | 0.009 |
| predicted_H | 1.780 | 0.055 |
| predicted_HBP | 0.053 | 0.000 |
| predicted_HR | 0.257 | 0.010 |
| predicted_OBP | 0.335 | -0.006 |
| predicted_R | 0.891 | 0.048 |
| predicted_RBI | 1.169 | 0.062 |
| predicted_SLG | 0.469 | 0.018 |
| predicted_SO | 1.089 | -0.018 |
AB rounded to 6 (raw=6.40), rates preserved: AVG=0.278 HR/AB=0.040
| 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.358 |
| predicted_3B | 0.000 | -0.048 |
| predicted_AB | 6.000 | -0.402 |
| predicted_AVG | 0.333 | 0.055 |
| predicted_BB | 1.000 | 0.450 |
| predicted_H | 2.000 | 0.220 |
| predicted_HR | 0.000 | -0.257 |
| predicted_OBP | 0.429 | 0.094 |
| predicted_R | 1.000 | 0.109 |
| predicted_RBI | 1.000 | -0.169 |
| predicted_SLG | 0.333 | -0.136 |
| predicted_SO | 1.000 | -0.089 |
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 | 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 | 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 | 1.000 | 0.000 | 1.000 | 4.000 | 4.000 | 2.000 | 4.000 | 0.3333 | 0.4000 | 0.5556 | 0.3333 | 0.0556 | 0.2222 | 0.1111 | 0.2222 |
| last_10 | 0.20 | 10 | - | 32.000 | 10.000 | 1.000 | 0.000 | 3.000 | 8.000 | 6.000 | 5.000 | 6.000 | 0.3125 | 0.4054 | 0.6250 | 0.3125 | 0.0938 | 0.2500 | 0.1562 | 0.1875 |
| season | 0.60 | 64 | - | 861.000 | 220.000 | 54.000 | 9.000 | 15.000 | 128.000 | 96.000 | 61.000 | 144.000 | 0.2555 | 0.3108 | 0.3914 | 0.2555 | 0.0174 | 0.1487 | 0.0708 | 0.1673 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5070 |
| predicted_3B | 0.0570 |
| predicted_AB | 9.2580 |
| predicted_AVG | 0.2815 |
| predicted_BB | 0.8830 |
| predicted_H | 2.6060 |
| predicted_HBP | 0.0530 |
| predicted_HR | 0.3710 |
| predicted_OBP | 0.3465 |
| predicted_R | 1.3720 |
| predicted_RBI | 1.6850 |
| predicted_SLG | 0.4690 |
| predicted_SO | 1.6990 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2400 | 0.5070 | 0.3577 | model_form_blend |
| predicted_3B | 0.0400 | 0.0570 | 0.0475 | model_form_blend |
| predicted_AB | 4.1500 | 9.2580 | 6.4020 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2815 | 0.2633 | model_form_blend |
| predicted_BB | 0.2710 | 0.8830 | 0.5408 | model_form_blend |
| predicted_H | 1.0300 | 2.6060 | 1.7248 | model_form_blend |
| predicted_HBP | - | 0.0530 | 0.0530 | form_only |
| predicted_HR | 0.1500 | 0.3710 | 0.2474 | model_form_blend |
| predicted_OBP | 0.3360 | 0.3465 | 0.3406 | model_form_blend |
| predicted_R | 0.4270 | 1.3720 | 0.8436 | model_form_blend |
| predicted_RBI | 0.6500 | 1.6850 | 1.1063 | model_form_blend |
| predicted_SLG | 0.4380 | 0.4690 | 0.4517 | model_form_blend |
| predicted_SO | 0.6400 | 1.6990 | 1.1069 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 225 |
| Season rows before report date | 225 |
| 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 | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| 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 | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 643289 |
| playerID | 643289 |
| playerName | Mauricio Dubón |
| pos | SS |
| started | True |
| startingPosition | LF |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 15.7 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.323 |
| sl_xwoba | 0.314 |
| sl_xba | 0.262 |
| sl_xslg | 0.392 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 28.4 |
| sl_exit_velocity_avg | 86.6 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 17.8 |
| 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.130 | 1.000 | 0.000 | Hitting_2B | 0.129 | 0.000 | 0.871 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.220 | 5.000 | 6.000 | Hitting_AB | 3.895 | 5.000 | 1.105 | 0.000 |
| predicted_AVG | 0.265 | 0.400 | 0.333 | Hitting_AVG | 0.300 | 0.000 | 0.100 | 0.400 |
| predicted_BB | 0.130 | 0.000 | 0.000 | Hitting_BB | 0.134 | 0.000 | -0.134 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.005 | 0.000 | -0.005 | 0.000 |
| predicted_H | 1.120 | 2.000 | 2.000 | Hitting_H | 1.167 | 0.000 | 0.833 | 2.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.254 | 0.000 | -0.254 | 0.000 |
| predicted_OBP | 0.341 | 0.400 | 0.333 | Hitting_OBP | 0.324 | 0.000 | 0.076 | 0.400 |
| predicted_R | 0.548 | 1.000 | 1.000 | Hitting_R | 0.545 | 0.000 | 0.455 | 1.000 |
| predicted_RBI | 0.630 | 1.000 | 1.000 | Hitting_RBI | 0.670 | 0.000 | 0.330 | 1.000 |
| predicted_SLG | 0.462 | 0.600 | 0.333 | Hitting_SLG | 0.528 | 0.000 | 0.072 | 0.600 |
| predicted_SO | 0.764 | 1.000 | 1.000 | Hitting_SO | 0.761 | 3.000 | 0.239 | -2.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: 1.1200 -> 2.0000 (boost 0.8800, better) |
| Biggest Deboost | predicted_HR: 0.1600 -> 0.0000 (deboost -0.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: 4.2200 -> 6.3704 (boost 2.1504, 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 | 3 | 1 | 3 | 1 | predicted_H: 1.9006 -> 1.9614 (boost 0.0608, better) | predicted_OBP: 0.3458 -> 0.3375 (deboost -0.0083, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 0 | 6 | 1 | 5 | - | predicted_AB: 6.3704 -> 6.0000 (deboost -0.3704, worse) | AB rounded to 6 (raw=6.37), rates preserved: AVG=0.308 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8565 -> 1.0000 (boost 0.1435, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.3079 -> 0.3330 (boost 0.0251, better) | predicted_SLG: 0.4748 -> 0.3330 (deboost -0.1418, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 6.0000 -> 5.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3330 -> 0.4748 (boost 0.1418, better) | predicted_AVG: 0.3330 -> 0.3079 (deboost -0.0251, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "671739",
"player_name": "Michael Harris II",
"position": "1B",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.13,
"predicted_3B": 0.0,
"predicted_AB": 4.22,
"predicted_AVG": 0.265,
"predicted_BB": 0.13,
"predicted_H": 1.12,
"predicted_HR": 0.16,
"predicted_OBP": 0.341,
"predicted_R": 0.548,
"predicted_RBI": 0.63,
"predicted_SLG": 0.462,
"predicted_SO": 0.764
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2976,
"predicted_3B": 0.0004,
"predicted_AB": 6.3704,
"predicted_AVG": 0.2882,
"predicted_BB": 0.2805,
"predicted_H": 1.9006,
"predicted_HBP": 0.029,
"predicted_HR": 0.2454,
"predicted_OBP": 0.3458,
"predicted_R": 0.8107,
"predicted_RBI": 1.0313,
"predicted_SLG": 0.4747,
"predicted_SO": 1.3149
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 0.2976,
"delta": 0.1676,
"percent_delta": 1.2892,
"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.22,
"after": 6.3704,
"delta": 2.1504,
"percent_delta": 0.5096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2882,
"delta": 0.0232,
"percent_delta": 0.0875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.13,
"after": 0.2805,
"delta": 0.1505,
"percent_delta": 1.1577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.12,
"after": 1.9006,
"delta": 0.7806,
"percent_delta": 0.697,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2454,
"delta": 0.0854,
"percent_delta": 0.5338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3458,
"delta": 0.0048,
"percent_delta": 0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.548,
"after": 0.8107,
"delta": 0.2627,
"percent_delta": 0.4794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 1.0313,
"delta": 0.4013,
"percent_delta": 0.637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.462,
"after": 0.4747,
"delta": 0.0127,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.764,
"after": 1.3149,
"delta": 0.5509,
"percent_delta": 0.7211,
"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.22,
"after": 6.3704,
"delta": 2.1504,
"percent_delta": 0.5096,
"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.2976,
"predicted_3B": 0.0004,
"predicted_AB": 6.3704,
"predicted_AVG": 0.3079,
"predicted_BB": 0.285,
"predicted_H": 1.9614,
"predicted_HBP": 0.029,
"predicted_HR": 0.255,
"predicted_OBP": 0.3375,
"predicted_R": 0.8565,
"predicted_RBI": 1.0896,
"predicted_SLG": 0.4748,
"predicted_SO": 1.2936
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2976,
"after": 0.2976,
"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.3704,
"after": 6.3704,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2882,
"after": 0.3079,
"delta": 0.0197,
"percent_delta": 0.0684,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2805,
"after": 0.285,
"delta": 0.0045,
"percent_delta": 0.016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9006,
"after": 1.9614,
"delta": 0.0608,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.2454,
"after": 0.255,
"delta": 0.0096,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3458,
"after": 0.3375,
"delta": -0.0083,
"percent_delta": -0.024,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8107,
"after": 0.8565,
"delta": 0.0458,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0313,
"after": 1.0896,
"delta": 0.0583,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4747,
"after": 0.4748,
"delta": 0.0001,
"percent_delta": 0.0002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.3149,
"after": 1.2936,
"delta": -0.0213,
"percent_delta": -0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.9006,
"after": 1.9614,
"delta": 0.0608,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3458,
"after": 0.3375,
"delta": -0.0083,
"percent_delta": -0.024,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.37), rates preserved: AVG=0.308 HR/AB=0.040",
"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.2976,
"after": 0.0,
"delta": -0.2976,
"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.3704,
"after": 6.0,
"delta": -0.3704,
"percent_delta": -0.0581,
"direction": "deboost",
"projection_effect": "worse",
"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.9614,
"after": 2.0,
"delta": 0.0386,
"percent_delta": 0.0197,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.255,
"after": 0.0,
"delta": -0.255,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0896,
"after": 1.0,
"delta": -0.0896,
"percent_delta": -0.0822,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2936,
"after": 1.0,
"delta": -0.2936,
"percent_delta": -0.227,
"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.3704,
"after": 6.0,
"delta": -0.3704,
"percent_delta": -0.0581,
"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.8565,
"after": 1.0,
"delta": 0.1435,
"percent_delta": 0.1675,
"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.8565,
"after": 1.0,
"delta": 0.1435,
"percent_delta": 0.1675,
"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.3079,
"after": 0.333,
"delta": 0.0251,
"percent_delta": 0.0815,
"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.3375,
"after": 0.333,
"delta": -0.0045,
"percent_delta": -0.0133,
"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.4748,
"after": 0.333,
"delta": -0.1418,
"percent_delta": -0.2987,
"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.3079,
"after": 0.333,
"delta": 0.0251,
"percent_delta": 0.0815,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4748,
"after": 0.333,
"delta": -0.1418,
"percent_delta": -0.2987,
"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": 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": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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": 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_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.3079,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4748,
"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.333,
"after": 0.3079,
"delta": -0.0251,
"percent_delta": -0.0754,
"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.3375,
"delta": 0.0045,
"percent_delta": 0.0136,
"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.333,
"after": 0.4748,
"delta": 0.1418,
"percent_delta": 0.426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4748,
"delta": 0.1418,
"percent_delta": 0.426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3079,
"delta": -0.0251,
"percent_delta": -0.0754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"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.22,
"after": 5.0,
"delta": 0.78,
"percent_delta": 0.1848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.3079,
"delta": 0.0429,
"percent_delta": 0.1619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.12,
"after": 2.0,
"delta": 0.88,
"percent_delta": 0.7857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3375,
"delta": -0.0035,
"percent_delta": -0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.548,
"after": 1.0,
"delta": 0.452,
"percent_delta": 0.8248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 1.0,
"delta": 0.37,
"percent_delta": 0.5873,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.462,
"after": 0.4748,
"delta": 0.0128,
"percent_delta": 0.0277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.764,
"after": 1.0,
"delta": 0.236,
"percent_delta": 0.3089,
"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": 1.12,
"after": 2.0,
"delta": 0.88,
"percent_delta": 0.7857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"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.130 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.220 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.130 | - |
| predicted_H | 1.120 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.341 | - |
| predicted_R | 0.548 | - |
| predicted_RBI | 0.630 | - |
| predicted_SLG | 0.462 | - |
| predicted_SO | 0.764 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.168 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.370 | 2.150 |
| predicted_AVG | 0.288 | 0.023 |
| predicted_BB | 0.281 | 0.151 |
| predicted_H | 1.901 | 0.781 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.245 | 0.085 |
| predicted_OBP | 0.346 | 0.005 |
| predicted_R | 0.811 | 0.263 |
| predicted_RBI | 1.031 | 0.401 |
| predicted_SLG | 0.475 | 0.013 |
| predicted_SO | 1.315 | 0.551 |
Step 3: 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.370 | 0.000 |
| predicted_AVG | 0.308 | 0.020 |
| predicted_BB | 0.285 | 0.004 |
| predicted_H | 1.961 | 0.061 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.255 | 0.010 |
| predicted_OBP | 0.338 | -0.008 |
| predicted_R | 0.857 | 0.046 |
| predicted_RBI | 1.090 | 0.058 |
| predicted_SLG | 0.475 | 0.000 |
| predicted_SO | 1.294 | -0.021 |
AB rounded to 6 (raw=6.37), rates preserved: AVG=0.308 HR/AB=0.040
| 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.298 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.370 |
| predicted_AVG | 0.333 | 0.025 |
| predicted_BB | 0.000 | -0.285 |
| predicted_H | 2.000 | 0.039 |
| predicted_HR | 0.000 | -0.255 |
| predicted_OBP | 0.333 | -0.005 |
| predicted_R | 1.000 | 0.143 |
| predicted_RBI | 1.000 | -0.090 |
| predicted_SLG | 0.333 | -0.142 |
| predicted_SO | 1.000 | -0.294 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 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 | 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 | 2.000 | 0.000 | 0.000 | 3.000 | 2.000 | 1.000 | 6.000 | 0.3684 | 0.4000 | 0.4737 | 0.3684 | 0.0000 | 0.1579 | 0.0526 | 0.3158 |
| last_10 | 0.20 | 10 | - | 39.000 | 13.000 | 3.000 | 0.000 | 0.000 | 7.000 | 4.000 | 4.000 | 8.000 | 0.3333 | 0.3953 | 0.4103 | 0.3333 | 0.0000 | 0.1795 | 0.1026 | 0.2051 |
| season | 0.60 | 63 | - | 814.000 | 244.000 | 27.000 | 0.000 | 53.000 | 140.000 | 114.000 | 27.000 | 159.000 | 0.2998 | 0.3235 | 0.5283 | 0.2998 | 0.0651 | 0.1720 | 0.0332 | 0.1953 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5110 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.1070 |
| predicted_AVG | 0.3178 |
| predicted_BB | 0.4720 |
| predicted_H | 2.8940 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.3540 |
| predicted_OBP | 0.3518 |
| predicted_R | 1.1450 |
| predicted_RBI | 1.5420 |
| predicted_SLG | 0.4909 |
| predicted_SO | 2.0160 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1300 | 0.5110 | 0.2976 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2200 | 9.1070 | 6.3704 | model_form_blend |
| predicted_AVG | 0.2650 | 0.3178 | 0.2882 | model_form_blend |
| predicted_BB | 0.1300 | 0.4720 | 0.2805 | model_form_blend |
| predicted_H | 1.1200 | 2.8940 | 1.9006 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.1600 | 0.3540 | 0.2454 | model_form_blend |
| predicted_OBP | 0.3410 | 0.3518 | 0.3458 | model_form_blend |
| predicted_R | 0.5480 | 1.1450 | 0.8107 | model_form_blend |
| predicted_RBI | 0.6300 | 1.5420 | 1.0313 | model_form_blend |
| predicted_SLG | 0.4620 | 0.4909 | 0.4747 | model_form_blend |
| predicted_SO | 0.7640 | 2.0160 | 1.3149 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 208 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.3 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| 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 | CF |
| gameID | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 671739 |
| playerID | 671739 |
| playerName | Michael Harris II |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 4.5 |
| sl_woba | 0.37 |
| sl_xwoba | 0.383 |
| sl_xba | 0.305 |
| sl_xslg | 0.549 |
| sl_sweet_spot_percent | 29.6 |
| sl_barrel_batted_rate | 15.1 |
| sl_hard_hit_percent | 52.2 |
| sl_exit_velocity_avg | 92.8 |
| sl_launch_angle_avg | 11.9 |
| sl_whiff_percent | 26.3 |
| sl_swing_percent | 55.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.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 | 4.240 | 4.000 | 7.000 | Hitting_AB | 3.911 | 3.000 | 0.089 | 1.000 |
| predicted_AVG | 0.247 | 0.250 | 0.286 | Hitting_AVG | 0.273 | 0.333 | -0.023 | -0.083 |
| predicted_BB | 0.500 | 1.000 | 1.000 | Hitting_BB | 0.500 | 1.000 | 0.500 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.050 | 1.000 | 2.000 | Hitting_H | 1.066 | 1.000 | -0.066 | 0.000 |
| predicted_HR | 0.260 | 0.000 | 1.000 | Hitting_HR | 0.279 | 0.000 | -0.279 | 0.000 |
| predicted_OBP | 0.335 | 0.400 | 0.375 | Hitting_OBP | 0.355 | 0.500 | 0.045 | -0.100 |
| predicted_R | 0.760 | 0.000 | 1.000 | Hitting_R | 0.760 | 0.000 | -0.760 | 0.000 |
| predicted_RBI | 0.660 | 0.000 | 1.000 | Hitting_RBI | 0.795 | 0.000 | -0.795 | 0.000 |
| predicted_SLG | 0.513 | 0.500 | 0.714 | Hitting_SLG | 0.572 | 0.333 | -0.072 | 0.167 |
| predicted_SO | 0.996 | 0.000 | 2.000 | Hitting_SO | 0.996 | 1.000 | -0.996 | -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_2B: 0.3330 -> 1.0000 (boost 0.6670, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.2400 -> 6.9286 (boost 2.6886, 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.3407 -> 1.4164 (boost 0.0757, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 5 | 2 | 4 | 3 | predicted_HR: 0.5402 -> 1.0000 (boost 0.4598, better) | predicted_2B: 0.4414 -> 0.0000 (deboost -0.4414, worse) | AB rounded to 7 (raw=6.93), rates preserved: AVG=0.280 HR/AB=0.078 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.4164 -> 1.0000 (deboost -0.4164, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.5781 -> 0.7140 (boost 0.1359, better) | - | 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_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 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.7140 -> 0.5781 (deboost -0.1359, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621566",
"player_name": "Matt Olson",
"position": "2B",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.333,
"predicted_3B": 0.0,
"predicted_AB": 4.24,
"predicted_AVG": 0.247,
"predicted_BB": 0.5,
"predicted_H": 1.05,
"predicted_HR": 0.26,
"predicted_OBP": 0.335,
"predicted_R": 0.76,
"predicted_RBI": 0.66,
"predicted_SLG": 0.513,
"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.4414,
"predicted_3B": 0.0004,
"predicted_AB": 6.9286,
"predicted_AVG": 0.2635,
"predicted_BB": 0.7863,
"predicted_H": 1.8825,
"predicted_HBP": 0.032,
"predicted_HR": 0.5198,
"predicted_OBP": 0.3435,
"predicted_R": 1.3407,
"predicted_RBI": 1.196,
"predicted_SLG": 0.5456,
"predicted_SO": 1.7103
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.333,
"after": 0.4414,
"delta": 0.1084,
"percent_delta": 0.3255,
"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.9286,
"delta": 2.6886,
"percent_delta": 0.6341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2635,
"delta": 0.0165,
"percent_delta": 0.0668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 0.7863,
"delta": 0.2863,
"percent_delta": 0.5726,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.8825,
"delta": 0.8325,
"percent_delta": 0.7929,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.26,
"after": 0.5198,
"delta": 0.2598,
"percent_delta": 0.9992,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.335,
"after": 0.3435,
"delta": 0.0085,
"percent_delta": 0.0254,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.76,
"after": 1.3407,
"delta": 0.5807,
"percent_delta": 0.7641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 1.196,
"delta": 0.536,
"percent_delta": 0.8121,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.513,
"after": 0.5456,
"delta": 0.0326,
"percent_delta": 0.0635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.996,
"after": 1.7103,
"delta": 0.7143,
"percent_delta": 0.7172,
"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.24,
"after": 6.9286,
"delta": 2.6886,
"percent_delta": 0.6341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.4414,
"predicted_3B": 0.0004,
"predicted_AB": 6.9286,
"predicted_AVG": 0.2804,
"predicted_BB": 0.799,
"predicted_H": 1.9427,
"predicted_HBP": 0.032,
"predicted_HR": 0.5402,
"predicted_OBP": 0.3548,
"predicted_R": 1.4164,
"predicted_RBI": 1.2636,
"predicted_SLG": 0.5781,
"predicted_SO": 1.6826
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4414,
"after": 0.4414,
"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.9286,
"after": 6.9286,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2635,
"after": 0.2804,
"delta": 0.0169,
"percent_delta": 0.0641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7863,
"after": 0.799,
"delta": 0.0127,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8825,
"after": 1.9427,
"delta": 0.0602,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.032,
"after": 0.032,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.5198,
"after": 0.5402,
"delta": 0.0204,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3435,
"after": 0.3548,
"delta": 0.0113,
"percent_delta": 0.0329,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.3407,
"after": 1.4164,
"delta": 0.0757,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.196,
"after": 1.2636,
"delta": 0.0676,
"percent_delta": 0.0565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5456,
"after": 0.5781,
"delta": 0.0325,
"percent_delta": 0.0596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7103,
"after": 1.6826,
"delta": -0.0277,
"percent_delta": -0.0162,
"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.3407,
"after": 1.4164,
"delta": 0.0757,
"percent_delta": 0.0565,
"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.93), rates preserved: AVG=0.280 HR/AB=0.078",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4414,
"after": 0.0,
"delta": -0.4414,
"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.9286,
"after": 7.0,
"delta": 0.0714,
"percent_delta": 0.0103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.799,
"after": 1.0,
"delta": 0.201,
"percent_delta": 0.2516,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9427,
"after": 2.0,
"delta": 0.0573,
"percent_delta": 0.0295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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.2636,
"after": 1.0,
"delta": -0.2636,
"percent_delta": -0.2086,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6826,
"after": 2.0,
"delta": 0.3174,
"percent_delta": 0.1886,
"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_HR",
"before": 0.5402,
"after": 1.0,
"delta": 0.4598,
"percent_delta": 0.8512,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4414,
"after": 0.0,
"delta": -0.4414,
"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": 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": 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.4164,
"after": 1.0,
"delta": -0.4164,
"percent_delta": -0.294,
"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.4164,
"after": 1.0,
"delta": -0.4164,
"percent_delta": -0.294,
"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": 1.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.714,
"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.2804,
"after": 0.286,
"delta": 0.0056,
"percent_delta": 0.02,
"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.3548,
"after": 0.375,
"delta": 0.0202,
"percent_delta": 0.0569,
"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.5781,
"after": 0.714,
"delta": 0.1359,
"percent_delta": 0.2351,
"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.5781,
"after": 0.714,
"delta": 0.1359,
"percent_delta": 0.2351,
"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": 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": 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": 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": 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_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.2804,
"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.3548,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5781,
"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.2804,
"delta": -0.0056,
"percent_delta": -0.0196,
"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.3548,
"delta": -0.0202,
"percent_delta": -0.0539,
"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.5781,
"delta": -0.1359,
"percent_delta": -0.1903,
"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.5781,
"delta": -0.1359,
"percent_delta": -0.1903,
"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": 4.24,
"after": 4.0,
"delta": -0.24,
"percent_delta": -0.0566,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2804,
"delta": 0.0334,
"percent_delta": 0.1352,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0,
"delta": -0.05,
"percent_delta": -0.0476,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.335,
"after": 0.3548,
"delta": 0.0198,
"percent_delta": 0.0591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.76,
"after": 0.0,
"delta": -0.76,
"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.513,
"after": 0.5781,
"delta": 0.0651,
"percent_delta": 0.1269,
"direction": "boost",
"projection_effect": "better",
"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": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.333,
"after": 1.0,
"delta": 0.667,
"percent_delta": 2.003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 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.333 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.240 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.500 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.260 | - |
| predicted_OBP | 0.335 | - |
| predicted_R | 0.760 | - |
| predicted_RBI | 0.660 | - |
| predicted_SLG | 0.513 | - |
| 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.441 | 0.108 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.929 | 2.689 |
| predicted_AVG | 0.264 | 0.017 |
| predicted_BB | 0.786 | 0.286 |
| predicted_H | 1.883 | 0.833 |
| predicted_HBP | 0.032 | - |
| predicted_HR | 0.520 | 0.260 |
| predicted_OBP | 0.344 | 0.009 |
| predicted_R | 1.341 | 0.581 |
| predicted_RBI | 1.196 | 0.536 |
| predicted_SLG | 0.546 | 0.033 |
| predicted_SO | 1.710 | 0.714 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.441 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.929 | 0.000 |
| predicted_AVG | 0.280 | 0.017 |
| predicted_BB | 0.799 | 0.013 |
| predicted_H | 1.943 | 0.060 |
| predicted_HBP | 0.032 | 0.000 |
| predicted_HR | 0.540 | 0.020 |
| predicted_OBP | 0.355 | 0.011 |
| predicted_R | 1.416 | 0.076 |
| predicted_RBI | 1.264 | 0.068 |
| predicted_SLG | 0.578 | 0.032 |
| predicted_SO | 1.683 | -0.028 |
AB rounded to 7 (raw=6.93), rates preserved: AVG=0.280 HR/AB=0.078
| 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 | 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 | 1.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.441 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.071 |
| predicted_AVG | 0.286 | 0.006 |
| predicted_BB | 1.000 | 0.201 |
| predicted_H | 2.000 | 0.057 |
| predicted_HR | 1.000 | 0.460 |
| predicted_OBP | 0.375 | 0.020 |
| predicted_R | 1.000 | -0.416 |
| predicted_RBI | 1.000 | -0.264 |
| predicted_SLG | 0.714 | 0.136 |
| predicted_SO | 2.000 | 0.317 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -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 | -1.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 | - | 20.000 | 6.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 2.000 | 6.000 | 0.3000 | 0.3636 | 0.6000 | 0.3000 | 0.1000 | 0.1500 | 0.1000 | 0.3000 |
| last_10 | 0.20 | 10 | - | 39.000 | 12.000 | 1.000 | 0.000 | 4.000 | 6.000 | 9.000 | 3.000 | 8.000 | 0.3077 | 0.3488 | 0.6410 | 0.3077 | 0.1026 | 0.1538 | 0.0769 | 0.2051 |
| season | 0.60 | 68 | - | 1009.000 | 275.000 | 86.000 | 0.000 | 72.000 | 205.000 | 196.000 | 129.000 | 257.000 | 0.2725 | 0.3547 | 0.5719 | 0.2726 | 0.0714 | 0.2032 | 0.1278 | 0.2547 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5780 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.3150 |
| predicted_AVG | 0.2842 |
| predicted_BB | 1.1470 |
| predicted_H | 2.9310 |
| predicted_HBP | 0.0320 |
| predicted_HR | 0.8470 |
| predicted_OBP | 0.3542 |
| predicted_R | 2.0720 |
| predicted_RBI | 1.8710 |
| predicted_SLG | 0.5867 |
| predicted_SO | 2.6100 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3330 | 0.5780 | 0.4414 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2400 | 10.3150 | 6.9286 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2842 | 0.2635 | model_form_blend |
| predicted_BB | 0.5000 | 1.1470 | 0.7863 | model_form_blend |
| predicted_H | 1.0500 | 2.9310 | 1.8825 | model_form_blend |
| predicted_HBP | - | 0.0320 | 0.0320 | form_only |
| predicted_HR | 0.2600 | 0.8470 | 0.5198 | model_form_blend |
| predicted_OBP | 0.3350 | 0.3542 | 0.3435 | model_form_blend |
| predicted_R | 0.7600 | 2.0720 | 1.3407 | model_form_blend |
| predicted_RBI | 0.6600 | 1.8710 | 1.1960 | model_form_blend |
| predicted_SLG | 0.5130 | 0.5867 | 0.5456 | model_form_blend |
| predicted_SO | 0.9960 | 2.6100 | 1.7103 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 258 |
| Season rows before report date | 258 |
| Report year | 2026 |
| Profile rows used | 258 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 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 | 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 | 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 | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 621566 |
| playerID | 621566 |
| playerName | Matt Olson |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.385 |
| sl_xwoba | 0.378 |
| sl_xba | 0.265 |
| sl_xslg | 0.548 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 14.6 |
| sl_hard_hit_percent | 53.5 |
| sl_exit_velocity_avg | 93.8 |
| sl_launch_angle_avg | 19.0 |
| sl_whiff_percent | 24.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.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.148 | 0.000 | 0.852 | 3.000 |
| predicted_AVG | 0.240 | 0.333 | 0.333 | Hitting_AVG | 0.086 | - | 0.247 | - |
| predicted_BB | 0.000 | 2.000 | 0.000 | Hitting_BB | 0.000 | 0.000 | 2.000 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.510 | 1.000 | 1.000 | Hitting_H | 0.185 | 0.000 | 0.815 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.240 | 0.600 | 0.333 | Hitting_OBP | 0.086 | - | 0.514 | - |
| predicted_R | 0.000 | 1.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_RBI | 0.240 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.276 | 0.333 | 0.333 | Hitting_SLG | 0.086 | - | 0.247 | - |
| predicted_SO | 0.948 | 1.000 | 1.000 | Hitting_SO | 0.815 | 0.000 | 0.185 | 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.0000 -> 2.0000 (boost 2.0000, better) |
| Biggest Deboost | predicted_RBI: 0.2400 -> 0.0000 (deboost -0.2400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 3 | 3 | 2 | 4 | predicted_AB: 2.5000 -> 2.8352 (boost 0.3352, better) | predicted_AVG: 0.2400 -> 0.2043 (deboost -0.0357, 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.2043 -> 0.1816 (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 | 4 | 2 | 2 | 2 | 2 | predicted_H: 0.5148 -> 1.0000 (boost 0.4852, better) | predicted_RBI: 0.2221 -> 0.0000 (deboost -0.2221, worse) | AB rounded to 3 (raw=2.84), rates preserved: AVG=0.182 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0566 -> 0.0000 (deboost -0.0566, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1816 -> 0.3330 (boost 0.1514, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 2 | 0 | 2 | 0 | predicted_BB: 0.0000 -> 2.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1816 (deboost -0.1514, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "506702",
"player_name": "Sandy León",
"position": "3B",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.24,
"predicted_BB": 0.0,
"predicted_H": 0.51,
"predicted_HR": 0.06,
"predicted_OBP": 0.24,
"predicted_R": 0.0,
"predicted_RBI": 0.24,
"predicted_SLG": 0.276,
"predicted_SO": 0.948
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0203,
"predicted_3B": 0.0018,
"predicted_AB": 2.8352,
"predicted_AVG": 0.2043,
"predicted_BB": 0.0319,
"predicted_H": 0.4988,
"predicted_HBP": 0.011,
"predicted_HR": 0.053,
"predicted_OBP": 0.2119,
"predicted_R": 0.0536,
"predicted_RBI": 0.2102,
"predicted_SLG": 0.2467,
"predicted_SO": 1.024
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0203,
"delta": 0.0203,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0018,
"delta": 0.0018,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 2.8352,
"delta": 0.3352,
"percent_delta": 0.1341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2043,
"delta": -0.0357,
"percent_delta": -0.1487,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0319,
"delta": 0.0319,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.51,
"after": 0.4988,
"delta": -0.0112,
"percent_delta": -0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.053,
"delta": -0.007,
"percent_delta": -0.1167,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.24,
"after": 0.2119,
"delta": -0.0281,
"percent_delta": -0.1171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0536,
"delta": 0.0536,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.2102,
"delta": -0.0298,
"percent_delta": -0.1242,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.276,
"after": 0.2467,
"delta": -0.0293,
"percent_delta": -0.1062,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.948,
"after": 1.024,
"delta": 0.076,
"percent_delta": 0.0802,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 2.8352,
"delta": 0.3352,
"percent_delta": 0.1341,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2043,
"delta": -0.0357,
"percent_delta": -0.1487,
"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": 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.0203,
"predicted_3B": 0.0018,
"predicted_AB": 2.8352,
"predicted_AVG": 0.1816,
"predicted_BB": 0.0324,
"predicted_H": 0.5148,
"predicted_HBP": 0.011,
"predicted_HR": 0.0551,
"predicted_OBP": 0.1908,
"predicted_R": 0.0566,
"predicted_RBI": 0.2221,
"predicted_SLG": 0.2483,
"predicted_SO": 1.0074
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0203,
"after": 0.0203,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0018,
"after": 0.0018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8352,
"after": 2.8352,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2043,
"after": 0.1816,
"delta": -0.0227,
"percent_delta": -0.1111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0319,
"after": 0.0324,
"delta": 0.0005,
"percent_delta": 0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4988,
"after": 0.5148,
"delta": 0.016,
"percent_delta": 0.0321,
"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.053,
"after": 0.0551,
"delta": 0.0021,
"percent_delta": 0.0396,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2119,
"after": 0.1908,
"delta": -0.0211,
"percent_delta": -0.0996,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0536,
"after": 0.0566,
"delta": 0.003,
"percent_delta": 0.056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2102,
"after": 0.2221,
"delta": 0.0119,
"percent_delta": 0.0566,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2467,
"after": 0.2483,
"delta": 0.0016,
"percent_delta": 0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.024,
"after": 1.0074,
"delta": -0.0166,
"percent_delta": -0.0162,
"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.2043,
"after": 0.1816,
"delta": -0.0227,
"percent_delta": -0.1111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=2.84), rates preserved: AVG=0.182 HR/AB=0.019",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0203,
"after": 0.0,
"delta": -0.0203,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0018,
"after": 0.0,
"delta": -0.0018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.8352,
"after": 3.0,
"delta": 0.1648,
"percent_delta": 0.0581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0324,
"after": 0.0,
"delta": -0.0324,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5148,
"after": 1.0,
"delta": 0.4852,
"percent_delta": 0.9425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.011,
"after": 0.0,
"delta": -0.011,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0551,
"after": 0.0,
"delta": -0.0551,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2221,
"after": 0.0,
"delta": -0.2221,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0074,
"after": 1.0,
"delta": -0.0074,
"percent_delta": -0.0073,
"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_H",
"before": 0.5148,
"after": 1.0,
"delta": 0.4852,
"percent_delta": 0.9425,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.2221,
"after": 0.0,
"delta": -0.2221,
"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.0566,
"after": 0.0,
"delta": -0.0566,
"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.0566,
"after": 0.0,
"delta": -0.0566,
"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.1816,
"after": 0.333,
"delta": 0.1514,
"percent_delta": 0.8337,
"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.1908,
"after": 0.333,
"delta": 0.1422,
"percent_delta": 0.7453,
"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.2483,
"after": 0.333,
"delta": 0.0847,
"percent_delta": 0.3411,
"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.1816,
"after": 0.333,
"delta": 0.1514,
"percent_delta": 0.8337,
"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": 2.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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"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_BB",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1816,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.1908,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2483,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1816,
"delta": -0.1514,
"percent_delta": -0.4548,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.1908,
"delta": -0.1422,
"percent_delta": -0.427,
"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.2483,
"delta": -0.0847,
"percent_delta": -0.2544,
"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.1816,
"delta": -0.1514,
"percent_delta": -0.4548,
"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.24,
"after": 0.1816,
"delta": -0.0584,
"percent_delta": -0.2433,
"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_H",
"before": 0.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"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.24,
"after": 0.1908,
"delta": -0.0492,
"percent_delta": -0.205,
"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.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.276,
"after": 0.2483,
"delta": -0.0277,
"percent_delta": -0.1004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.948,
"after": 1.0,
"delta": 0.052,
"percent_delta": 0.0549,
"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.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.510 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.240 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.240 | - |
| predicted_SLG | 0.276 | - |
| predicted_SO | 0.948 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.020 | 0.020 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 2.835 | 0.335 |
| predicted_AVG | 0.204 | -0.036 |
| predicted_BB | 0.032 | 0.032 |
| predicted_H | 0.499 | -0.011 |
| predicted_HBP | 0.011 | - |
| predicted_HR | 0.053 | -0.007 |
| predicted_OBP | 0.212 | -0.028 |
| predicted_R | 0.054 | 0.054 |
| predicted_RBI | 0.210 | -0.030 |
| predicted_SLG | 0.247 | -0.029 |
| predicted_SO | 1.024 | 0.076 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.020 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 2.835 | 0.000 |
| predicted_AVG | 0.182 | -0.023 |
| predicted_BB | 0.032 | 0.001 |
| predicted_H | 0.515 | 0.016 |
| predicted_HBP | 0.011 | 0.000 |
| predicted_HR | 0.055 | 0.002 |
| predicted_OBP | 0.191 | -0.021 |
| predicted_R | 0.057 | 0.003 |
| predicted_RBI | 0.222 | 0.012 |
| predicted_SLG | 0.248 | 0.002 |
| predicted_SO | 1.007 | -0.017 |
AB rounded to 3 (raw=2.84), rates preserved: AVG=0.182 HR/AB=0.019
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 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.020 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | 0.165 |
| predicted_AVG | 0.333 | 0.151 |
| predicted_BB | 0.000 | -0.032 |
| predicted_H | 1.000 | 0.485 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.333 | 0.142 |
| predicted_R | 0.000 | -0.057 |
| predicted_RBI | 0.000 | -0.222 |
| predicted_SLG | 0.333 | 0.085 |
| predicted_SO | 1.000 | -0.007 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 2.000 | 2.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 5.000 | 0.0833 | 0.0833 | 0.0833 | 0.0833 | 0.0000 | 0.0000 | 0.0000 | 0.4167 |
| last_10 | 0.20 | 8 | - | 22.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 10.000 | 0.0455 | 0.0455 | 0.0455 | 0.0454 | 0.0000 | 0.0000 | 0.0000 | 0.4546 |
| season | 0.60 | 16 | - | 58.000 | 5.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 22.000 | 0.0862 | 0.0862 | 0.0862 | 0.0862 | 0.0000 | 0.0000 | 0.0000 | 0.3793 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0580 |
| predicted_3B | 0.0050 |
| predicted_AB | 3.4570 |
| predicted_AVG | 0.1382 |
| predicted_BB | 0.0910 |
| predicted_H | 0.4780 |
| predicted_HBP | 0.0110 |
| predicted_HR | 0.0400 |
| predicted_OBP | 0.1598 |
| predicted_R | 0.1530 |
| predicted_RBI | 0.1550 |
| predicted_SLG | 0.1923 |
| predicted_SO | 1.1650 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0580 | 0.0203 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0018 | model_form_blend |
| predicted_AB | 2.5000 | 3.4570 | 2.8352 | model_form_blend |
| predicted_AVG | 0.2400 | 0.1382 | 0.2043 | model_form_blend |
| predicted_BB | 0.0000 | 0.0910 | 0.0319 | model_form_blend |
| predicted_H | 0.5100 | 0.4780 | 0.4988 | model_form_blend |
| predicted_HBP | - | 0.0110 | 0.0110 | form_only |
| predicted_HR | 0.0600 | 0.0400 | 0.0530 | model_form_blend |
| predicted_OBP | 0.2400 | 0.1598 | 0.2119 | model_form_blend |
| predicted_R | 0.0000 | 0.1530 | 0.0536 | model_form_blend |
| predicted_RBI | 0.2400 | 0.1550 | 0.2102 | model_form_blend |
| predicted_SLG | 0.2760 | 0.1923 | 0.2467 | model_form_blend |
| predicted_SO | 0.9480 | 1.1650 | 1.0240 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 27 |
| Season rows before report date | 27 |
| Report year | 2026 |
| Profile rows used | 25 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 2 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.086 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 20260609_ATL@CHW |
| game_type | short |
| mlbID | 506702 |
| playerID | 506702 |
| playerName | Sandy León |
| pos | C |
| started | False |
| startingPosition | C |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-09 |
| sl_k_percent | 38.9 |
| sl_bb_percent | 0.0 |
| sl_woba | 0.075 |
| sl_xwoba | 0.149 |
| sl_xba | 0.151 |
| sl_xslg | 0.192 |
| sl_sweet_spot_percent | 27.3 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 18.2 |
| sl_exit_velocity_avg | 82.1 |
| sl_launch_angle_avg | 21.4 |
| sl_whiff_percent | 28.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_2B | 0.151 | 0.000 | 0.000 | Hitting_2B | 0.151 | 0.000 | -0.151 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.784 | 5.000 | 6.000 | Hitting_AB | 3.784 | 3.000 | 1.216 | 2.000 |
| predicted_AVG | 0.222 | 0.200 | 0.167 | Hitting_AVG | 0.218 | 0.000 | -0.018 | 0.200 |
| predicted_BB | 0.322 | 0.000 | 1.000 | Hitting_BB | 0.322 | 0.000 | -0.322 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 0.830 | 1.000 | 1.000 | Hitting_H | 0.824 | 0.000 | 0.176 | 1.000 |
| predicted_HR | 0.100 | 1.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | 0.873 | 1.000 |
| predicted_OBP | 0.298 | 0.200 | 0.286 | Hitting_OBP | 0.292 | 0.250 | -0.092 | -0.050 |
| predicted_R | 0.514 | 1.000 | 1.000 | Hitting_R | 0.514 | 0.000 | 0.486 | 1.000 |
| predicted_RBI | 0.460 | 1.000 | 1.000 | Hitting_RBI | 0.539 | 0.000 | 0.461 | 1.000 |
| predicted_SLG | 0.362 | 0.800 | 0.167 | Hitting_SLG | 0.367 | 0.000 | 0.433 | 0.800 |
| predicted_SO | 1.253 | 0.000 | 2.000 | Hitting_SO | 1.253 | 1.000 | -1.253 | -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_AB: 3.7840 -> 5.0000 (boost 1.2160, better) |
| Biggest Deboost | predicted_SO: 1.2530 -> 0.0000 (deboost -1.2530, 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.7840 -> 6.2298 (boost 2.4458, better) | predicted_SLG: 0.3620 -> 0.3514 (deboost -0.0106, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.2970 -> 0.2866 (deboost -0.0104, 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.5741 -> 1.0000 (boost 0.4259, better) | predicted_H: 1.3758 -> 1.0000 (deboost -0.3758, worse) | AB rounded to 6 (raw=6.23), rates preserved: AVG=0.221 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7409 -> 1.0000 (boost 0.2591, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3505 -> 0.1670 (deboost -0.1835, 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_SO: 2.0000 -> 0.0000 (deboost -2.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.1670 -> 0.3505 (boost 0.1835, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663586",
"player_name": "Austin Riley",
"position": "SS",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.151,
"predicted_3B": 0.016,
"predicted_AB": 3.784,
"predicted_AVG": 0.222,
"predicted_BB": 0.322,
"predicted_H": 0.83,
"predicted_HR": 0.1,
"predicted_OBP": 0.298,
"predicted_R": 0.514,
"predicted_RBI": 0.46,
"predicted_SLG": 0.362,
"predicted_SO": 1.253
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3317,
"predicted_3B": 0.0195,
"predicted_AB": 6.2298,
"predicted_AVG": 0.2172,
"predicted_BB": 0.5649,
"predicted_H": 1.3331,
"predicted_HBP": 0.285,
"predicted_HR": 0.1402,
"predicted_OBP": 0.297,
"predicted_R": 0.7013,
"predicted_RBI": 0.7855,
"predicted_SLG": 0.3514,
"predicted_SO": 1.9363
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.151,
"after": 0.3317,
"delta": 0.1807,
"percent_delta": 1.1967,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0195,
"delta": 0.0035,
"percent_delta": 0.2187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.784,
"after": 6.2298,
"delta": 2.4458,
"percent_delta": 0.6464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.222,
"after": 0.2172,
"delta": -0.0048,
"percent_delta": -0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.322,
"after": 0.5649,
"delta": 0.2429,
"percent_delta": 0.7543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 1.3331,
"delta": 0.5031,
"percent_delta": 0.6061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1402,
"delta": 0.0402,
"percent_delta": 0.402,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.297,
"delta": -0.001,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.514,
"after": 0.7013,
"delta": 0.1873,
"percent_delta": 0.3644,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.7855,
"delta": 0.3255,
"percent_delta": 0.7076,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.362,
"after": 0.3514,
"delta": -0.0106,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.253,
"after": 1.9363,
"delta": 0.6833,
"percent_delta": 0.5453,
"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.784,
"after": 6.2298,
"delta": 2.4458,
"percent_delta": 0.6464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.362,
"after": 0.3514,
"delta": -0.0106,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3317,
"predicted_3B": 0.0195,
"predicted_AB": 6.2298,
"predicted_AVG": 0.2208,
"predicted_BB": 0.5741,
"predicted_H": 1.3758,
"predicted_HBP": 0.285,
"predicted_HR": 0.1457,
"predicted_OBP": 0.2866,
"predicted_R": 0.7409,
"predicted_RBI": 0.8299,
"predicted_SLG": 0.3505,
"predicted_SO": 1.9049
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3317,
"after": 0.3317,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0195,
"after": 0.0195,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.2298,
"after": 6.2298,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2172,
"after": 0.2208,
"delta": 0.0036,
"percent_delta": 0.0166,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5649,
"after": 0.5741,
"delta": 0.0092,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3331,
"after": 1.3758,
"delta": 0.0427,
"percent_delta": 0.032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.285,
"after": 0.285,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1402,
"after": 0.1457,
"delta": 0.0055,
"percent_delta": 0.0392,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.297,
"after": 0.2866,
"delta": -0.0104,
"percent_delta": -0.035,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7013,
"after": 0.7409,
"delta": 0.0396,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7855,
"after": 0.8299,
"delta": 0.0444,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3514,
"after": 0.3505,
"delta": -0.0009,
"percent_delta": -0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.9363,
"after": 1.9049,
"delta": -0.0314,
"percent_delta": -0.0162,
"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.297,
"after": 0.2866,
"delta": -0.0104,
"percent_delta": -0.035,
"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.221 HR/AB=0.023",
"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.3317,
"after": 0.0,
"delta": -0.3317,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0195,
"after": 0.0,
"delta": -0.0195,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.2298,
"after": 6.0,
"delta": -0.2298,
"percent_delta": -0.0369,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5741,
"after": 1.0,
"delta": 0.4259,
"percent_delta": 0.7419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3758,
"after": 1.0,
"delta": -0.3758,
"percent_delta": -0.2732,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.285,
"after": 0.0,
"delta": -0.285,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1457,
"after": 0.0,
"delta": -0.1457,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8299,
"after": 1.0,
"delta": 0.1701,
"percent_delta": 0.205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9049,
"after": 2.0,
"delta": 0.0951,
"percent_delta": 0.0499,
"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.5741,
"after": 1.0,
"delta": 0.4259,
"percent_delta": 0.7419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3758,
"after": 1.0,
"delta": -0.3758,
"percent_delta": -0.2732,
"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.7409,
"after": 1.0,
"delta": 0.2591,
"percent_delta": 0.3497,
"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.7409,
"after": 1.0,
"delta": 0.2591,
"percent_delta": 0.3497,
"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.2208,
"after": 0.167,
"delta": -0.0538,
"percent_delta": -0.2437,
"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.2866,
"after": 0.286,
"delta": -0.0006,
"percent_delta": -0.0021,
"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.3505,
"after": 0.167,
"delta": -0.1835,
"percent_delta": -0.5235,
"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.3505,
"after": 0.167,
"delta": -0.1835,
"percent_delta": -0.5235,
"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": 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": 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": 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": 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_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.2208,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2866,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3505,
"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.2208,
"delta": 0.0538,
"percent_delta": 0.3224,
"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.2866,
"delta": 0.0006,
"percent_delta": 0.002,
"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.167,
"after": 0.3505,
"delta": 0.1835,
"percent_delta": 1.0988,
"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.167,
"after": 0.3505,
"delta": 0.1835,
"percent_delta": 1.0988,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.151,
"after": 0.0,
"delta": -0.151,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.784,
"after": 5.0,
"delta": 1.216,
"percent_delta": 0.3214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.222,
"after": 0.2208,
"delta": -0.0012,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.322,
"after": 0.0,
"delta": -0.322,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 1.0,
"delta": 0.17,
"percent_delta": 0.2048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.2866,
"delta": -0.0114,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.514,
"after": 1.0,
"delta": 0.486,
"percent_delta": 0.9455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 1.0,
"delta": 0.54,
"percent_delta": 1.1739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.362,
"after": 0.3505,
"delta": -0.0115,
"percent_delta": -0.0318,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.253,
"after": 0.0,
"delta": -1.253,
"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_AB",
"before": 3.784,
"after": 5.0,
"delta": 1.216,
"percent_delta": 0.3214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.253,
"after": 0.0,
"delta": -1.253,
"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.151 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 3.784 | - |
| predicted_AVG | 0.222 | - |
| predicted_BB | 0.322 | - |
| predicted_H | 0.830 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.298 | - |
| predicted_R | 0.514 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.362 | - |
| predicted_SO | 1.253 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.332 | 0.181 |
| predicted_3B | 0.019 | 0.003 |
| predicted_AB | 6.230 | 2.446 |
| predicted_AVG | 0.217 | -0.005 |
| predicted_BB | 0.565 | 0.243 |
| predicted_H | 1.333 | 0.503 |
| predicted_HBP | 0.285 | - |
| predicted_HR | 0.140 | 0.040 |
| predicted_OBP | 0.297 | -0.001 |
| predicted_R | 0.701 | 0.187 |
| predicted_RBI | 0.785 | 0.325 |
| predicted_SLG | 0.351 | -0.011 |
| predicted_SO | 1.936 | 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.332 | 0.000 |
| predicted_3B | 0.019 | 0.000 |
| predicted_AB | 6.230 | 0.000 |
| predicted_AVG | 0.221 | 0.004 |
| predicted_BB | 0.574 | 0.009 |
| predicted_H | 1.376 | 0.043 |
| predicted_HBP | 0.285 | 0.000 |
| predicted_HR | 0.146 | 0.006 |
| predicted_OBP | 0.287 | -0.010 |
| predicted_R | 0.741 | 0.040 |
| predicted_RBI | 0.830 | 0.044 |
| predicted_SLG | 0.350 | -0.001 |
| predicted_SO | 1.905 | -0.031 |
AB rounded to 6 (raw=6.23), rates preserved: AVG=0.221 HR/AB=0.023
| 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.332 |
| predicted_3B | 0.000 | -0.019 |
| predicted_AB | 6.000 | -0.230 |
| predicted_AVG | 0.167 | -0.054 |
| predicted_BB | 1.000 | 0.426 |
| predicted_H | 1.000 | -0.376 |
| predicted_HR | 0.000 | -0.146 |
| predicted_OBP | 0.286 | -0.001 |
| predicted_R | 1.000 | 0.259 |
| predicted_RBI | 1.000 | 0.170 |
| predicted_SLG | 0.167 | -0.183 |
| predicted_SO | 2.000 | 0.095 |
Attached 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 | 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 | - | 17.000 | 4.000 | 2.000 | 0.000 | 0.000 | 2.000 | 1.000 | 2.000 | 5.000 | 0.2353 | 0.3500 | 0.3529 | 0.2353 | 0.0000 | 0.1177 | 0.1177 | 0.2941 |
| last_10 | 0.20 | 10 | - | 31.000 | 5.000 | 2.000 | 0.000 | 0.000 | 3.000 | 1.000 | 3.000 | 7.000 | 0.1613 | 0.2500 | 0.2258 | 0.1613 | 0.0000 | 0.0968 | 0.0968 | 0.2258 |
| season | 0.60 | 68 | - | 927.000 | 202.000 | 37.000 | 4.000 | 31.000 | 132.000 | 126.000 | 79.000 | 307.000 | 0.2179 | 0.2919 | 0.3668 | 0.2179 | 0.0334 | 0.1424 | 0.0852 | 0.3312 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5600 |
| predicted_3B | 0.0240 |
| predicted_AB | 9.3210 |
| predicted_AVG | 0.2112 |
| predicted_BB | 0.8720 |
| predicted_H | 1.9690 |
| predicted_HBP | 0.2850 |
| predicted_HR | 0.1910 |
| predicted_OBP | 0.2957 |
| predicted_R | 0.9380 |
| predicted_RBI | 1.1970 |
| predicted_SLG | 0.3379 |
| predicted_SO | 2.8000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1510 | 0.5600 | 0.3317 | model_form_blend |
| predicted_3B | 0.0160 | 0.0240 | 0.0195 | model_form_blend |
| predicted_AB | 3.7840 | 9.3210 | 6.2298 | model_form_blend |
| predicted_AVG | 0.2220 | 0.2112 | 0.2172 | model_form_blend |
| predicted_BB | 0.3220 | 0.8720 | 0.5649 | model_form_blend |
| predicted_H | 0.8300 | 1.9690 | 1.3331 | model_form_blend |
| predicted_HBP | - | 0.2850 | 0.2850 | form_only |
| predicted_HR | 0.1000 | 0.1910 | 0.1402 | model_form_blend |
| predicted_OBP | 0.2980 | 0.2957 | 0.2970 | model_form_blend |
| predicted_R | 0.5140 | 0.9380 | 0.7013 | model_form_blend |
| predicted_RBI | 0.4600 | 1.1970 | 0.7855 | model_form_blend |
| predicted_SLG | 0.3620 | 0.3379 | 0.3514 | model_form_blend |
| predicted_SO | 1.2530 | 2.8000 | 1.9363 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 245 |
| Season rows before report date | 245 |
| Report year | 2026 |
| Profile rows used | 245 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.218 |
| 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 | 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 | 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 | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 663586 |
| playerID | 663586 |
| playerName | Austin Riley |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 28.5 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.287 |
| sl_xwoba | 0.301 |
| sl_xba | 0.21 |
| sl_xslg | 0.391 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 10.0 |
| sl_hard_hit_percent | 44.1 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 19.2 |
| sl_whiff_percent | 31.7 |
| 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.147 | 0.000 | 0.000 | Hitting_2B | 0.145 | 0.000 | -0.145 | 0.000 |
| predicted_3B | 0.012 | 0.000 | 0.000 | Hitting_3B | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_AB | 3.215 | 4.000 | 5.000 | Hitting_AB | 3.176 | 4.000 | 0.824 | 0.000 |
| predicted_AVG | 0.243 | 0.250 | 0.200 | Hitting_AVG | 0.219 | 0.250 | 0.031 | 0.000 |
| predicted_BB | 0.337 | 1.000 | 1.000 | Hitting_BB | 0.339 | 0.000 | 0.661 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.670 | 1.000 | 1.000 | Hitting_H | 0.697 | 1.000 | 0.303 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.055 | 0.000 | -0.055 | 0.000 |
| predicted_OBP | 0.306 | 0.400 | 0.333 | Hitting_OBP | 0.306 | 0.250 | 0.094 | 0.150 |
| predicted_R | 0.472 | 0.000 | 1.000 | Hitting_R | 0.479 | 0.000 | -0.479 | 0.000 |
| predicted_RBI | 0.290 | 0.000 | 0.000 | Hitting_RBI | 0.279 | 0.000 | -0.279 | 0.000 |
| predicted_SLG | 0.329 | 0.250 | 0.200 | Hitting_SLG | 0.324 | 0.250 | -0.074 | 0.000 |
| predicted_SO | 0.865 | 1.000 | 1.000 | Hitting_SO | 0.855 | 1.000 | 0.145 | 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.2150 -> 4.0000 (boost 0.7850, better) |
| Biggest Deboost | predicted_R: 0.4720 -> 0.0000 (deboost -0.4720, 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.2150 -> 4.5577 (boost 1.3427, better) | predicted_SLG: 0.3290 -> 0.3038 (deboost -0.0252, 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.2227 -> 0.2077 (deboost -0.0150, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_BB: 0.5156 -> 1.0000 (boost 0.4844, better) | predicted_RBI: 0.3538 -> 0.0000 (deboost -0.3538, worse) | AB rounded to 5 (raw=4.56), rates preserved: AVG=0.208 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5977 -> 1.0000 (boost 0.4023, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2882 -> 0.3330 (boost 0.0448, better) | predicted_SLG: 0.2977 -> 0.2000 (deboost -0.0977, 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: 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.2977 (boost 0.0977, better) | predicted_OBP: 0.3330 -> 0.2882 (deboost -0.0448, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "573262",
"player_name": "Mike Yastrzemski",
"position": "LF",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.147,
"predicted_3B": 0.012,
"predicted_AB": 3.215,
"predicted_AVG": 0.243,
"predicted_BB": 0.337,
"predicted_H": 0.67,
"predicted_HR": 0.06,
"predicted_OBP": 0.306,
"predicted_R": 0.472,
"predicted_RBI": 0.29,
"predicted_SLG": 0.329,
"predicted_SO": 0.865
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1806,
"predicted_3B": 0.0133,
"predicted_AB": 4.5577,
"predicted_AVG": 0.2227,
"predicted_BB": 0.5074,
"predicted_H": 0.9171,
"predicted_HBP": 0.177,
"predicted_HR": 0.0652,
"predicted_OBP": 0.3025,
"predicted_R": 0.5657,
"predicted_RBI": 0.3349,
"predicted_SLG": 0.3038,
"predicted_SO": 1.1853
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.1806,
"delta": 0.0336,
"percent_delta": 0.2286,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.012,
"after": 0.0133,
"delta": 0.0013,
"percent_delta": 0.1083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.215,
"after": 4.5577,
"delta": 1.3427,
"percent_delta": 0.4176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2227,
"delta": -0.0203,
"percent_delta": -0.0835,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 0.5074,
"delta": 0.1704,
"percent_delta": 0.5056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 0.9171,
"delta": 0.2471,
"percent_delta": 0.3688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0652,
"delta": 0.0052,
"percent_delta": 0.0867,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.3025,
"delta": -0.0035,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.5657,
"delta": 0.0937,
"percent_delta": 0.1985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.3349,
"delta": 0.0449,
"percent_delta": 0.1548,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.3038,
"delta": -0.0252,
"percent_delta": -0.0766,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.865,
"after": 1.1853,
"delta": 0.3203,
"percent_delta": 0.3703,
"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.215,
"after": 4.5577,
"delta": 1.3427,
"percent_delta": 0.4176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.3038,
"delta": -0.0252,
"percent_delta": -0.0766,
"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.1806,
"predicted_3B": 0.0133,
"predicted_AB": 4.5577,
"predicted_AVG": 0.2077,
"predicted_BB": 0.5156,
"predicted_H": 0.9464,
"predicted_HBP": 0.177,
"predicted_HR": 0.0678,
"predicted_OBP": 0.2882,
"predicted_R": 0.5977,
"predicted_RBI": 0.3538,
"predicted_SLG": 0.2977,
"predicted_SO": 1.1661
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1806,
"after": 0.1806,
"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": 4.5577,
"after": 4.5577,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2227,
"after": 0.2077,
"delta": -0.015,
"percent_delta": -0.0674,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5074,
"after": 0.5156,
"delta": 0.0082,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9171,
"after": 0.9464,
"delta": 0.0293,
"percent_delta": 0.0319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.177,
"after": 0.177,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0652,
"after": 0.0678,
"delta": 0.0026,
"percent_delta": 0.0399,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3025,
"after": 0.2882,
"delta": -0.0143,
"percent_delta": -0.0473,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5657,
"after": 0.5977,
"delta": 0.032,
"percent_delta": 0.0566,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3349,
"after": 0.3538,
"delta": 0.0189,
"percent_delta": 0.0564,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3038,
"after": 0.2977,
"delta": -0.0061,
"percent_delta": -0.0201,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1853,
"after": 1.1661,
"delta": -0.0192,
"percent_delta": -0.0162,
"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.2227,
"after": 0.2077,
"delta": -0.015,
"percent_delta": -0.0674,
"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.208 HR/AB=0.015",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1806,
"after": 0.0,
"delta": -0.1806,
"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": 4.5577,
"after": 5.0,
"delta": 0.4423,
"percent_delta": 0.097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5156,
"after": 1.0,
"delta": 0.4844,
"percent_delta": 0.9395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9464,
"after": 1.0,
"delta": 0.0536,
"percent_delta": 0.0566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.177,
"after": 0.0,
"delta": -0.177,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0678,
"after": 0.0,
"delta": -0.0678,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3538,
"after": 0.0,
"delta": -0.3538,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1661,
"after": 1.0,
"delta": -0.1661,
"percent_delta": -0.1424,
"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.5156,
"after": 1.0,
"delta": 0.4844,
"percent_delta": 0.9395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3538,
"after": 0.0,
"delta": -0.3538,
"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": 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": 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.5977,
"after": 1.0,
"delta": 0.4023,
"percent_delta": 0.6731,
"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.5977,
"after": 1.0,
"delta": 0.4023,
"percent_delta": 0.6731,
"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": 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.2077,
"after": 0.2,
"delta": -0.0077,
"percent_delta": -0.0371,
"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.2882,
"after": 0.333,
"delta": 0.0448,
"percent_delta": 0.1554,
"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.2977,
"after": 0.2,
"delta": -0.0977,
"percent_delta": -0.3282,
"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.2882,
"after": 0.333,
"delta": 0.0448,
"percent_delta": 0.1554,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2977,
"after": 0.2,
"delta": -0.0977,
"percent_delta": -0.3282,
"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": 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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 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.2077,
"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.2882,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2977,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2077,
"delta": 0.0077,
"percent_delta": 0.0383,
"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.333,
"after": 0.2882,
"delta": -0.0448,
"percent_delta": -0.1346,
"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.2977,
"delta": 0.0977,
"percent_delta": 0.4886,
"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.2977,
"delta": 0.0977,
"percent_delta": 0.4886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2882,
"delta": -0.0448,
"percent_delta": -0.1346,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.012,
"after": 0.0,
"delta": -0.012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.215,
"after": 4.0,
"delta": 0.785,
"percent_delta": 0.2442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2077,
"delta": -0.0353,
"percent_delta": -0.1453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 1.0,
"delta": 0.663,
"percent_delta": 1.9674,
"direction": "boost",
"projection_effect": "better",
"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.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.2882,
"delta": -0.0178,
"percent_delta": -0.0582,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.0,
"delta": -0.472,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.329,
"after": 0.2977,
"delta": -0.0313,
"percent_delta": -0.0951,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.865,
"after": 1.0,
"delta": 0.135,
"percent_delta": 0.1561,
"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.215,
"after": 4.0,
"delta": 0.785,
"percent_delta": 0.2442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.472,
"after": 0.0,
"delta": -0.472,
"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.012 | - |
| predicted_AB | 3.215 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.337 | - |
| predicted_H | 0.670 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.306 | - |
| predicted_R | 0.472 | - |
| predicted_RBI | 0.290 | - |
| predicted_SLG | 0.329 | - |
| predicted_SO | 0.865 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.181 | 0.034 |
| predicted_3B | 0.013 | 0.001 |
| predicted_AB | 4.558 | 1.343 |
| predicted_AVG | 0.223 | -0.020 |
| predicted_BB | 0.507 | 0.170 |
| predicted_H | 0.917 | 0.247 |
| predicted_HBP | 0.177 | - |
| predicted_HR | 0.065 | 0.005 |
| predicted_OBP | 0.302 | -0.004 |
| predicted_R | 0.566 | 0.094 |
| predicted_RBI | 0.335 | 0.045 |
| predicted_SLG | 0.304 | -0.025 |
| predicted_SO | 1.185 | 0.320 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.181 | 0.000 |
| predicted_3B | 0.013 | 0.000 |
| predicted_AB | 4.558 | 0.000 |
| predicted_AVG | 0.208 | -0.015 |
| predicted_BB | 0.516 | 0.008 |
| predicted_H | 0.946 | 0.029 |
| predicted_HBP | 0.177 | 0.000 |
| predicted_HR | 0.068 | 0.003 |
| predicted_OBP | 0.288 | -0.014 |
| predicted_R | 0.598 | 0.032 |
| predicted_RBI | 0.354 | 0.019 |
| predicted_SLG | 0.298 | -0.006 |
| predicted_SO | 1.166 | -0.019 |
AB rounded to 5 (raw=4.56), rates preserved: AVG=0.208 HR/AB=0.015
| 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 | 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 | 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.181 |
| predicted_3B | 0.000 | -0.013 |
| predicted_AB | 5.000 | 0.442 |
| predicted_AVG | 0.200 | -0.008 |
| predicted_BB | 1.000 | 0.484 |
| predicted_H | 1.000 | 0.054 |
| predicted_HR | 0.000 | -0.068 |
| predicted_OBP | 0.333 | 0.045 |
| predicted_R | 1.000 | 0.402 |
| predicted_RBI | 0.000 | -0.354 |
| predicted_SLG | 0.200 | -0.098 |
| predicted_SO | 1.000 | -0.166 |
Attached 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 | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 2.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 4.000 | 0.1250 | 0.2632 | 0.1250 | 0.1250 | 0.0000 | 0.0000 | 0.1250 | 0.2500 |
| last_10 | 0.20 | 10 | - | 27.000 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 4.000 | 6.000 | 0.1852 | 0.3125 | 0.2222 | 0.1852 | 0.0000 | 0.0370 | 0.1482 | 0.2222 |
| season | 0.60 | 60 | - | 524.000 | 115.000 | 24.000 | 2.000 | 9.000 | 45.000 | 77.000 | 55.000 | 141.000 | 0.2195 | 0.3032 | 0.3244 | 0.2195 | 0.0172 | 0.0859 | 0.1050 | 0.2691 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2240 |
| predicted_3B | 0.0150 |
| predicted_AB | 6.2960 |
| predicted_AVG | 0.1965 |
| predicted_BB | 0.7280 |
| predicted_H | 1.2370 |
| predicted_HBP | 0.1770 |
| predicted_HR | 0.0720 |
| predicted_OBP | 0.2979 |
| predicted_R | 0.6870 |
| predicted_RBI | 0.3930 |
| predicted_SLG | 0.2711 |
| predicted_SO | 1.6000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.2240 | 0.1806 | model_form_blend |
| predicted_3B | 0.0120 | 0.0150 | 0.0133 | model_form_blend |
| predicted_AB | 3.2150 | 6.2960 | 4.5577 | model_form_blend |
| predicted_AVG | 0.2430 | 0.1965 | 0.2227 | model_form_blend |
| predicted_BB | 0.3370 | 0.7280 | 0.5074 | model_form_blend |
| predicted_H | 0.6700 | 1.2370 | 0.9171 | model_form_blend |
| predicted_HBP | - | 0.1770 | 0.1770 | form_only |
| predicted_HR | 0.0600 | 0.0720 | 0.0652 | model_form_blend |
| predicted_OBP | 0.3060 | 0.2979 | 0.3025 | model_form_blend |
| predicted_R | 0.4720 | 0.6870 | 0.5657 | model_form_blend |
| predicted_RBI | 0.2900 | 0.3930 | 0.3349 | model_form_blend |
| predicted_SLG | 0.3290 | 0.2711 | 0.3038 | model_form_blend |
| predicted_SO | 0.8650 | 1.6000 | 1.1853 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 165 |
| Season rows before report date | 165 |
| Report year | 2026 |
| Profile rows used | 163 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.219 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 573262 |
| playerID | 573262 |
| playerName | Mike Yastrzemski |
| pos | LF |
| started | True |
| startingPosition | RF |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.306 |
| sl_xwoba | 0.293 |
| sl_xba | 0.231 |
| sl_xslg | 0.324 |
| sl_sweet_spot_percent | 29.9 |
| sl_barrel_batted_rate | 3.9 |
| sl_hard_hit_percent | 40.9 |
| sl_exit_velocity_avg | 90.6 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 24.3 |
| sl_swing_percent | 41.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.052 | 0.000 | 0.000 | Hitting_2B | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_3B | 0.065 | 0.000 | 0.000 | Hitting_3B | 0.060 | 0.000 | -0.060 | 0.000 |
| predicted_AB | 2.766 | 5.000 | 4.000 | Hitting_AB | 2.566 | 0.000 | 2.434 | 5.000 |
| predicted_AVG | 0.258 | 0.200 | 0.250 | Hitting_AVG | 0.211 | - | -0.011 | - |
| predicted_BB | 0.143 | 0.000 | 0.000 | Hitting_BB | 0.145 | 1.000 | -0.145 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.470 | 1.000 | 1.000 | Hitting_H | 0.542 | 0.000 | 0.458 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_OBP | 0.277 | 0.200 | 0.250 | Hitting_OBP | 0.257 | 1.000 | -0.057 | -0.800 |
| predicted_R | 0.351 | 0.000 | 1.000 | Hitting_R | 0.337 | 0.000 | -0.337 | 0.000 |
| predicted_RBI | 0.290 | 0.000 | 0.000 | Hitting_RBI | 0.434 | 0.000 | -0.434 | 0.000 |
| predicted_SLG | 0.321 | 0.200 | 0.250 | Hitting_SLG | 0.362 | - | -0.162 | - |
| predicted_SO | 0.597 | 3.000 | 1.000 | Hitting_SO | 0.554 | 0.000 | 2.446 | 3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 12 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.5970 -> 3.0000 (boost 2.4030, worse) |
| Biggest Deboost | predicted_R: 0.3510 -> 0.0000 (deboost -0.3510, 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: 2.7660 -> 3.7406 (boost 0.9746, better) | predicted_AVG: 0.2580 -> 0.2182 (deboost -0.0398, 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.2182 -> 0.1710 (deboost -0.0472, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_H: 0.6396 -> 1.0000 (boost 0.3604, better) | predicted_RBI: 0.4651 -> 0.0000 (deboost -0.4651, worse) | AB rounded to 4 (raw=3.74), rates preserved: AVG=0.171 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5814 -> 1.0000 (boost 0.4186, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1710 -> 0.2500 (boost 0.0790, better) | predicted_SLG: 0.2944 -> 0.2500 (deboost -0.0444, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_SO: 1.0000 -> 3.0000 (boost 2.0000, worse) | predicted_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.2944 (boost 0.0444, better) | predicted_AVG: 0.2500 -> 0.1710 (deboost -0.0790, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "642201",
"player_name": "Eli White",
"position": "CF",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.052,
"predicted_3B": 0.065,
"predicted_AB": 2.766,
"predicted_AVG": 0.258,
"predicted_BB": 0.143,
"predicted_H": 0.47,
"predicted_HR": 0.06,
"predicted_OBP": 0.277,
"predicted_R": 0.351,
"predicted_RBI": 0.29,
"predicted_SLG": 0.321,
"predicted_SO": 0.597
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0678,
"predicted_3B": 0.0704,
"predicted_AB": 3.7406,
"predicted_AVG": 0.2182,
"predicted_BB": 0.3153,
"predicted_H": 0.6198,
"predicted_HBP": 0.036,
"predicted_HR": 0.0812,
"predicted_OBP": 0.2655,
"predicted_R": 0.5503,
"predicted_RBI": 0.4402,
"predicted_SLG": 0.3021,
"predicted_SO": 0.7044
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.052,
"after": 0.0678,
"delta": 0.0158,
"percent_delta": 0.3038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.065,
"after": 0.0704,
"delta": 0.0054,
"percent_delta": 0.0831,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.766,
"after": 3.7406,
"delta": 0.9746,
"percent_delta": 0.3523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2182,
"delta": -0.0398,
"percent_delta": -0.1543,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.143,
"after": 0.3153,
"delta": 0.1723,
"percent_delta": 1.2049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.47,
"after": 0.6198,
"delta": 0.1498,
"percent_delta": 0.3187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0812,
"delta": 0.0212,
"percent_delta": 0.3533,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.277,
"after": 0.2655,
"delta": -0.0115,
"percent_delta": -0.0415,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.351,
"after": 0.5503,
"delta": 0.1993,
"percent_delta": 0.5678,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.4402,
"delta": 0.1502,
"percent_delta": 0.5179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.321,
"after": 0.3021,
"delta": -0.0189,
"percent_delta": -0.0589,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.597,
"after": 0.7044,
"delta": 0.1074,
"percent_delta": 0.1799,
"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": 2.766,
"after": 3.7406,
"delta": 0.9746,
"percent_delta": 0.3523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2182,
"delta": -0.0398,
"percent_delta": -0.1543,
"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": 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.0678,
"predicted_3B": 0.0704,
"predicted_AB": 3.7406,
"predicted_AVG": 0.171,
"predicted_BB": 0.3204,
"predicted_H": 0.6396,
"predicted_HBP": 0.036,
"predicted_HR": 0.0844,
"predicted_OBP": 0.2364,
"predicted_R": 0.5814,
"predicted_RBI": 0.4651,
"predicted_SLG": 0.2944,
"predicted_SO": 0.693
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0678,
"after": 0.0678,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0704,
"after": 0.0704,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7406,
"after": 3.7406,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2182,
"after": 0.171,
"delta": -0.0472,
"percent_delta": -0.2163,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3153,
"after": 0.3204,
"delta": 0.0051,
"percent_delta": 0.0162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6198,
"after": 0.6396,
"delta": 0.0198,
"percent_delta": 0.0319,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.036,
"after": 0.036,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0812,
"after": 0.0844,
"delta": 0.0032,
"percent_delta": 0.0394,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2655,
"after": 0.2364,
"delta": -0.0291,
"percent_delta": -0.1096,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5503,
"after": 0.5814,
"delta": 0.0311,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4402,
"after": 0.4651,
"delta": 0.0249,
"percent_delta": 0.0566,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3021,
"after": 0.2944,
"delta": -0.0077,
"percent_delta": -0.0255,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7044,
"after": 0.693,
"delta": -0.0114,
"percent_delta": -0.0162,
"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.2182,
"after": 0.171,
"delta": -0.0472,
"percent_delta": -0.2163,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.74), rates preserved: AVG=0.171 HR/AB=0.023",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0678,
"after": 0.0,
"delta": -0.0678,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0704,
"after": 0.0,
"delta": -0.0704,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.7406,
"after": 4.0,
"delta": 0.2594,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3204,
"after": 0.0,
"delta": -0.3204,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6396,
"after": 1.0,
"delta": 0.3604,
"percent_delta": 0.5635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.036,
"after": 0.0,
"delta": -0.036,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0844,
"after": 0.0,
"delta": -0.0844,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4651,
"after": 0.0,
"delta": -0.4651,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.693,
"after": 1.0,
"delta": 0.307,
"percent_delta": 0.443,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.6396,
"after": 1.0,
"delta": 0.3604,
"percent_delta": 0.5635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4651,
"after": 0.0,
"delta": -0.4651,
"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.5814,
"after": 1.0,
"delta": 0.4186,
"percent_delta": 0.72,
"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.5814,
"after": 1.0,
"delta": 0.4186,
"percent_delta": 0.72,
"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.171,
"after": 0.25,
"delta": 0.079,
"percent_delta": 0.462,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2944,
"after": 0.25,
"delta": -0.0444,
"percent_delta": -0.1508,
"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.171,
"after": 0.25,
"delta": 0.079,
"percent_delta": 0.462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2944,
"after": 0.25,
"delta": -0.0444,
"percent_delta": -0.1508,
"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": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.171,
"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.2364,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2944,
"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": 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.171,
"delta": -0.079,
"percent_delta": -0.316,
"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.2364,
"delta": -0.0136,
"percent_delta": -0.0544,
"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.2944,
"delta": 0.0444,
"percent_delta": 0.1778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.2944,
"delta": 0.0444,
"percent_delta": 0.1778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.171,
"delta": -0.079,
"percent_delta": -0.316,
"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.052,
"after": 0.0,
"delta": -0.052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.065,
"after": 0.0,
"delta": -0.065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 2.766,
"after": 5.0,
"delta": 2.234,
"percent_delta": 0.8077,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.171,
"delta": -0.087,
"percent_delta": -0.3372,
"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.47,
"after": 1.0,
"delta": 0.53,
"percent_delta": 1.1277,
"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.277,
"after": 0.2364,
"delta": -0.0406,
"percent_delta": -0.1466,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.351,
"after": 0.0,
"delta": -0.351,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.321,
"after": 0.2944,
"delta": -0.0266,
"percent_delta": -0.0829,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.597,
"after": 3.0,
"delta": 2.403,
"percent_delta": 4.0251,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 12,
"boosted_metrics": 3,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.597,
"after": 3.0,
"delta": 2.403,
"percent_delta": 4.0251,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.351,
"after": 0.0,
"delta": -0.351,
"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.052 | - |
| predicted_3B | 0.065 | - |
| predicted_AB | 2.766 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.143 | - |
| predicted_H | 0.470 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.277 | - |
| predicted_R | 0.351 | - |
| predicted_RBI | 0.290 | - |
| predicted_SLG | 0.321 | - |
| predicted_SO | 0.597 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.068 | 0.016 |
| predicted_3B | 0.070 | 0.005 |
| predicted_AB | 3.741 | 0.975 |
| predicted_AVG | 0.218 | -0.040 |
| predicted_BB | 0.315 | 0.172 |
| predicted_H | 0.620 | 0.150 |
| predicted_HBP | 0.036 | - |
| predicted_HR | 0.081 | 0.021 |
| predicted_OBP | 0.266 | -0.012 |
| predicted_R | 0.550 | 0.199 |
| predicted_RBI | 0.440 | 0.150 |
| predicted_SLG | 0.302 | -0.019 |
| predicted_SO | 0.704 | 0.107 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.068 | 0.000 |
| predicted_3B | 0.070 | 0.000 |
| predicted_AB | 3.741 | 0.000 |
| predicted_AVG | 0.171 | -0.047 |
| predicted_BB | 0.320 | 0.005 |
| predicted_H | 0.640 | 0.020 |
| predicted_HBP | 0.036 | 0.000 |
| predicted_HR | 0.084 | 0.003 |
| predicted_OBP | 0.236 | -0.029 |
| predicted_R | 0.581 | 0.031 |
| predicted_RBI | 0.465 | 0.025 |
| predicted_SLG | 0.294 | -0.008 |
| predicted_SO | 0.693 | -0.011 |
AB rounded to 4 (raw=3.74), rates preserved: AVG=0.171 HR/AB=0.023
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.068 |
| predicted_3B | 0.000 | -0.070 |
| predicted_AB | 4.000 | 0.259 |
| predicted_AVG | 0.250 | 0.079 |
| predicted_BB | 0.000 | -0.320 |
| predicted_H | 1.000 | 0.360 |
| predicted_HR | 0.000 | -0.084 |
| predicted_OBP | 0.250 | 0.014 |
| predicted_R | 1.000 | 0.419 |
| predicted_RBI | 0.000 | -0.465 |
| predicted_SLG | 0.250 | -0.044 |
| predicted_SO | 1.000 | 0.307 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 7.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 0.000 | 0.0000 | 0.2222 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.2857 | 0.0000 |
| last_10 | 0.20 | 6 | - | 23.000 | 0.000 | 0.000 | 0.000 | 0.000 | 3.000 | 4.000 | 4.000 | 3.000 | 0.0000 | 0.1481 | 0.0000 | 0.0000 | 0.0000 | 0.1304 | 0.1739 | 0.1304 |
| season | 0.60 | 32 | - | 213.000 | 45.000 | 4.000 | 5.000 | 6.000 | 36.000 | 27.000 | 11.000 | 46.000 | 0.2113 | 0.2533 | 0.3615 | 0.2113 | 0.0282 | 0.1690 | 0.0516 | 0.2160 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0900 |
| predicted_3B | 0.0780 |
| predicted_AB | 5.1080 |
| predicted_AVG | 0.1624 |
| predicted_BB | 0.5570 |
| predicted_H | 0.8300 |
| predicted_HBP | 0.0360 |
| predicted_HR | 0.1110 |
| predicted_OBP | 0.2493 |
| predicted_R | 0.8300 |
| predicted_RBI | 0.6510 |
| predicted_SLG | 0.2757 |
| predicted_SO | 0.8550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0520 | 0.0900 | 0.0678 | model_form_blend |
| predicted_3B | 0.0650 | 0.0780 | 0.0704 | model_form_blend |
| predicted_AB | 2.7660 | 5.1080 | 3.7406 | model_form_blend |
| predicted_AVG | 0.2580 | 0.1624 | 0.2182 | model_form_blend |
| predicted_BB | 0.1430 | 0.5570 | 0.3153 | model_form_blend |
| predicted_H | 0.4700 | 0.8300 | 0.6198 | model_form_blend |
| predicted_HBP | - | 0.0360 | 0.0360 | form_only |
| predicted_HR | 0.0600 | 0.1110 | 0.0812 | model_form_blend |
| predicted_OBP | 0.2770 | 0.2493 | 0.2655 | model_form_blend |
| predicted_R | 0.3510 | 0.8300 | 0.5503 | model_form_blend |
| predicted_RBI | 0.2900 | 0.6510 | 0.4402 | model_form_blend |
| predicted_SLG | 0.3210 | 0.2757 | 0.3021 | model_form_blend |
| predicted_SO | 0.5970 | 0.8550 | 0.7044 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 83 |
| Season rows before report date | 83 |
| Report year | 2026 |
| Profile rows used | 77 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.211 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| 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 | 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 | 20260610_ATL@CHW |
| game_type | ph |
| mlbID | 642201 |
| note | Walked for Wynns, A in the 9th. |
| playerID | 642201 |
| playerName | Eli White |
| pos | CF |
| started | False |
| startingPosition | PH |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.5 |
| sl_bb_percent | 6.3 |
| sl_woba | 0.269 |
| sl_xwoba | 0.294 |
| sl_xba | 0.253 |
| sl_xslg | 0.352 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 35.0 |
| sl_exit_velocity_avg | 87.3 |
| sl_launch_angle_avg | 4.3 |
| sl_whiff_percent | 27.3 |
| sl_swing_percent | 49.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.126 | 0.000 | 0.000 | Hitting_2B | 0.122 | 0.000 | -0.122 | 0.000 |
| predicted_3B | 0.008 | 0.000 | 0.000 | Hitting_3B | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_AB | 3.378 | 3.000 | 5.000 | Hitting_AB | 3.275 | 4.000 | -0.275 | -1.000 |
| predicted_AVG | 0.261 | 0.333 | 0.200 | Hitting_AVG | 0.329 | 0.250 | 0.005 | 0.083 |
| predicted_BB | 0.142 | 1.000 | 0.000 | Hitting_BB | 0.160 | 0.000 | 0.840 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.640 | 1.000 | 1.000 | Hitting_H | 1.076 | 1.000 | -0.076 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.130 | 0.000 | -0.130 | 0.000 |
| predicted_OBP | 0.295 | 0.500 | 0.200 | Hitting_OBP | 0.362 | 0.250 | 0.138 | 0.250 |
| predicted_R | 0.543 | 1.000 | 1.000 | Hitting_R | 0.542 | 0.000 | 0.458 | 1.000 |
| predicted_RBI | 0.400 | 1.000 | 1.000 | Hitting_RBI | 0.649 | 0.000 | 0.351 | 1.000 |
| predicted_SLG | 0.399 | 0.333 | 0.200 | Hitting_SLG | 0.490 | 0.250 | -0.156 | 0.083 |
| predicted_SO | 0.480 | 2.000 | 1.000 | Hitting_SO | 0.466 | 0.000 | 1.534 | 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.4800 -> 2.0000 (boost 1.5200, worse) |
| Biggest Deboost | predicted_AB: 3.3780 -> 3.0000 (deboost -0.3780, 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.3780 -> 4.6593 (boost 1.2813, 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.2637 -> 0.2428 (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 | 7 | 3 | 4 | 2 | 5 | predicted_SO: 0.6180 -> 1.0000 (boost 0.3820, worse) | predicted_BB: 0.2615 -> 0.0000 (deboost -0.2615, worse) | AB rounded to 5 (raw=4.66), rates preserved: AVG=0.243 HR/AB=0.037 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7448 -> 1.0000 (boost 0.2552, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3872 -> 0.2000 (deboost -0.1872, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_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.3872 (boost 0.1872, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "642086",
"player_name": "Dominic Smith",
"position": "RF",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.126,
"predicted_3B": 0.008,
"predicted_AB": 3.378,
"predicted_AVG": 0.261,
"predicted_BB": 0.142,
"predicted_H": 0.64,
"predicted_HR": 0.1,
"predicted_OBP": 0.295,
"predicted_R": 0.543,
"predicted_RBI": 0.4,
"predicted_SLG": 0.399,
"predicted_SO": 0.48
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1372,
"predicted_3B": 0.0089,
"predicted_AB": 4.6593,
"predicted_AVG": 0.2637,
"predicted_BB": 0.2573,
"predicted_H": 1.0962,
"predicted_HBP": 0.045,
"predicted_HR": 0.1661,
"predicted_OBP": 0.3023,
"predicted_R": 0.705,
"predicted_RBI": 0.6929,
"predicted_SLG": 0.4055,
"predicted_SO": 0.6282
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.126,
"after": 0.1372,
"delta": 0.0112,
"percent_delta": 0.0889,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.008,
"after": 0.0089,
"delta": 0.0009,
"percent_delta": 0.1125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.378,
"after": 4.6593,
"delta": 1.2813,
"percent_delta": 0.3793,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2637,
"delta": 0.0027,
"percent_delta": 0.0103,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.142,
"after": 0.2573,
"delta": 0.1153,
"percent_delta": 0.812,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0962,
"delta": 0.4562,
"percent_delta": 0.7128,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1661,
"delta": 0.0661,
"percent_delta": 0.661,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.3023,
"delta": 0.0073,
"percent_delta": 0.0247,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.543,
"after": 0.705,
"delta": 0.162,
"percent_delta": 0.2983,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.6929,
"delta": 0.2929,
"percent_delta": 0.7322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.4055,
"delta": 0.0065,
"percent_delta": 0.0163,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.48,
"after": 0.6282,
"delta": 0.1482,
"percent_delta": 0.3088,
"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.378,
"after": 4.6593,
"delta": 1.2813,
"percent_delta": 0.3793,
"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.1372,
"predicted_3B": 0.0089,
"predicted_AB": 4.6593,
"predicted_AVG": 0.2428,
"predicted_BB": 0.2615,
"predicted_H": 1.1313,
"predicted_HBP": 0.045,
"predicted_HR": 0.1726,
"predicted_OBP": 0.283,
"predicted_R": 0.7448,
"predicted_RBI": 0.732,
"predicted_SLG": 0.3872,
"predicted_SO": 0.618
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1372,
"after": 0.1372,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0089,
"after": 0.0089,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6593,
"after": 4.6593,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2637,
"after": 0.2428,
"delta": -0.0209,
"percent_delta": -0.0793,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2573,
"after": 0.2615,
"delta": 0.0042,
"percent_delta": 0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0962,
"after": 1.1313,
"delta": 0.0351,
"percent_delta": 0.032,
"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.1661,
"after": 0.1726,
"delta": 0.0065,
"percent_delta": 0.0391,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3023,
"after": 0.283,
"delta": -0.0193,
"percent_delta": -0.0638,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.705,
"after": 0.7448,
"delta": 0.0398,
"percent_delta": 0.0565,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6929,
"after": 0.732,
"delta": 0.0391,
"percent_delta": 0.0564,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4055,
"after": 0.3872,
"delta": -0.0183,
"percent_delta": -0.0451,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6282,
"after": 0.618,
"delta": -0.0102,
"percent_delta": -0.0162,
"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.2637,
"after": 0.2428,
"delta": -0.0209,
"percent_delta": -0.0793,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.66), rates preserved: AVG=0.243 HR/AB=0.037",
"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.1372,
"after": 0.0,
"delta": -0.1372,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0089,
"after": 0.0,
"delta": -0.0089,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6593,
"after": 5.0,
"delta": 0.3407,
"percent_delta": 0.0731,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2615,
"after": 0.0,
"delta": -0.2615,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1313,
"after": 1.0,
"delta": -0.1313,
"percent_delta": -0.1161,
"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.1726,
"after": 0.0,
"delta": -0.1726,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.732,
"after": 1.0,
"delta": 0.268,
"percent_delta": 0.3661,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.618,
"after": 1.0,
"delta": 0.382,
"percent_delta": 0.6181,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.618,
"after": 1.0,
"delta": 0.382,
"percent_delta": 0.6181,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2615,
"after": 0.0,
"delta": -0.2615,
"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.7448,
"after": 1.0,
"delta": 0.2552,
"percent_delta": 0.3426,
"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.7448,
"after": 1.0,
"delta": 0.2552,
"percent_delta": 0.3426,
"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.2428,
"after": 0.2,
"delta": -0.0428,
"percent_delta": -0.1763,
"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.283,
"after": 0.2,
"delta": -0.083,
"percent_delta": -0.2933,
"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.3872,
"after": 0.2,
"delta": -0.1872,
"percent_delta": -0.4835,
"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.3872,
"after": 0.2,
"delta": -0.1872,
"percent_delta": -0.4835,
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_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.2428,
"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.283,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3872,
"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.2428,
"delta": 0.0428,
"percent_delta": 0.214,
"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.283,
"delta": 0.083,
"percent_delta": 0.4152,
"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.3872,
"delta": 0.1872,
"percent_delta": 0.9361,
"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.3872,
"delta": 0.1872,
"percent_delta": 0.9361,
"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.008,
"after": 0.0,
"delta": -0.008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.378,
"after": 3.0,
"delta": -0.378,
"percent_delta": -0.1119,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.261,
"after": 0.2428,
"delta": -0.0182,
"percent_delta": -0.0697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.142,
"after": 1.0,
"delta": 0.858,
"percent_delta": 6.0423,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0,
"delta": 0.36,
"percent_delta": 0.5625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.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.283,
"delta": -0.012,
"percent_delta": -0.0407,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.543,
"after": 1.0,
"delta": 0.457,
"percent_delta": 0.8416,
"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.399,
"after": 0.3872,
"delta": -0.0118,
"percent_delta": -0.0296,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.48,
"after": 2.0,
"delta": 1.52,
"percent_delta": 3.1667,
"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.48,
"after": 2.0,
"delta": 1.52,
"percent_delta": 3.1667,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.378,
"after": 3.0,
"delta": -0.378,
"percent_delta": -0.1119,
"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.008 | - |
| predicted_AB | 3.378 | - |
| predicted_AVG | 0.261 | - |
| predicted_BB | 0.142 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.295 | - |
| predicted_R | 0.543 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.399 | - |
| predicted_SO | 0.480 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.137 | 0.011 |
| predicted_3B | 0.009 | 0.001 |
| predicted_AB | 4.659 | 1.281 |
| predicted_AVG | 0.264 | 0.003 |
| predicted_BB | 0.257 | 0.115 |
| predicted_H | 1.096 | 0.456 |
| predicted_HBP | 0.045 | - |
| predicted_HR | 0.166 | 0.066 |
| predicted_OBP | 0.302 | 0.007 |
| predicted_R | 0.705 | 0.162 |
| predicted_RBI | 0.693 | 0.293 |
| predicted_SLG | 0.406 | 0.007 |
| predicted_SO | 0.628 | 0.148 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.137 | 0.000 |
| predicted_3B | 0.009 | 0.000 |
| predicted_AB | 4.659 | 0.000 |
| predicted_AVG | 0.243 | -0.021 |
| predicted_BB | 0.262 | 0.004 |
| predicted_H | 1.131 | 0.035 |
| predicted_HBP | 0.045 | 0.000 |
| predicted_HR | 0.173 | 0.007 |
| predicted_OBP | 0.283 | -0.019 |
| predicted_R | 0.745 | 0.040 |
| predicted_RBI | 0.732 | 0.039 |
| predicted_SLG | 0.387 | -0.018 |
| predicted_SO | 0.618 | -0.010 |
AB rounded to 5 (raw=4.66), rates preserved: AVG=0.243 HR/AB=0.037
| 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.137 |
| predicted_3B | 0.000 | -0.009 |
| predicted_AB | 5.000 | 0.341 |
| predicted_AVG | 0.200 | -0.043 |
| predicted_BB | 0.000 | -0.262 |
| predicted_H | 1.000 | -0.131 |
| predicted_HR | 0.000 | -0.173 |
| predicted_OBP | 0.200 | -0.083 |
| predicted_R | 1.000 | 0.255 |
| predicted_RBI | 1.000 | 0.268 |
| predicted_SLG | 0.200 | -0.187 |
| 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 | -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 | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 2.000 | 2.000 | 0.1667 | 0.2381 | 0.3333 | 0.1667 | 0.0556 | 0.1667 | 0.1111 | 0.1111 |
| last_10 | 0.20 | 10 | - | 37.000 | 7.000 | 0.000 | 0.000 | 1.000 | 4.000 | 5.000 | 3.000 | 3.000 | 0.1892 | 0.2439 | 0.2703 | 0.1892 | 0.0270 | 0.1081 | 0.0811 | 0.0811 |
| season | 0.60 | 51 | - | 429.000 | 141.000 | 16.000 | 1.000 | 17.000 | 84.000 | 69.000 | 18.000 | 61.000 | 0.3287 | 0.3589 | 0.4895 | 0.3287 | 0.0396 | 0.1958 | 0.0420 | 0.1422 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1520 |
| predicted_3B | 0.0100 |
| predicted_AB | 6.3440 |
| predicted_AVG | 0.2673 |
| predicted_BB | 0.4090 |
| predicted_H | 1.6960 |
| predicted_HBP | 0.0450 |
| predicted_HR | 0.2530 |
| predicted_OBP | 0.3118 |
| predicted_R | 0.9180 |
| predicted_RBI | 1.0780 |
| predicted_SLG | 0.4141 |
| predicted_SO | 0.8230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1260 | 0.1520 | 0.1372 | model_form_blend |
| predicted_3B | 0.0080 | 0.0100 | 0.0089 | model_form_blend |
| predicted_AB | 3.3780 | 6.3440 | 4.6593 | model_form_blend |
| predicted_AVG | 0.2610 | 0.2673 | 0.2637 | model_form_blend |
| predicted_BB | 0.1420 | 0.4090 | 0.2573 | model_form_blend |
| predicted_H | 0.6400 | 1.6960 | 1.0962 | model_form_blend |
| predicted_HBP | - | 0.0450 | 0.0450 | form_only |
| predicted_HR | 0.1000 | 0.2530 | 0.1661 | model_form_blend |
| predicted_OBP | 0.2950 | 0.3118 | 0.3023 | model_form_blend |
| predicted_R | 0.5430 | 0.9180 | 0.7050 | model_form_blend |
| predicted_RBI | 0.4000 | 1.0780 | 0.6929 | model_form_blend |
| predicted_SLG | 0.3990 | 0.4141 | 0.4055 | model_form_blend |
| predicted_SO | 0.4800 | 0.8230 | 0.6282 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 131 |
| Season rows before report date | 131 |
| Report year | 2026 |
| Profile rows used | 127 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.329 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 642086 |
| playerID | 642086 |
| playerName | Dominic Smith |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 13.6 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.341 |
| sl_xwoba | 0.351 |
| sl_xba | 0.292 |
| sl_xslg | 0.467 |
| sl_sweet_spot_percent | 37.7 |
| sl_barrel_batted_rate | 7.8 |
| sl_hard_hit_percent | 36.9 |
| sl_exit_velocity_avg | 89.3 |
| sl_launch_angle_avg | 15.8 |
| sl_whiff_percent | 19.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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 1.538 | 2.000 | -0.538 | -1.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 1.462 | 3.000 | 0.538 | -1.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 3.077 | 3.000 | -0.077 | 0.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 4.269 | 5.000 | 0.831 | 0.100 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 3.615 | 5.000 | 1.385 | 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.6667 -> 5.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: 5.6667 -> 5.1000 (deboost -0.5667, 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": "527048",
"player_name": "Martín Pérez",
"position": "Starter",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 2.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 5.6667,
"predicted_SO": 5.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "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": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 5.1,
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.1,
"delta": -0.5667,
"percent_delta": -0.1,
"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.6667,
"after": 5.1,
"delta": -0.5667,
"percent_delta": -0.1,
"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": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 5.1,
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.1,
"after": 5.1,
"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": {}
},
{
"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": 3.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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.1,
"after": 5.1,
"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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.1,
"delta": -0.5667,
"percent_delta": -0.1,
"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.6667,
"after": 5.1,
"delta": -0.5667,
"percent_delta": -0.1,
"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 | 3.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 5.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 | 3.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.100 | -0.567 |
| predicted_SO | 5.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 | 3.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.100 | 0.000 |
| 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 | 21.200 | 10.000 | 17.000 | 9.000 | 21.000 | 2.000 | 4.1538 | 1.2000 | 0.4615 | 0.7846 | 0.4154 | 0.9692 | 0.0923 |
| last_10 | 0.35 | 10 | 42.100 | 14.000 | 31.000 | 16.000 | 41.000 | 5.000 | 2.9764 | 1.1102 | 0.3307 | 0.7323 | 0.3780 | 0.9685 | 0.1181 |
| season | 0.20 | 13 | 56.200 | 19.000 | 40.000 | 20.000 | 47.000 | 6.000 | 3.0176 | 1.0588 | 0.3353 | 0.7059 | 0.3529 | 0.8294 | 0.1059 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8010 |
| predicted_ER | 1.9620 |
| predicted_ERA | 3.7534 |
| predicted_H | 3.8040 |
| predicted_HR | 0.5380 |
| predicted_IP | 4.2000 |
| predicted_SO | 4.4190 |
| predicted_WHIP | 1.1916 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.8010 | 1.4266 | model_form_blend |
| predicted_ER | 2.0000 | 1.9620 | 1.9798 | model_form_blend |
| predicted_ERA | - | 3.7534 | 3.7534 | form_only |
| predicted_H | 3.0000 | 3.8040 | 3.4282 | model_form_blend |
| predicted_HR | 1.0000 | 0.5380 | 0.7539 | model_form_blend |
| predicted_IP | 5.2000 | 4.2000 | 5.1000 | model_form_blend |
| predicted_SO | 5.0000 | 4.4190 | 4.6905 | model_form_blend |
| predicted_WHIP | - | 1.1916 | 1.1916 | 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 | 3 |
| R | 2 |
| ER | 2 |
| BB | 1 |
| SO | 5 |
| HR | 1 |
| BF | 20 |
| Pitches | 80 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 20 |
| Pitching_ER | 3 |
| Pitching_ERA | 3.02 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 5 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 85 |
| Pitching_R | 3 |
| Pitching_SO | 5 |
| Pitching_Strikes | 50 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_PIT@ATL |
| game_type | full |
| mlbID | 527048 |
| playerID | 527048 |
| playerName | Martín Pérez |
| pos | P |
| started | True |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-05 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.285 |
| sl_xwoba | 0.317 |
| sl_sweet_spot_percent | 36.5 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 39.7 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 43.6 |
| sl_avg_best_speed | 78.029687237 |
| sl_avg_hyper_speed | 94.262210263 |
| 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.156 | 0.000 | -0.156 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.125 | 0.000 | -0.125 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.438 | 0.000 | -0.438 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.881 | 0.100 | 0.219 | 1.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.219 | 1.000 | 0.781 | 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": "669276",
"player_name": "Dylan Lee",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 2.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 1.0,
"after": 1.1,
"delta": 0.1,
"percent_delta": 0.1,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 0.000 | 1.000 | 2.000 | 6.000 | 0.000 | 0.0000 | 0.6923 | 0.0000 | 0.2308 | 0.4615 | 1.3846 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 2.000 | 6.000 | 3.000 | 13.000 | 1.000 | 1.8621 | 0.9310 | 0.2069 | 0.6207 | 0.3103 | 1.3448 | 0.1035 |
| season | 0.20 | 32 | 31.000 | 4.000 | 14.000 | 5.000 | 39.000 | 1.000 | 1.1613 | 0.6129 | 0.1290 | 0.4516 | 0.1613 | 1.2581 | 0.0323 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3560 |
| predicted_ER | 0.2730 |
| predicted_ERA | 2.4529 |
| predicted_H | 0.6580 |
| predicted_HR | 0.0870 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1610 |
| predicted_WHIP | 1.0139 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3560 | 0.1638 | model_form_blend |
| predicted_ER | 0.0000 | 0.2730 | 0.1256 | model_form_blend |
| predicted_ERA | - | 2.4529 | 2.4529 | form_only |
| predicted_H | 0.0000 | 0.6580 | 0.3027 | model_form_blend |
| predicted_HR | 0.0000 | 0.0870 | 0.0400 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.1610 | 1.6140 | model_form_blend |
| predicted_WHIP | - | 1.0139 | 1.0139 | 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.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 4 |
| 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 | 1 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.16 |
| Pitching_Flyouts | 0 |
| 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 | 3 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 3 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 669276 |
| playerID | 669276 |
| playerName | Dylan Lee |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-10 |
| sl_k_percent | 34.8 |
| sl_bb_percent | 4.5 |
| sl_woba | 0.18 |
| sl_xwoba | 0.212 |
| sl_sweet_spot_percent | 33.8 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 32.4 |
| sl_whiff_percent | 38.8 |
| sl_swing_percent | 53.7 |
| sl_avg_best_speed | 76.059681818 |
| sl_avg_hyper_speed | 92.853820455 |
| 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.190 | 0.000 | -0.190 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.143 | 1.000 | -0.143 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.810 | 1.000 | -0.810 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.019 | 1.200 | -0.019 | -0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.238 | 2.000 | -0.238 | -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": "628452",
"player_name": "Raisel Iglesias",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 1.000 | 5.000 | 1.000 | 6.000 | 1.000 | 1.5882 | 1.0588 | 0.1765 | 0.8823 | 0.1765 | 1.0588 | 0.1765 |
| last_10 | 0.35 | 10 | 10.200 | 3.000 | 11.000 | 3.000 | 11.000 | 1.000 | 2.5312 | 1.3125 | 0.2812 | 1.0312 | 0.2812 | 1.0312 | 0.0938 |
| season | 0.20 | 21 | 22.100 | 3.000 | 17.000 | 4.000 | 26.000 | 1.000 | 1.2090 | 0.9403 | 0.1343 | 0.7612 | 0.1791 | 1.1642 | 0.0448 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2940 |
| predicted_ER | 0.3540 |
| predicted_ERA | 3.1874 |
| predicted_H | 0.9370 |
| predicted_HR | 0.1320 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9990 |
| predicted_WHIP | 1.2306 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2940 | 0.1251 | model_form_blend |
| predicted_ER | 0.0000 | 0.3540 | 0.1507 | model_form_blend |
| predicted_ERA | - | 3.1874 | 3.1874 | form_only |
| predicted_H | 0.0000 | 0.9370 | 0.3988 | model_form_blend |
| predicted_HR | 0.0000 | 0.1320 | 0.0562 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9990 | 0.9996 | model_form_blend |
| predicted_WHIP | - | 1.2306 | 1.2306 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 21 |
| Season rows before report date | 21 |
| Report year | 2026 |
| Profile rows used | 21 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.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 | 6 |
| Pitching_ER | 1 |
| Pitching_ERA | 1.21 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 24 |
| Pitching_R | 2 |
| Pitching_SO | 2 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260609_ATL@CHW |
| game_type | full |
| mlbID | 628452 |
| playerID | 628452 |
| playerName | Raisel Iglesias |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-09 |
| sl_k_percent | 30.6 |
| sl_bb_percent | 4.7 |
| sl_woba | 0.239 |
| sl_xwoba | 0.231 |
| sl_sweet_spot_percent | 27.3 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 29.1 |
| sl_whiff_percent | 32.8 |
| sl_swing_percent | 55.0 |
| sl_avg_best_speed | 78.365244815 |
| sl_avg_hyper_speed | 92.422342963 |
| 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.172 | 0.000 | -0.172 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.069 | 0.000 | -0.069 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.655 | 0.000 | -0.655 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.983 | 1.000 | 0.117 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.862 | 0.000 | -0.862 | 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": "663158",
"player_name": "Robert Suarez",
"position": "Middle Reliever",
"team": "ATL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 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 | 0.000 | 3.000 | 0.000 | 0.0000 | 0.5625 | 0.0000 | 0.5625 | 0.0000 | 0.5625 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 1.000 | 6.000 | 1.000 | 6.000 | 1.000 | 0.8710 | 0.6774 | 0.0968 | 0.5806 | 0.0968 | 0.5806 | 0.0968 |
| season | 0.20 | 29 | 29.200 | 2.000 | 19.000 | 5.000 | 25.000 | 1.000 | 0.6067 | 0.8090 | 0.0674 | 0.6404 | 0.1685 | 0.8427 | 0.0337 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2050 |
| predicted_ER | 0.2490 |
| predicted_ERA | 2.2439 |
| predicted_H | 0.7570 |
| predicted_HR | 0.0870 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7680 |
| predicted_WHIP | 0.9618 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2050 | 0.0934 | model_form_blend |
| predicted_ER | 0.0000 | 0.2490 | 0.1134 | model_form_blend |
| predicted_ERA | - | 2.2439 | 2.2439 | form_only |
| predicted_H | 0.0000 | 0.7570 | 0.3448 | model_form_blend |
| predicted_HR | 0.0000 | 0.0870 | 0.0396 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7680 | 0.3498 | model_form_blend |
| predicted_WHIP | - | 0.9618 | 0.9618 | 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 | 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 | 0.61 |
| 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 | 7 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260609_ATL@CHW |
| game_type | full |
| mlbID | 663158 |
| playerID | 663158 |
| playerName | Robert Suarez |
| pos | P |
| started | False |
| startingPosition | P |
| team | ATL |
| teamID | 2 |
| game_date | 2026-06-09 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 4.5 |
| sl_woba | 0.201 |
| sl_xwoba | 0.272 |
| sl_sweet_spot_percent | 32.5 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 31.3 |
| sl_whiff_percent | 25.6 |
| sl_swing_percent | 53.5 |
| sl_avg_best_speed | 71.648860769 |
| sl_avg_hyper_speed | 92.720237308 |
| Field | Value |
|---|---|
| Pitcher | Anthony Kay |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.7449 |
| ESPN Rank | 155 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0330 |
| Avg Velo | 90.3034 |
| Avg Spin | 2235.7377 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6.1000 |
| Pre ER | 1 |
| Pre H | 6 |
| Pre BB | 3 |
| Pre SO | 8 |
| Season ERA | 3.7674 |
| Season WHIP | 1.3953 |
| Role Avg IP | 5.0330 |
| Recent Avg IP | 5.4670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"opponent": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"edges": {
"quality_edge": -0.3635,
"offense_edge": 0.0458,
"opponent_offense_edge": 0.1327,
"defense_strength": -0.0519,
"opponent_defense_weakness": -0.3296,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9786,
"run_prevention": 1.0446,
"strikeout": 0.9785
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "641743",
"profile": {
"available": true,
"pitcher_id": "641743",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 232.0,
"k_percent": 16.5,
"bb_percent": 9.3,
"woba": 0.355,
"xwoba": 0.372,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 41.6,
"avg_best_speed": 78.0142,
"avg_hyper_speed": 94.8397,
"whiff_percent": 20.2,
"swing_percent": 45.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.034,
"command_and_miss": -0.6836,
"regression_edge": -0.4857,
"xwoba_edge": -1.6286,
"barrel_edge": -0.6667,
"hard_hit_edge": -0.4571,
"whiff_edge": -0.7714,
"bb_edge": -0.075,
"pitch_design_score": 0.033
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641743",
"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.30335745660126,
"release_spin_rate": 2235.737728378803,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.30335745660126,
"release_spin_rate": 2235.737728378803,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3034,
"release_spin_rate": 2235.7377,
"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.033,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2358,
"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.7449,
"sample_weight": 0.928,
"run_prevention_factor": 1.0633,
"strikeout_factor": 0.9385,
"walk_factor": 1.0056,
"homer_factor": 1.1118,
"woba_minus_xwoba": -0.017,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "641743",
"espn_id": 40947,
"player_name": "Anthony Kay",
"team": "CHW",
"role": "pitcher",
"espn_rank": 155,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 155,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 11.0,
"gs_rank": 88,
"qs_value": 2.0,
"qs_rank": 107,
"era_value": 4.4021,
"era_rank": null,
"w_value": 5.0,
"w_rank": 30,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 61.1,
"ip_rank": 90,
"h_value": 63.0,
"h_rank": 62,
"er_value": 30.0,
"er_rank": 67,
"hr_value": 10.0,
"hr_rank": 41,
"bb_value": 26.0,
"bb_rank": 33,
"k_value": 46.0,
"k_rank": 114,
"k_per_9_value": 6.75,
"k_per_9_rank": 34,
"whip_value": 1.451,
"whip_rank": null,
"war_value": 0.59,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0587,
"adjusted": 1
},
"predicted_H": {
"original": 5.0,
"factor": 1.0587,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0052,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.1038,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9429,
"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": 48.1,
"ER": 20,
"H": 50,
"BB": 18,
"SO": 37,
"HR": 6,
"ERA": 3.724137931034483,
"WHIP": 1.406896551724138,
"K9": 6.889655172413794,
"HR9": 1.1172413793103448,
"games_pitched": 10,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-05-30T00:00:00"
}{
"available": true,
"pitcher_id": "641743",
"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.30335745660126,
"release_spin_rate": 2235.737728378803,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.30335745660126,
"release_spin_rate": 2235.737728378803,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3034,
"release_spin_rate": 2235.7377,
"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.033,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.2358,
"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": "641743",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 7.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 27.1,
"ER": 5.0,
"R": 6.0,
"H": 21.0,
"BB": 9.0,
"SO": 22.0,
"HR": 2.0,
"BF": 115.0,
"Pitches": 452.0
},
"per_game": {
"IP": 5.1,
"ER": 1.0,
"R": 1.2,
"H": 4.2,
"BB": 1.8,
"SO": 4.4,
"HR": 0.4,
"BF": 23.0,
"Pitches": 90.4
},
"rates": {
"ERA": 1.6463,
"WHIP": 1.0976,
"ER_per_IP": 0.18293,
"H_per_IP": 0.76829,
"BB_per_IP": 0.32927,
"SO_per_IP": 0.80488,
"HR_per_IP": 0.07317
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 48.1,
"ER": 20.0,
"R": 22.0,
"H": 50.0,
"BB": 18.0,
"SO": 37.0,
"HR": 6.0,
"BF": 218.0,
"Pitches": 891.0
},
"per_game": {
"IP": 4.2,
"ER": 2.0,
"R": 2.2,
"H": 5.0,
"BB": 1.8,
"SO": 3.7,
"HR": 0.6,
"BF": 21.8,
"Pitches": 89.1
},
"rates": {
"ERA": 3.7241,
"WHIP": 1.4069,
"ER_per_IP": 0.41379,
"H_per_IP": 1.03448,
"BB_per_IP": 0.37241,
"SO_per_IP": 0.76552,
"HR_per_IP": 0.12414
}
},
"season": {
"games": 12,
"totals": {
"IP": 57.1,
"ER": 24.0,
"R": 26.0,
"H": 56.0,
"BB": 24.0,
"SO": 42.0,
"HR": 8.0,
"BF": 258.0,
"Pitches": 1059.0
},
"per_game": {
"IP": 4.2,
"ER": 2.0,
"R": 2.1667,
"H": 4.6667,
"BB": 2.0,
"SO": 3.5,
"HR": 0.6667,
"BF": 21.5,
"Pitches": 88.25
},
"rates": {
"ERA": 3.7674,
"WHIP": 1.3953,
"ER_per_IP": 0.4186,
"H_per_IP": 0.97674,
"BB_per_IP": 0.4186,
"SO_per_IP": 0.73256,
"HR_per_IP": 0.13953
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.052,
"predicted_H": 5.209,
"predicted_BB": 2.056,
"predicted_SO": 4.663,
"predicted_HR": 0.651,
"predicted_ERA": 3.2614,
"predicted_WHIP": 1.2829
}
}{
"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": 7.1,
"form": 5.2,
"final": 6.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.052,
"final": 1.5531,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 5.209,
"final": 5.5841,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 2.056,
"final": 2.5037,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 4.663,
"final": 5.2971,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 2.0,
"form": 0.651,
"final": 1.2908,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2614,
"final": 3.2614,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2829,
"final": 1.2829,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Grant Taylor |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.5177 |
| ESPN Rank | 77 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2762 |
| Avg Velo | 94.6463 |
| Avg Spin | 2483.6036 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.4211 |
| Season WHIP | 1.2632 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"opponent": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"edges": {
"quality_edge": -0.3635,
"offense_edge": 0.0458,
"opponent_offense_edge": 0.1327,
"defense_strength": -0.0519,
"opponent_defense_weakness": -0.3296,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9786,
"run_prevention": 1.0446,
"strikeout": 0.9785
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "691799",
"profile": {
"available": true,
"pitcher_id": "691799",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 21.0,
"k_percent": 36.4,
"bb_percent": 6.4,
"woba": 0.245,
"xwoba": 0.228,
"sweet_spot_percent": 30.0,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 38.8,
"avg_best_speed": 79.615,
"avg_hyper_speed": 93.673,
"whiff_percent": 30.3,
"swing_percent": 50.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.3499,
"command_and_miss": 1.2457,
"regression_edge": 0.4857,
"xwoba_edge": 2.4857,
"barrel_edge": 0.4889,
"hard_hit_edge": -0.0571,
"whiff_edge": 0.6714,
"bb_edge": 0.65,
"pitch_design_score": 0.2762
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "691799",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 16,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 94.6463,
"release_spin_rate": 2483.6036,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.2762,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.973,
"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.5177,
"sample_weight": 0.45,
"run_prevention_factor": 0.956,
"strikeout_factor": 1.0473,
"walk_factor": 0.9766,
"homer_factor": 0.9499,
"woba_minus_xwoba": 0.017,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691799",
"espn_id": 4927630,
"player_name": "Grant Taylor",
"team": "CHW",
"role": "pitcher",
"espn_rank": 77,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 77,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 4.0,
"gs_rank": 169,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.8173,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 34.2,
"ip_rank": 173,
"h_value": 27.0,
"h_rank": 213,
"er_value": 7.0,
"er_rank": 403,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 9.0,
"bb_rank": 315,
"k_value": 51.0,
"k_rank": 98,
"k_per_9_value": 13.240384,
"k_per_9_rank": 15,
"whip_value": 1.0384,
"whip_rank": null,
"war_value": 1.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9802,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9802,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9775,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0213,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 6.1,
"ER": 1,
"H": 6,
"BB": 2,
"SO": 8,
"HR": 0,
"ERA": 1.4210526315789473,
"WHIP": 1.2631578947368423,
"K9": 11.368421052631579,
"HR9": 0.0,
"games_pitched": 6,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 6,
"error_prone": false
},
"games_count": 6,
"latest_game_date": "2026-04-09T00:00:00"
}{
"available": true,
"pitcher_id": "691799",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 16,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 16,
"pitch_usage": 0.0,
"release_speed": 94.64628205128204,
"release_spin_rate": 2483.6036324786323,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 94.6463,
"release_spin_rate": 2483.6036,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.2762,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.973,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.8653846153846154,
"last_10": 0.1346153846153846
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.251,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2001,
"prior_weight": 0.7999
},
"role": "pitcher",
"player_id": "691799",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 6,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 4.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 80.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.8,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 4.2,
"Pitches": 16.0
},
"rates": {
"ERA": 0.0,
"WHIP": 0.9375,
"ER_per_IP": 0.0,
"H_per_IP": 0.75,
"BB_per_IP": 0.1875,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 6,
"totals": {
"IP": 6.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 2.0,
"SO": 8.0,
"HR": 0.0,
"BF": 27.0,
"Pitches": 106.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.1667,
"H": 1.0,
"BB": 0.3333,
"SO": 1.3333,
"HR": 0.0,
"BF": 4.5,
"Pitches": 17.6667
},
"rates": {
"ERA": 1.4211,
"WHIP": 1.2632,
"ER_per_IP": 0.15789,
"H_per_IP": 0.94737,
"BB_per_IP": 0.31579,
"SO_per_IP": 1.26316,
"HR_per_IP": 0.0
}
},
"season": {
"games": 6,
"totals": {
"IP": 6.1,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 2.0,
"SO": 8.0,
"HR": 0.0,
"BF": 27.0,
"Pitches": 106.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.1667,
"H": 1.0,
"BB": 0.3333,
"SO": 1.3333,
"HR": 0.0,
"BF": 4.5,
"Pitches": 17.6667
},
"rates": {
"ERA": 1.4211,
"WHIP": 1.2632,
"ER_per_IP": 0.15789,
"H_per_IP": 0.94737,
"BB_per_IP": 0.31579,
"SO_per_IP": 1.26316,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.393,
"predicted_H": 0.923,
"predicted_BB": 0.333,
"predicted_SO": 1.01,
"predicted_HR": 0.113,
"predicted_ERA": 3.5374,
"predicted_WHIP": 1.2561
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.688,
"form_weight": 0.312,
"form_reliability": 0.2001,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 1.251,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.2001,
"prior_weight": 0.7999
},
"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.1226,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.923,
"final": 0.288,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.333,
"final": 0.1039,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.01,
"final": 0.3152,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.113,
"final": 0.0353,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5374,
"final": 3.5374,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2561,
"final": 1.2561,
"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 Hudson |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1511 |
| ESPN Rank | 75 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0480 |
| Avg Velo | 88.8567 |
| Avg Spin | 2148.5033 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 1.5652 |
| Season WHIP | 1.3478 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"opponent": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"edges": {
"quality_edge": -0.3635,
"offense_edge": 0.0458,
"opponent_offense_edge": 0.1327,
"defense_strength": -0.0519,
"opponent_defense_weakness": -0.3296,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9786,
"run_prevention": 1.0446,
"strikeout": 0.9785
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663542",
"profile": {
"available": true,
"pitcher_id": "663542",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 92.0,
"k_percent": 21.1,
"bb_percent": 10.5,
"woba": 0.283,
"xwoba": 0.289,
"sweet_spot_percent": 30.7,
"barrel_batted_rate": 1.1,
"hard_hit_percent": 33.0,
"avg_best_speed": 77.4117,
"avg_hyper_speed": 92.9484,
"whiff_percent": 23.5,
"swing_percent": 45.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.7683,
"command_and_miss": -0.2829,
"regression_edge": -0.1714,
"xwoba_edge": 0.7429,
"barrel_edge": 1.3778,
"hard_hit_edge": 0.7714,
"whiff_edge": -0.3,
"bb_edge": -0.375,
"pitch_design_score": -0.048
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663542",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8567,
"release_spin_rate": 2148.5033,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.048,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3428,
"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.1511,
"sample_weight": 0.45,
"run_prevention_factor": 0.9872,
"strikeout_factor": 0.9905,
"walk_factor": 1.0135,
"homer_factor": 0.9265,
"woba_minus_xwoba": -0.006,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663542",
"espn_id": 4991171,
"player_name": "Bryan Hudson",
"team": "CHW",
"role": "pitcher",
"espn_rank": 75,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 75,
"gp_value": 32.0,
"gp_rank": 8,
"gs_value": 3.0,
"gs_rank": 180,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.3225,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 3.0,
"sv_rank": 43,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 31.0,
"ip_rank": 199,
"h_value": 27.0,
"h_rank": 213,
"er_value": 8.0,
"er_rank": 367,
"hr_value": 0.0,
"hr_rank": 559,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 28.0,
"k_rank": 244,
"k_per_9_value": 8.129032,
"k_per_9_rank": 33,
"whip_value": 1.3225,
"whip_rank": null,
"war_value": 1.13,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9942,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9942,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0061,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9669,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9957,
"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": 10,
"BB": 2,
"SO": 7,
"HR": 0,
"ERA": 1.8,
"WHIP": 1.2,
"K9": 6.3,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-05-19T00:00:00"
}{
"available": true,
"pitcher_id": "663542",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.8567107177423,
"release_spin_rate": 2148.503349502572,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 88.8567,
"release_spin_rate": 2148.5033,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.048,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3428,
"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.544,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4761,
"prior_weight": 0.5239
},
"role": "pitcher",
"player_id": "663542",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 1.0,
"SO": 2.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 69.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.2,
"SO": 0.4,
"HR": 0.0,
"BF": 4.4,
"Pitches": 13.8
},
"rates": {
"ERA": 3.6,
"WHIP": 1.2,
"ER_per_IP": 0.4,
"H_per_IP": 1.0,
"BB_per_IP": 0.2,
"SO_per_IP": 0.4,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 2.0,
"SO": 7.0,
"HR": 0.0,
"BF": 42.0,
"Pitches": 147.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.2,
"SO": 0.7,
"HR": 0.0,
"BF": 4.2,
"Pitches": 14.7
},
"rates": {
"ERA": 1.8,
"WHIP": 1.2,
"ER_per_IP": 0.2,
"H_per_IP": 1.0,
"BB_per_IP": 0.2,
"SO_per_IP": 0.7,
"HR_per_IP": 0.0
}
},
"season": {
"games": 24,
"totals": {
"IP": 23.0,
"ER": 4.0,
"R": 5.0,
"H": 21.0,
"BB": 10.0,
"SO": 23.0,
"HR": 0.0,
"BF": 99.0,
"Pitches": 402.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1667,
"R": 0.2083,
"H": 0.875,
"BB": 0.4167,
"SO": 0.9583,
"HR": 0.0,
"BF": 4.125,
"Pitches": 16.75
},
"rates": {
"ERA": 1.5652,
"WHIP": 1.3478,
"ER_per_IP": 0.17391,
"H_per_IP": 0.91304,
"BB_per_IP": 0.43478,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.322,
"predicted_H": 0.801,
"predicted_BB": 0.255,
"predicted_SO": 0.65,
"predicted_HR": 0.061,
"predicted_ERA": 3.512,
"predicted_WHIP": 1.2795
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5713,
"form_weight": 0.4287,
"form_reliability": 0.4761,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.544,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4761,
"prior_weight": 0.5239
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.322,
"final": 0.138,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.801,
"final": 0.3434,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.255,
"final": 0.6807,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.65,
"final": 0.85,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.061,
"final": 0.0261,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.512,
"final": 3.512,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2795,
"final": 1.2795,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Sean Newcomb |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0073 |
| ESPN Rank | 57 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 4 |
| Pre H | 4 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 7.7143 |
| Season WHIP | 1.7143 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"opponent": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"edges": {
"quality_edge": -0.3635,
"offense_edge": 0.0458,
"opponent_offense_edge": 0.1327,
"defense_strength": -0.0519,
"opponent_defense_weakness": -0.3296,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9786,
"run_prevention": 1.0446,
"strikeout": 0.9785
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656794",
"profile": {
"available": true,
"pitcher_id": "656794",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 0.0,
"k_percent": 22.8,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.312,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0414,
"command_and_miss": 0.0064,
"regression_edge": -0.0857,
"xwoba_edge": 0.0857,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.0,
"whiff_edge": 0.0,
"bb_edge": 0.0,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656794",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0073,
"sample_weight": 0.45,
"run_prevention_factor": 0.9994,
"strikeout_factor": 1.0003,
"walk_factor": 1.0,
"homer_factor": 0.9972,
"woba_minus_xwoba": -0.003,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656794",
"espn_id": 33856,
"player_name": "Sean Newcomb",
"team": "CHW",
"role": "pitcher",
"espn_rank": 57,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 57,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.2881,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 5.0,
"hld_rank": 79,
"ip_value": 39.1,
"ip_rank": 150,
"h_value": 30.0,
"h_rank": 185,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 36.0,
"k_rank": 168,
"k_per_9_value": 8.237288,
"k_per_9_rank": 30,
"whip_value": 1.0169,
"whip_rank": null,
"war_value": 1.33,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9997,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9997,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9987,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0001,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 2.1,
"ER": 2,
"H": 3,
"BB": 1,
"SO": 1,
"HR": 0,
"ERA": 7.7142857142857135,
"WHIP": 1.7142857142857142,
"K9": 3.8571428571428568,
"HR9": 0.0,
"games_pitched": 1,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 1,
"error_prone": false
},
"games_count": 1,
"latest_game_date": "2026-03-26T00:00:00"
}{
"available": false,
"pitcher_id": "656794",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.461,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0844,
"prior_weight": 0.9156
},
"role": "pitcher",
"player_id": "656794",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 1,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 1,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"per_game": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 1,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"per_game": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"season": {
"games": 1,
"totals": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"per_game": {
"IP": 2.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 1.0,
"HR": 0.0,
"BF": 10.0,
"Pitches": 33.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.28571,
"BB_per_IP": 0.42857,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.26,
"predicted_H": 0.496,
"predicted_BB": 0.186,
"predicted_SO": 0.448,
"predicted_HR": 0.065,
"predicted_ERA": 4.6563,
"predicted_WHIP": 1.3577
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7368,
"form_weight": 0.2632,
"form_reliability": 0.0844,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.461,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.0844,
"prior_weight": 0.9156
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 4.0,
"form": 0.26,
"final": 3.0158,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 0.496,
"final": 3.0779,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.186,
"final": 1.5226,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.448,
"final": 0.1179,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.065,
"final": 0.0171,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.6563,
"final": 4.6563,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3577,
"final": 1.3577,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Seranthony Domínguez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1454 |
| ESPN Rank | 209 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1642 |
| Avg Velo | 92.6462 |
| Avg Spin | 2184.3077 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 13.5000 |
| Season WHIP | 3 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHW",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 349.0,
"runs_allowed": 352.0,
"run_differential": -3.0,
"run_differential_per_game": -0.0405,
"avg_runs_scored": 4.7162,
"avg_runs_allowed": 4.7568,
"offense_index": 1.0458,
"defense_index": 0.9481,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.2,
"avg_runs_allowed": 4.3,
"run_differential": 9.0
},
"available": true,
"quality_score": 0.0301
},
"opponent": {
"team": "ATL",
"games": 74,
"wins": 50,
"losses": 24,
"win_pct": 0.6757,
"runs_scored": 378.0,
"runs_allowed": 251.0,
"run_differential": 127.0,
"run_differential_per_game": 1.7162,
"avg_runs_scored": 5.1081,
"avg_runs_allowed": 3.3919,
"offense_index": 1.1327,
"defense_index": 1.3296,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.3,
"avg_runs_allowed": 3.7,
"run_differential": 6.0
},
"available": true,
"quality_score": 0.3936
},
"edges": {
"quality_edge": -0.3635,
"offense_edge": 0.0458,
"opponent_offense_edge": 0.1327,
"defense_strength": -0.0519,
"opponent_defense_weakness": -0.3296,
"recent_win_pct_edge": 0.0
},
"player_factors": {
"ip": 0.9786,
"run_prevention": 1.0446,
"strikeout": 0.9785
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "622554",
"profile": {
"available": true,
"pitcher_id": "622554",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 4.0,
"k_percent": 27.6,
"bb_percent": 12.4,
"woba": 0.288,
"xwoba": 0.344,
"sweet_spot_percent": 37.7,
"barrel_batted_rate": 10.0,
"hard_hit_percent": 36.1,
"avg_best_speed": 80.3266,
"avg_hyper_speed": 94.3565,
"whiff_percent": 27.5,
"swing_percent": 42.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.4262,
"command_and_miss": 0.24,
"regression_edge": -1.6,
"xwoba_edge": -0.8286,
"barrel_edge": -0.6,
"hard_hit_edge": 0.3286,
"whiff_edge": 0.2714,
"bb_edge": -0.85,
"pitch_design_score": 0.1642
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "622554",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 13,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.6462,
"release_spin_rate": 2184.3077,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1642,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.173,
"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.1454,
"sample_weight": 0.45,
"run_prevention_factor": 1.0124,
"strikeout_factor": 1.0175,
"walk_factor": 1.0306,
"homer_factor": 1.0269,
"woba_minus_xwoba": -0.056,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "622554",
"espn_id": 37793,
"player_name": "Seranthony Dominguez",
"team": "CHW",
"role": "pitcher",
"espn_rank": 209,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 209,
"gp_value": 27.0,
"gp_rank": 75,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.6,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 11.0,
"sv_rank": 11,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 25.0,
"ip_rank": 297,
"h_value": 15.0,
"h_rank": 391,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 13.0,
"bb_rank": 206,
"k_value": 29.0,
"k_rank": 236,
"k_per_9_value": 10.440001,
"k_per_9_rank": 21,
"whip_value": 1.12,
"whip_rank": null,
"war_value": 0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0056,
"adjusted": 2
},
"predicted_H": {
"original": 0.0,
"factor": 1.0056,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0138,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0121,
"adjusted": 0
},
"predicted_SO": {
"original": 0.0,
"factor": 1.0079,
"adjusted": 0
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 1.1,
"ER": 2,
"H": 3,
"BB": 1,
"SO": 0,
"HR": 1,
"ERA": 13.5,
"WHIP": 3.0,
"K9": 0.0,
"HR9": 6.75,
"games_pitched": 2,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 2,
"error_prone": false
},
"games_count": 2,
"latest_game_date": "2026-03-29T00:00:00"
}{
"available": true,
"pitcher_id": "622554",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 13,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 13,
"pitch_usage": 0.0,
"release_speed": 92.64615384615384,
"release_spin_rate": 2184.3076923076924,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.6462,
"release_spin_rate": 2184.3077,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1642,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.173,
"whiff_edge": 0.0,
"xwoba_edge": -0.0,
"hard_hit_edge": -0.0
},
"spin_efficiency_note": "Savant statcast CSV provides spin rate and spin axis here; true spin efficiency is not exposed in this feed."
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 1.0
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.263,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.05,
"prior_weight": 0.95
},
"role": "pitcher",
"player_id": "622554",
"report_date": "20260611_A",
"season_year": 2026,
"rows_used": 2,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 2,
"totals": {
"IP": 1.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 8.0,
"Pitches": 32.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.5,
"BB": 0.5,
"SO": 0.0,
"HR": 0.5,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 13.5,
"WHIP": 3.0,
"ER_per_IP": 1.5,
"H_per_IP": 2.25,
"BB_per_IP": 0.75,
"SO_per_IP": 0.0,
"HR_per_IP": 0.75
}
},
"last_10": {
"games": 2,
"totals": {
"IP": 1.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 8.0,
"Pitches": 32.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.5,
"BB": 0.5,
"SO": 0.0,
"HR": 0.5,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 13.5,
"WHIP": 3.0,
"ER_per_IP": 1.5,
"H_per_IP": 2.25,
"BB_per_IP": 0.75,
"SO_per_IP": 0.0,
"HR_per_IP": 0.75
}
},
"season": {
"games": 2,
"totals": {
"IP": 1.1,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 1.0,
"SO": 0.0,
"HR": 1.0,
"BF": 8.0,
"Pitches": 32.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.5,
"BB": 0.5,
"SO": 0.0,
"HR": 0.5,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 13.5,
"WHIP": 3.0,
"ER_per_IP": 1.5,
"H_per_IP": 2.25,
"BB_per_IP": 0.75,
"SO_per_IP": 0.0,
"HR_per_IP": 0.75
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.188,
"predicted_H": 0.359,
"predicted_BB": 0.134,
"predicted_SO": 0.311,
"predicted_HR": 0.06,
"predicted_ERA": 4.8307,
"predicted_WHIP": 1.4086
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.7514,
"form_weight": 0.2486,
"form_reliability": 0.05,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 0.263,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.05,
"prior_weight": 0.95
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.188,
"final": 0.7981,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.359,
"final": 0.8406,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.134,
"final": 0.0333,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.311,
"final": 1.5801,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.06,
"final": 0.0149,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.8307,
"final": 4.8307,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4086,
"final": 1.4086,
"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.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.110 | 3.000 | 3.000 | Hitting_AB | 2.857 | 1.000 | 0.143 | 2.000 |
| predicted_AVG | 0.273 | 0.000 | 0.333 | Hitting_AVG | 0.300 | 0.000 | -0.300 | 0.000 |
| predicted_BB | 0.429 | 1.000 | 0.000 | Hitting_BB | 0.429 | 1.000 | 0.571 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.850 | 0.000 | 1.000 | Hitting_H | 0.857 | 0.000 | -0.857 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.143 | 0.000 | -0.143 | 0.000 |
| predicted_OBP | 0.359 | 0.250 | 0.333 | Hitting_OBP | 0.391 | 0.500 | -0.141 | -0.250 |
| predicted_R | 0.286 | 0.000 | 0.000 | Hitting_R | 0.286 | 1.000 | -0.286 | -1.000 |
| predicted_RBI | 0.550 | 0.000 | 1.000 | Hitting_RBI | 0.571 | 0.000 | -0.571 | 0.000 |
| predicted_SLG | 0.452 | 0.000 | 0.333 | Hitting_SLG | 0.450 | 0.000 | -0.450 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Hitting_SO | 1.000 | 1.000 | 0.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 7 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 6 |
| Better Metrics | 1 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.4290 -> 1.0000 (boost 0.5710, better) |
| Biggest Deboost | predicted_H: 0.8500 -> 0.0000 (deboost -0.8500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 5 | 4 | 1 | 5 | 0 | predicted_AB: 3.1100 -> 3.1780 (boost 0.0680, better) | predicted_SO: 1.0000 -> 0.9440 (deboost -0.0560, 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.4594 -> 0.4127 (deboost -0.0467, 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 | 2 | 3 | predicted_RBI: 0.5432 -> 1.0000 (boost 0.4568, better) | predicted_BB: 0.4304 -> 0.0000 (deboost -0.4304, worse) | AB rounded to 3 (raw=3.18), rates preserved: AVG=0.271 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3115 -> 0.0000 (deboost -0.3115, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2706 -> 0.3330 (boost 0.0624, better) | predicted_SLG: 0.4127 -> 0.3330 (deboost -0.0797, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.3330 -> 0.4127 (boost 0.0797, better) | predicted_AVG: 0.3330 -> 0.2706 (deboost -0.0624, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694378",
"player_name": "Jacob Gonzalez",
"position": "DH",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.11,
"predicted_AVG": 0.273,
"predicted_BB": 0.429,
"predicted_H": 0.85,
"predicted_HR": 0.14,
"predicted_OBP": 0.359,
"predicted_R": 0.286,
"predicted_RBI": 0.55,
"predicted_SLG": 0.452,
"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.0265,
"predicted_3B": 0.002,
"predicted_AB": 3.178,
"predicted_AVG": 0.2801,
"predicted_BB": 0.4344,
"predicted_H": 0.8924,
"predicted_HBP": 0.017,
"predicted_HR": 0.1471,
"predicted_OBP": 0.3653,
"predicted_R": 0.3318,
"predicted_RBI": 0.5787,
"predicted_SLG": 0.4594,
"predicted_SO": 0.944
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0265,
"delta": 0.0265,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.002,
"delta": 0.002,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.11,
"after": 3.178,
"delta": 0.068,
"percent_delta": 0.0219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2801,
"delta": 0.0071,
"percent_delta": 0.026,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.429,
"after": 0.4344,
"delta": 0.0054,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 0.8924,
"delta": 0.0424,
"percent_delta": 0.0499,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.1471,
"delta": 0.0071,
"percent_delta": 0.0507,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.359,
"after": 0.3653,
"delta": 0.0063,
"percent_delta": 0.0175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.286,
"after": 0.3318,
"delta": 0.0458,
"percent_delta": 0.1601,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.5787,
"delta": 0.0287,
"percent_delta": 0.0522,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4594,
"delta": 0.0074,
"percent_delta": 0.0164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.944,
"delta": -0.056,
"percent_delta": -0.056,
"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.11,
"after": 3.178,
"delta": 0.068,
"percent_delta": 0.0219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.944,
"delta": -0.056,
"percent_delta": -0.056,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 7,
"season": 7
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0265,
"predicted_3B": 0.002,
"predicted_AB": 3.178,
"predicted_AVG": 0.2706,
"predicted_BB": 0.4304,
"predicted_H": 0.86,
"predicted_HBP": 0.017,
"predicted_HR": 0.1404,
"predicted_OBP": 0.3576,
"predicted_R": 0.3115,
"predicted_RBI": 0.5432,
"predicted_SLG": 0.4127,
"predicted_SO": 0.9526
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0265,
"after": 0.0265,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.002,
"after": 0.002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.178,
"after": 3.178,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2801,
"after": 0.2706,
"delta": -0.0095,
"percent_delta": -0.0339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4344,
"after": 0.4304,
"delta": -0.004,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8924,
"after": 0.86,
"delta": -0.0324,
"percent_delta": -0.0363,
"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.1471,
"after": 0.1404,
"delta": -0.0067,
"percent_delta": -0.0455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3653,
"after": 0.3576,
"delta": -0.0077,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3318,
"after": 0.3115,
"delta": -0.0203,
"percent_delta": -0.0612,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5787,
"after": 0.5432,
"delta": -0.0355,
"percent_delta": -0.0613,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4594,
"after": 0.4127,
"delta": -0.0467,
"percent_delta": -0.1017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.944,
"after": 0.9526,
"delta": 0.0086,
"percent_delta": 0.0091,
"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.4594,
"after": 0.4127,
"delta": -0.0467,
"percent_delta": -0.1017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.18), rates preserved: AVG=0.271 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0265,
"after": 0.0,
"delta": -0.0265,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.002,
"after": 0.0,
"delta": -0.002,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.178,
"after": 3.0,
"delta": -0.178,
"percent_delta": -0.056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4304,
"after": 0.0,
"delta": -0.4304,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 1.0,
"delta": 0.14,
"percent_delta": 0.1628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_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.1404,
"after": 0.0,
"delta": -0.1404,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5432,
"after": 1.0,
"delta": 0.4568,
"percent_delta": 0.8409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9526,
"after": 1.0,
"delta": 0.0474,
"percent_delta": 0.0498,
"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_RBI",
"before": 0.5432,
"after": 1.0,
"delta": 0.4568,
"percent_delta": 0.8409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4304,
"after": 0.0,
"delta": -0.4304,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3115,
"after": 0.0,
"delta": -0.3115,
"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.3115,
"after": 0.0,
"delta": -0.3115,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2706,
"after": 0.333,
"delta": 0.0624,
"percent_delta": 0.2306,
"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.3576,
"after": 0.333,
"delta": -0.0246,
"percent_delta": -0.0688,
"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.4127,
"after": 0.333,
"delta": -0.0797,
"percent_delta": -0.1931,
"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.2706,
"after": 0.333,
"delta": 0.0624,
"percent_delta": 0.2306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4127,
"after": 0.333,
"delta": -0.0797,
"percent_delta": -0.1931,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 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_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2706,
"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.3576,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4127,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2706,
"delta": -0.0624,
"percent_delta": -0.1874,
"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.3576,
"delta": 0.0246,
"percent_delta": 0.0739,
"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.4127,
"delta": 0.0797,
"percent_delta": 0.2395,
"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.4127,
"delta": 0.0797,
"percent_delta": 0.2395,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2706,
"delta": -0.0624,
"percent_delta": -0.1874,
"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.11,
"after": 3.0,
"delta": -0.11,
"percent_delta": -0.0354,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2706,
"delta": -0.0024,
"percent_delta": -0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.429,
"after": 1.0,
"delta": 0.571,
"percent_delta": 1.331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 0.0,
"delta": -0.85,
"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.359,
"after": 0.3576,
"delta": -0.0014,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.55,
"after": 0.0,
"delta": -0.55,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4127,
"delta": -0.0393,
"percent_delta": -0.0869,
"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": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.429,
"after": 1.0,
"delta": 0.571,
"percent_delta": 1.331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.85,
"after": 0.0,
"delta": -0.85,
"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.110 | - |
| predicted_AVG | 0.273 | - |
| predicted_BB | 0.429 | - |
| predicted_H | 0.850 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.359 | - |
| predicted_R | 0.286 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.452 | - |
| 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.026 | 0.026 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.178 | 0.068 |
| predicted_AVG | 0.280 | 0.007 |
| predicted_BB | 0.434 | 0.005 |
| predicted_H | 0.892 | 0.042 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.147 | 0.007 |
| predicted_OBP | 0.365 | 0.006 |
| predicted_R | 0.332 | 0.046 |
| predicted_RBI | 0.579 | 0.029 |
| predicted_SLG | 0.459 | 0.007 |
| predicted_SO | 0.944 | -0.056 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.026 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.178 | 0.000 |
| predicted_AVG | 0.271 | -0.010 |
| predicted_BB | 0.430 | -0.004 |
| predicted_H | 0.860 | -0.032 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.140 | -0.007 |
| predicted_OBP | 0.358 | -0.008 |
| predicted_R | 0.311 | -0.020 |
| predicted_RBI | 0.543 | -0.035 |
| predicted_SLG | 0.413 | -0.047 |
| predicted_SO | 0.953 | 0.009 |
AB rounded to 3 (raw=3.18), rates preserved: AVG=0.271 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.026 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.178 |
| predicted_AVG | 0.333 | 0.062 |
| predicted_BB | 0.000 | -0.430 |
| predicted_H | 1.000 | 0.140 |
| predicted_HR | 0.000 | -0.140 |
| predicted_OBP | 0.333 | -0.025 |
| predicted_R | 0.000 | -0.311 |
| predicted_RBI | 1.000 | 0.457 |
| predicted_SLG | 0.333 | -0.080 |
| predicted_SO | 1.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 | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | -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 | 5.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 3.000 | 3.000 | 0.3846 | 0.5000 | 0.6154 | 0.3846 | 0.0769 | 0.3077 | 0.2308 | 0.2308 |
| last_10 | 0.20 | 7 | - | 20.000 | 6.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 3.000 | 7.000 | 0.3000 | 0.3913 | 0.4500 | 0.3000 | 0.0500 | 0.2000 | 0.1500 | 0.3500 |
| season | 0.60 | 7 | - | 20.000 | 6.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 3.000 | 7.000 | 0.3000 | 0.3913 | 0.4500 | 0.3000 | 0.0500 | 0.2000 | 0.1500 | 0.3500 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0930 |
| predicted_3B | 0.0070 |
| predicted_AB | 3.3490 |
| predicted_AVG | 0.2981 |
| predicted_BB | 0.4480 |
| predicted_H | 0.9990 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.1650 |
| predicted_OBP | 0.3810 |
| predicted_R | 0.4470 |
| predicted_RBI | 0.6510 |
| predicted_SLG | 0.4780 |
| predicted_SO | 0.8030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0930 | 0.0265 | model_form_blend |
| predicted_3B | 0.0000 | 0.0070 | 0.0020 | model_form_blend |
| predicted_AB | 3.1100 | 3.3490 | 3.1780 | model_form_blend |
| predicted_AVG | 0.2730 | 0.2981 | 0.2801 | model_form_blend |
| predicted_BB | 0.4290 | 0.4480 | 0.4344 | model_form_blend |
| predicted_H | 0.8500 | 0.9990 | 0.8924 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.1400 | 0.1650 | 0.1471 | model_form_blend |
| predicted_OBP | 0.3590 | 0.3810 | 0.3653 | model_form_blend |
| predicted_R | 0.2860 | 0.4470 | 0.3318 | model_form_blend |
| predicted_RBI | 0.5500 | 0.6510 | 0.5787 | model_form_blend |
| predicted_SLG | 0.4520 | 0.4780 | 0.4594 | model_form_blend |
| predicted_SO | 1.0000 | 0.8030 | 0.9440 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 7 |
| Season rows before report date | 7 |
| Report year | 2026 |
| Profile rows used | 7 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.3 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 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 | 1B |
| gameID | 20260607_CHW@PHI |
| game_type | full |
| mlbID | 694378 |
| playerID | 694378 |
| playerName | Jacob Gonzalez |
| pos | SS |
| started | True |
| startingPosition | 1B |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-07 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 12.9 |
| sl_woba | 0.383 |
| sl_xwoba | 0.365 |
| sl_xba | 0.252 |
| sl_xslg | 0.453 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 52.9 |
| sl_exit_velocity_avg | 91.5 |
| sl_launch_angle_avg | 16.0 |
| sl_whiff_percent | 25.8 |
| 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.176 | 0.000 | 0.000 | Hitting_2B | 0.175 | 0.000 | -0.175 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.220 | 4.000 | 7.000 | Hitting_AB | 3.854 | 4.000 | 0.146 | 0.000 |
| predicted_AVG | 0.244 | 0.000 | 0.286 | Hitting_AVG | 0.265 | 0.250 | -0.265 | -0.250 |
| predicted_BB | 0.439 | 0.000 | 1.000 | Hitting_BB | 0.442 | 0.000 | -0.442 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 1.030 | 0.000 | 2.000 | Hitting_H | 1.021 | 1.000 | -1.021 | -1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_OBP | 0.327 | 0.000 | 0.375 | Hitting_OBP | 0.338 | 0.250 | -0.338 | -0.250 |
| predicted_R | 0.665 | 0.000 | 1.000 | Hitting_R | 0.662 | 0.000 | -0.662 | 0.000 |
| predicted_RBI | 0.380 | 0.000 | 1.000 | Hitting_RBI | 0.371 | 0.000 | -0.371 | 0.000 |
| predicted_SLG | 0.372 | 0.000 | 0.286 | Hitting_SLG | 0.388 | 0.250 | -0.388 | -0.250 |
| predicted_SO | 0.967 | 1.000 | 2.000 | Hitting_SO | 0.963 | 0.000 | 0.037 | 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 | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AVG: 0.2440 -> 0.2550 (boost 0.0110, better) |
| Biggest Deboost | predicted_H: 1.0300 -> 0.0000 (deboost -1.0300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 4.2200 -> 6.8315 (boost 2.6115, 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.8076 -> 1.7420 (deboost -0.0656, 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_RBI: 0.5504 -> 1.0000 (boost 0.4496, better) | predicted_2B: 0.2882 -> 0.0000 (deboost -0.2882, worse) | AB rounded to 7 (raw=6.83), rates preserved: AVG=0.255 HR/AB=0.016 |
| 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.3141 -> 0.3750 (boost 0.0609, better) | predicted_SLG: 0.3462 -> 0.2860 (deboost -0.0602, 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.3462 (boost 0.0602, better) | predicted_OBP: 0.3750 -> 0.3141 (deboost -0.0609, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805367",
"player_name": "Chase Meidroth",
"position": "C",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.0,
"predicted_AB": 4.22,
"predicted_AVG": 0.244,
"predicted_BB": 0.439,
"predicted_H": 1.03,
"predicted_HR": 0.08,
"predicted_OBP": 0.327,
"predicted_R": 0.665,
"predicted_RBI": 0.38,
"predicted_SLG": 0.372,
"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.2882,
"predicted_3B": 0.0004,
"predicted_AB": 6.8315,
"predicted_AVG": 0.2579,
"predicted_BB": 0.5945,
"predicted_H": 1.8076,
"predicted_HBP": 0.152,
"predicted_HR": 0.1167,
"predicted_OBP": 0.3307,
"predicted_R": 1.0494,
"predicted_RBI": 0.5863,
"predicted_SLG": 0.3694,
"predicted_SO": 1.5396
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.2882,
"delta": 0.1122,
"percent_delta": 0.6375,
"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.22,
"after": 6.8315,
"delta": 2.6115,
"percent_delta": 0.6188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.2579,
"delta": 0.0139,
"percent_delta": 0.057,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.439,
"after": 0.5945,
"delta": 0.1555,
"percent_delta": 0.3542,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.03,
"after": 1.8076,
"delta": 0.7776,
"percent_delta": 0.755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.1167,
"delta": 0.0367,
"percent_delta": 0.4587,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3307,
"delta": 0.0037,
"percent_delta": 0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.665,
"after": 1.0494,
"delta": 0.3844,
"percent_delta": 0.578,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.5863,
"delta": 0.2063,
"percent_delta": 0.5429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3694,
"delta": -0.0026,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.967,
"after": 1.5396,
"delta": 0.5726,
"percent_delta": 0.5921,
"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.22,
"after": 6.8315,
"delta": 2.6115,
"percent_delta": 0.6188,
"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.2882,
"predicted_3B": 0.0004,
"predicted_AB": 6.8315,
"predicted_AVG": 0.255,
"predicted_BB": 0.5891,
"predicted_H": 1.742,
"predicted_HBP": 0.152,
"predicted_HR": 0.1114,
"predicted_OBP": 0.3141,
"predicted_R": 0.9851,
"predicted_RBI": 0.5504,
"predicted_SLG": 0.3462,
"predicted_SO": 1.5536
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2882,
"after": 0.2882,
"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.8315,
"after": 6.8315,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2579,
"after": 0.255,
"delta": -0.0029,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5945,
"after": 0.5891,
"delta": -0.0054,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8076,
"after": 1.742,
"delta": -0.0656,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.152,
"after": 0.152,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1167,
"after": 0.1114,
"delta": -0.0053,
"percent_delta": -0.0454,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3307,
"after": 0.3141,
"delta": -0.0166,
"percent_delta": -0.0502,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0494,
"after": 0.9851,
"delta": -0.0643,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5863,
"after": 0.5504,
"delta": -0.0359,
"percent_delta": -0.0612,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3694,
"after": 0.3462,
"delta": -0.0232,
"percent_delta": -0.0628,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5396,
"after": 1.5536,
"delta": 0.014,
"percent_delta": 0.0091,
"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.8076,
"after": 1.742,
"delta": -0.0656,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.83), rates preserved: AVG=0.255 HR/AB=0.016",
"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.2882,
"after": 0.0,
"delta": -0.2882,
"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.8315,
"after": 7.0,
"delta": 0.1685,
"percent_delta": 0.0247,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5891,
"after": 1.0,
"delta": 0.4109,
"percent_delta": 0.6975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.742,
"after": 2.0,
"delta": 0.258,
"percent_delta": 0.1481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.152,
"after": 0.0,
"delta": -0.152,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1114,
"after": 0.0,
"delta": -0.1114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5504,
"after": 1.0,
"delta": 0.4496,
"percent_delta": 0.8169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5536,
"after": 2.0,
"delta": 0.4464,
"percent_delta": 0.2873,
"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_RBI",
"before": 0.5504,
"after": 1.0,
"delta": 0.4496,
"percent_delta": 0.8169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2882,
"after": 0.0,
"delta": -0.2882,
"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.9851,
"after": 1.0,
"delta": 0.0149,
"percent_delta": 0.0151,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.255,
"after": 0.286,
"delta": 0.031,
"percent_delta": 0.1216,
"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.3141,
"after": 0.375,
"delta": 0.0609,
"percent_delta": 0.1939,
"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.3462,
"after": 0.286,
"delta": -0.0602,
"percent_delta": -0.1739,
"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.3141,
"after": 0.375,
"delta": 0.0609,
"percent_delta": 0.1939,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3462,
"after": 0.286,
"delta": -0.0602,
"percent_delta": -0.1739,
"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": 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": 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.255,
"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.3141,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3462,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.255,
"delta": -0.031,
"percent_delta": -0.1084,
"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.3141,
"delta": -0.0609,
"percent_delta": -0.1623,
"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.3462,
"delta": 0.0602,
"percent_delta": 0.2105,
"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.3462,
"delta": 0.0602,
"percent_delta": 0.2105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3141,
"delta": -0.0609,
"percent_delta": -0.1623,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.22,
"after": 4.0,
"delta": -0.22,
"percent_delta": -0.0521,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.244,
"after": 0.255,
"delta": 0.011,
"percent_delta": 0.0451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.439,
"after": 0.0,
"delta": -0.439,
"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.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3141,
"delta": -0.0129,
"percent_delta": -0.0394,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.665,
"after": 0.0,
"delta": -0.665,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.38,
"after": 0.0,
"delta": -0.38,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.372,
"after": 0.3462,
"delta": -0.0258,
"percent_delta": -0.0694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.967,
"after": 1.0,
"delta": 0.033,
"percent_delta": 0.0341,
"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.244,
"after": 0.255,
"delta": 0.011,
"percent_delta": 0.0451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.03,
"after": 0.0,
"delta": -1.03,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.176 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.220 | - |
| predicted_AVG | 0.244 | - |
| predicted_BB | 0.439 | - |
| predicted_H | 1.030 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.327 | - |
| predicted_R | 0.665 | - |
| predicted_RBI | 0.380 | - |
| predicted_SLG | 0.372 | - |
| 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.288 | 0.112 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.832 | 2.612 |
| predicted_AVG | 0.258 | 0.014 |
| predicted_BB | 0.595 | 0.156 |
| predicted_H | 1.808 | 0.778 |
| predicted_HBP | 0.152 | - |
| predicted_HR | 0.117 | 0.037 |
| predicted_OBP | 0.331 | 0.004 |
| predicted_R | 1.049 | 0.384 |
| predicted_RBI | 0.586 | 0.206 |
| predicted_SLG | 0.369 | -0.003 |
| predicted_SO | 1.540 | 0.573 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.288 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.832 | 0.000 |
| predicted_AVG | 0.255 | -0.003 |
| predicted_BB | 0.589 | -0.005 |
| predicted_H | 1.742 | -0.066 |
| predicted_HBP | 0.152 | 0.000 |
| predicted_HR | 0.111 | -0.005 |
| predicted_OBP | 0.314 | -0.017 |
| predicted_R | 0.985 | -0.064 |
| predicted_RBI | 0.550 | -0.036 |
| predicted_SLG | 0.346 | -0.023 |
| predicted_SO | 1.554 | 0.014 |
AB rounded to 7 (raw=6.83), rates preserved: AVG=0.255 HR/AB=0.016
| 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.288 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.168 |
| predicted_AVG | 0.286 | 0.031 |
| predicted_BB | 1.000 | 0.411 |
| predicted_H | 2.000 | 0.258 |
| predicted_HR | 0.000 | -0.111 |
| predicted_OBP | 0.375 | 0.061 |
| predicted_R | 1.000 | 0.015 |
| predicted_RBI | 1.000 | 0.450 |
| predicted_SLG | 0.286 | -0.060 |
| predicted_SO | 2.000 | 0.446 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -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 | - | 21.000 | 6.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.000 | 3.000 | 0.2857 | 0.3182 | 0.2857 | 0.2857 | 0.0000 | 0.0476 | 0.0000 | 0.1429 |
| last_10 | 0.20 | 10 | - | 40.000 | 12.000 | 3.000 | 0.000 | 0.000 | 3.000 | 6.000 | 2.000 | 9.000 | 0.3000 | 0.3488 | 0.3750 | 0.3000 | 0.0000 | 0.0750 | 0.0500 | 0.2250 |
| season | 0.60 | 64 | - | 925.000 | 245.000 | 42.000 | 0.000 | 24.000 | 89.000 | 159.000 | 105.000 | 231.000 | 0.2649 | 0.3375 | 0.3881 | 0.2649 | 0.0260 | 0.0962 | 0.1135 | 0.2497 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4300 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.1310 |
| predicted_AVG | 0.2754 |
| predicted_BB | 0.7910 |
| predicted_H | 2.7900 |
| predicted_HBP | 0.1520 |
| predicted_HR | 0.1630 |
| predicted_OBP | 0.3353 |
| predicted_R | 1.5350 |
| predicted_RBI | 0.8470 |
| predicted_SLG | 0.3662 |
| predicted_SO | 2.2630 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.4300 | 0.2882 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2200 | 10.1310 | 6.8315 | model_form_blend |
| predicted_AVG | 0.2440 | 0.2754 | 0.2579 | model_form_blend |
| predicted_BB | 0.4390 | 0.7910 | 0.5945 | model_form_blend |
| predicted_H | 1.0300 | 2.7900 | 1.8076 | model_form_blend |
| predicted_HBP | - | 0.1520 | 0.1520 | form_only |
| predicted_HR | 0.0800 | 0.1630 | 0.1167 | model_form_blend |
| predicted_OBP | 0.3270 | 0.3353 | 0.3307 | model_form_blend |
| predicted_R | 0.6650 | 1.5350 | 1.0494 | model_form_blend |
| predicted_RBI | 0.3800 | 0.8470 | 0.5863 | model_form_blend |
| predicted_SLG | 0.3720 | 0.3662 | 0.3694 | model_form_blend |
| predicted_SO | 0.9670 | 2.2630 | 1.5396 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.265 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 805367 |
| playerID | 805367 |
| playerName | Chase Meidroth |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.9 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.328 |
| sl_xwoba | 0.291 |
| sl_xba | 0.23 |
| sl_xslg | 0.335 |
| sl_sweet_spot_percent | 32.6 |
| sl_barrel_batted_rate | 5.3 |
| sl_hard_hit_percent | 35.3 |
| sl_exit_velocity_avg | 87.6 |
| sl_launch_angle_avg | 7.2 |
| sl_whiff_percent | 19.7 |
| sl_swing_percent | 41.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.202 | 0.000 | 0.000 | Hitting_2B | 0.202 | 1.000 | -0.202 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.160 | 4.000 | 7.000 | Hitting_AB | 3.769 | 3.000 | 0.231 | 1.000 |
| predicted_AVG | 0.220 | 0.250 | 0.143 | Hitting_AVG | 0.235 | 0.333 | 0.015 | -0.083 |
| predicted_BB | 0.382 | 0.000 | 1.000 | Hitting_BB | 0.382 | 2.000 | -0.382 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_H | 0.920 | 1.000 | 1.000 | Hitting_H | 0.887 | 1.000 | 0.113 | 0.000 |
| predicted_HR | 0.220 | 1.000 | 0.000 | Hitting_HR | 0.252 | 0.000 | 0.748 | 1.000 |
| predicted_OBP | 0.315 | 0.250 | 0.250 | Hitting_OBP | 0.331 | 0.600 | -0.081 | -0.350 |
| predicted_R | 0.513 | 1.000 | 1.000 | Hitting_R | 0.513 | 1.000 | 0.487 | 0.000 |
| predicted_RBI | 0.550 | 2.000 | 1.000 | Hitting_RBI | 0.655 | 0.000 | 1.345 | 2.000 |
| predicted_SLG | 0.438 | 1.000 | 0.143 | Hitting_SLG | 0.489 | 0.667 | 0.511 | 0.333 |
| predicted_SO | 1.294 | 1.000 | 3.000 | Hitting_SO | 1.294 | 2.000 | -0.294 | -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_RBI: 0.5500 -> 2.0000 (boost 1.4500, better) |
| Biggest Deboost | predicted_BB: 0.3820 -> 0.0000 (deboost -0.3820, 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.1600 -> 6.6065 (boost 2.4465, 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.9625 -> 0.9035 (deboost -0.0590, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_SO: 2.3822 -> 3.0000 (boost 0.6178, worse) | predicted_HBP: 0.3980 -> 0.0000 (deboost -0.3980, worse) | AB rounded to 7 (raw=6.61), rates preserved: AVG=0.212 HR/AB=0.059 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8593 -> 1.0000 (boost 0.1407, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4404 -> 0.1430 (deboost -0.2974, 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 -> 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1430 -> 0.4404 (boost 0.2974, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695657",
"player_name": "Colson Montgomery",
"position": "1B",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.202,
"predicted_3B": 0.0,
"predicted_AB": 4.16,
"predicted_AVG": 0.22,
"predicted_BB": 0.382,
"predicted_H": 0.92,
"predicted_HR": 0.22,
"predicted_OBP": 0.315,
"predicted_R": 0.513,
"predicted_RBI": 0.55,
"predicted_SLG": 0.438,
"predicted_SO": 1.294
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3438,
"predicted_3B": 0.0004,
"predicted_AB": 6.6065,
"predicted_AVG": 0.2194,
"predicted_BB": 0.7049,
"predicted_H": 1.4505,
"predicted_HBP": 0.398,
"predicted_HR": 0.4077,
"predicted_OBP": 0.319,
"predicted_R": 0.9154,
"predicted_RBI": 0.9625,
"predicted_SLG": 0.4532,
"predicted_SO": 2.3607
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.3438,
"delta": 0.1418,
"percent_delta": 0.702,
"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.16,
"after": 6.6065,
"delta": 2.4465,
"percent_delta": 0.5881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2194,
"delta": -0.0006,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.382,
"after": 0.7049,
"delta": 0.3229,
"percent_delta": 0.8453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.92,
"after": 1.4505,
"delta": 0.5305,
"percent_delta": 0.5766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.4077,
"delta": 0.1877,
"percent_delta": 0.8532,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.319,
"delta": 0.004,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.513,
"after": 0.9154,
"delta": 0.4024,
"percent_delta": 0.7844,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.55,
"after": 0.9625,
"delta": 0.4125,
"percent_delta": 0.75,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.438,
"after": 0.4532,
"delta": 0.0152,
"percent_delta": 0.0347,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.294,
"after": 2.3607,
"delta": 1.0667,
"percent_delta": 0.8243,
"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.16,
"after": 6.6065,
"delta": 2.4465,
"percent_delta": 0.5881,
"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.3438,
"predicted_3B": 0.0004,
"predicted_AB": 6.6065,
"predicted_AVG": 0.2116,
"predicted_BB": 0.6985,
"predicted_H": 1.3978,
"predicted_HBP": 0.398,
"predicted_HR": 0.3891,
"predicted_OBP": 0.287,
"predicted_R": 0.8593,
"predicted_RBI": 0.9035,
"predicted_SLG": 0.4404,
"predicted_SO": 2.3822
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3438,
"after": 0.3438,
"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.6065,
"after": 6.6065,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2194,
"after": 0.2116,
"delta": -0.0078,
"percent_delta": -0.0356,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7049,
"after": 0.6985,
"delta": -0.0064,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4505,
"after": 1.3978,
"delta": -0.0527,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.398,
"after": 0.398,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4077,
"after": 0.3891,
"delta": -0.0186,
"percent_delta": -0.0456,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.319,
"after": 0.287,
"delta": -0.032,
"percent_delta": -0.1003,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9154,
"after": 0.8593,
"delta": -0.0561,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9625,
"after": 0.9035,
"delta": -0.059,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4532,
"after": 0.4404,
"delta": -0.0128,
"percent_delta": -0.0282,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3607,
"after": 2.3822,
"delta": 0.0215,
"percent_delta": 0.0091,
"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.9625,
"after": 0.9035,
"delta": -0.059,
"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 7 (raw=6.61), rates preserved: AVG=0.212 HR/AB=0.059",
"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": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3438,
"after": 0.0,
"delta": -0.3438,
"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.6065,
"after": 7.0,
"delta": 0.3935,
"percent_delta": 0.0596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6985,
"after": 1.0,
"delta": 0.3015,
"percent_delta": 0.4316,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3978,
"after": 1.0,
"delta": -0.3978,
"percent_delta": -0.2846,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.398,
"after": 0.0,
"delta": -0.398,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3891,
"after": 0.0,
"delta": -0.3891,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9035,
"after": 1.0,
"delta": 0.0965,
"percent_delta": 0.1068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3822,
"after": 3.0,
"delta": 0.6178,
"percent_delta": 0.2593,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 2.3822,
"after": 3.0,
"delta": 0.6178,
"percent_delta": 0.2593,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"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": 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": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8593,
"after": 1.0,
"delta": 0.1407,
"percent_delta": 0.1637,
"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": 0.8593,
"after": 1.0,
"delta": 0.1407,
"percent_delta": 0.1637,
"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.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": 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.2116,
"after": 0.143,
"delta": -0.0686,
"percent_delta": -0.3242,
"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.287,
"after": 0.25,
"delta": -0.037,
"percent_delta": -0.1289,
"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.4404,
"after": 0.143,
"delta": -0.2974,
"percent_delta": -0.6753,
"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.4404,
"after": 0.143,
"delta": -0.2974,
"percent_delta": -0.6753,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"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": 3.0,
"after": 1.0,
"delta": -2.0,
"percent_delta": -0.6667,
"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": 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.2116,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.287,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4404,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2116,
"delta": 0.0686,
"percent_delta": 0.4796,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.287,
"delta": 0.037,
"percent_delta": 0.1479,
"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.143,
"after": 0.4404,
"delta": 0.2974,
"percent_delta": 2.08,
"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.4404,
"delta": 0.2974,
"percent_delta": 2.08,
"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.202,
"after": 0.0,
"delta": -0.202,
"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.16,
"after": 4.0,
"delta": -0.16,
"percent_delta": -0.0385,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2116,
"delta": -0.0084,
"percent_delta": -0.0382,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.382,
"after": 0.0,
"delta": -0.382,
"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.22,
"after": 1.0,
"delta": 0.78,
"percent_delta": 3.5455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.287,
"delta": -0.028,
"percent_delta": -0.0889,
"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.55,
"after": 2.0,
"delta": 1.45,
"percent_delta": 2.6364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.438,
"after": 0.4404,
"delta": 0.0024,
"percent_delta": 0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.294,
"after": 1.0,
"delta": -0.294,
"percent_delta": -0.2272,
"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_RBI",
"before": 0.55,
"after": 2.0,
"delta": 1.45,
"percent_delta": 2.6364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.382,
"after": 0.0,
"delta": -0.382,
"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.202 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.160 | - |
| predicted_AVG | 0.220 | - |
| predicted_BB | 0.382 | - |
| predicted_H | 0.920 | - |
| predicted_HR | 0.220 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.513 | - |
| predicted_RBI | 0.550 | - |
| predicted_SLG | 0.438 | - |
| predicted_SO | 1.294 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.344 | 0.142 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.606 | 2.446 |
| predicted_AVG | 0.219 | -0.001 |
| predicted_BB | 0.705 | 0.323 |
| predicted_H | 1.450 | 0.530 |
| predicted_HBP | 0.398 | - |
| predicted_HR | 0.408 | 0.188 |
| predicted_OBP | 0.319 | 0.004 |
| predicted_R | 0.915 | 0.402 |
| predicted_RBI | 0.963 | 0.412 |
| predicted_SLG | 0.453 | 0.015 |
| predicted_SO | 2.361 | 1.067 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.344 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.606 | 0.000 |
| predicted_AVG | 0.212 | -0.008 |
| predicted_BB | 0.699 | -0.006 |
| predicted_H | 1.398 | -0.053 |
| predicted_HBP | 0.398 | 0.000 |
| predicted_HR | 0.389 | -0.019 |
| predicted_OBP | 0.287 | -0.032 |
| predicted_R | 0.859 | -0.056 |
| predicted_RBI | 0.903 | -0.059 |
| predicted_SLG | 0.440 | -0.013 |
| predicted_SO | 2.382 | 0.022 |
AB rounded to 7 (raw=6.61), rates preserved: AVG=0.212 HR/AB=0.059
| 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 | 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 | 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 | 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.344 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.394 |
| predicted_AVG | 0.143 | -0.069 |
| predicted_BB | 1.000 | 0.301 |
| predicted_H | 1.000 | -0.398 |
| predicted_HR | 0.000 | -0.389 |
| predicted_OBP | 0.250 | -0.037 |
| predicted_R | 1.000 | 0.141 |
| predicted_RBI | 1.000 | 0.097 |
| predicted_SLG | 0.143 | -0.297 |
| predicted_SO | 3.000 | 0.618 |
Attached 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 | 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 | 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 | - | 18.000 | 3.000 | 1.000 | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 9.000 | 0.1667 | 0.3182 | 0.3889 | 0.1667 | 0.0556 | 0.1111 | 0.1667 | 0.5000 |
| last_10 | 0.20 | 10 | - | 37.000 | 8.000 | 2.000 | 0.000 | 3.000 | 5.000 | 6.000 | 4.000 | 15.000 | 0.2162 | 0.3095 | 0.5135 | 0.2162 | 0.0811 | 0.1351 | 0.1081 | 0.4054 |
| season | 0.60 | 64 | - | 897.000 | 211.000 | 48.000 | 0.000 | 60.000 | 156.000 | 122.000 | 91.000 | 308.000 | 0.2352 | 0.3314 | 0.4894 | 0.2352 | 0.0669 | 0.1739 | 0.1014 | 0.3434 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5230 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.6990 |
| predicted_AVG | 0.2186 |
| predicted_BB | 1.1130 |
| predicted_H | 2.1210 |
| predicted_HBP | 0.3980 |
| predicted_HR | 0.6450 |
| predicted_OBP | 0.3241 |
| predicted_R | 1.4240 |
| predicted_RBI | 1.4840 |
| predicted_SLG | 0.4723 |
| predicted_SO | 3.7090 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.5230 | 0.3438 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1600 | 9.6990 | 6.6065 | model_form_blend |
| predicted_AVG | 0.2200 | 0.2186 | 0.2194 | model_form_blend |
| predicted_BB | 0.3820 | 1.1130 | 0.7049 | model_form_blend |
| predicted_H | 0.9200 | 2.1210 | 1.4505 | model_form_blend |
| predicted_HBP | - | 0.3980 | 0.3980 | form_only |
| predicted_HR | 0.2200 | 0.6450 | 0.4077 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3241 | 0.3190 | model_form_blend |
| predicted_R | 0.5130 | 1.4240 | 0.9154 | model_form_blend |
| predicted_RBI | 0.5500 | 1.4840 | 0.9625 | model_form_blend |
| predicted_SLG | 0.4380 | 0.4723 | 0.4532 | model_form_blend |
| predicted_SO | 1.2940 | 3.7090 | 2.3607 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 2 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 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 | SS-3B |
| gameID | 20260607_CHW@PHI |
| game_type | full |
| mlbID | 695657 |
| playerID | 695657 |
| playerName | Colson Montgomery |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-07 |
| sl_k_percent | 30.7 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.348 |
| sl_xwoba | 0.326 |
| sl_xba | 0.215 |
| sl_xslg | 0.438 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 13.7 |
| sl_hard_hit_percent | 45.1 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 19.5 |
| sl_whiff_percent | 38.2 |
| sl_swing_percent | 52.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.197 | 0.000 | 1.000 | Hitting_2B | 0.191 | 2.000 | -0.191 | -2.000 |
| predicted_3B | 0.013 | 0.000 | 0.000 | Hitting_3B | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_AB | 3.070 | 4.000 | 5.000 | Hitting_AB | 2.975 | 3.000 | 1.025 | 1.000 |
| predicted_AVG | 0.292 | 0.500 | 0.200 | Hitting_AVG | 0.297 | 0.667 | 0.203 | -0.167 |
| predicted_BB | 0.274 | 0.000 | 0.000 | Hitting_BB | 0.265 | 1.000 | -0.265 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_H | 0.370 | 2.000 | 1.000 | Hitting_H | 0.883 | 2.000 | 1.117 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_OBP | 0.348 | 0.500 | 0.200 | Hitting_OBP | 0.359 | 0.750 | 0.141 | -0.250 |
| predicted_R | 0.369 | 1.000 | 0.000 | Hitting_R | 0.364 | 1.000 | 0.636 | 0.000 |
| predicted_RBI | 0.190 | 0.000 | 1.000 | Hitting_RBI | 0.333 | 1.000 | -0.333 | -1.000 |
| predicted_SLG | 0.476 | 0.500 | 0.400 | Hitting_SLG | 0.419 | 1.333 | 0.081 | -0.833 |
| predicted_SO | 0.637 | 1.000 | 1.000 | Hitting_SO | 0.617 | 0.000 | 0.383 | 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_H: 0.3700 -> 2.0000 (boost 1.6300, better) |
| Biggest Deboost | predicted_BB: 0.2740 -> 0.0000 (deboost -0.2740, 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.0700 -> 4.5639 (boost 1.4939, 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.5021 -> 0.4055 (deboost -0.0966, 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.5000 -> 1.0000 (boost 0.5000, better) | predicted_BB: 0.3576 -> 0.0000 (deboost -0.3576, worse) | AB rounded to 5 (raw=4.56), rates preserved: AVG=0.255 HR/AB=0.010 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4691 -> 0.0000 (deboost -0.4691, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.3092 -> 0.2000 (deboost -0.1092, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 2 | 3 | predicted_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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_OBP: 0.2000 -> 0.3092 (boost 0.1092, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "671976",
"player_name": "Tristan Peters",
"position": "2B",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.197,
"predicted_3B": 0.013,
"predicted_AB": 3.07,
"predicted_AVG": 0.292,
"predicted_BB": 0.274,
"predicted_H": 0.37,
"predicted_HR": 0.03,
"predicted_OBP": 0.348,
"predicted_R": 0.369,
"predicted_RBI": 0.19,
"predicted_SLG": 0.476,
"predicted_SO": 0.637
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.514,
"predicted_3B": 0.0147,
"predicted_AB": 4.5639,
"predicted_AVG": 0.3186,
"predicted_BB": 0.3609,
"predicted_H": 1.2081,
"predicted_HBP": 0.027,
"predicted_HR": 0.05,
"predicted_OBP": 0.3712,
"predicted_R": 0.4997,
"predicted_RBI": 0.5326,
"predicted_SLG": 0.5021,
"predicted_SO": 0.8311
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.514,
"delta": 0.317,
"percent_delta": 1.6091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.013,
"after": 0.0147,
"delta": 0.0017,
"percent_delta": 0.1308,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.07,
"after": 4.5639,
"delta": 1.4939,
"percent_delta": 0.4866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.292,
"after": 0.3186,
"delta": 0.0266,
"percent_delta": 0.0911,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.274,
"after": 0.3609,
"delta": 0.0869,
"percent_delta": 0.3172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.37,
"after": 1.2081,
"delta": 0.8381,
"percent_delta": 2.2651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.05,
"delta": 0.02,
"percent_delta": 0.6667,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3712,
"delta": 0.0232,
"percent_delta": 0.0667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.369,
"after": 0.4997,
"delta": 0.1307,
"percent_delta": 0.3542,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.5326,
"delta": 0.3426,
"percent_delta": 1.8032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.476,
"after": 0.5021,
"delta": 0.0261,
"percent_delta": 0.0548,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.637,
"after": 0.8311,
"delta": 0.1941,
"percent_delta": 0.3047,
"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.07,
"after": 4.5639,
"delta": 1.4939,
"percent_delta": 0.4866,
"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.514,
"predicted_3B": 0.0147,
"predicted_AB": 4.5639,
"predicted_AVG": 0.2551,
"predicted_BB": 0.3576,
"predicted_H": 1.1642,
"predicted_HBP": 0.027,
"predicted_HR": 0.0477,
"predicted_OBP": 0.3092,
"predicted_R": 0.4691,
"predicted_RBI": 0.5,
"predicted_SLG": 0.4055,
"predicted_SO": 0.8387
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.514,
"after": 0.514,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0147,
"after": 0.0147,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5639,
"after": 4.5639,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3186,
"after": 0.2551,
"delta": -0.0635,
"percent_delta": -0.1993,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3609,
"after": 0.3576,
"delta": -0.0033,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2081,
"after": 1.1642,
"delta": -0.0439,
"percent_delta": -0.0363,
"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.05,
"after": 0.0477,
"delta": -0.0023,
"percent_delta": -0.046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3712,
"after": 0.3092,
"delta": -0.062,
"percent_delta": -0.167,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4997,
"after": 0.4691,
"delta": -0.0306,
"percent_delta": -0.0612,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5326,
"after": 0.5,
"delta": -0.0326,
"percent_delta": -0.0612,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5021,
"after": 0.4055,
"delta": -0.0966,
"percent_delta": -0.1924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8311,
"after": 0.8387,
"delta": 0.0076,
"percent_delta": 0.0091,
"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.5021,
"after": 0.4055,
"delta": -0.0966,
"percent_delta": -0.1924,
"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.255 HR/AB=0.010",
"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.514,
"after": 1.0,
"delta": 0.486,
"percent_delta": 0.9455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0147,
"after": 0.0,
"delta": -0.0147,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5639,
"after": 5.0,
"delta": 0.4361,
"percent_delta": 0.0956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3576,
"after": 0.0,
"delta": -0.3576,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1642,
"after": 1.0,
"delta": -0.1642,
"percent_delta": -0.141,
"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.0477,
"after": 0.0,
"delta": -0.0477,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8387,
"after": 1.0,
"delta": 0.1613,
"percent_delta": 0.1923,
"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.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3576,
"after": 0.0,
"delta": -0.3576,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 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": 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.4691,
"after": 0.0,
"delta": -0.4691,
"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.4691,
"after": 0.0,
"delta": -0.4691,
"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": 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": 0.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.2551,
"after": 0.2,
"delta": -0.0551,
"percent_delta": -0.216,
"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.3092,
"after": 0.2,
"delta": -0.1092,
"percent_delta": -0.3532,
"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.4055,
"after": 0.4,
"delta": -0.0055,
"percent_delta": -0.0136,
"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.3092,
"after": 0.2,
"delta": -0.1092,
"percent_delta": -0.3532,
"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": 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": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"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.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": 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_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3092,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4055,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2551,
"delta": 0.0551,
"percent_delta": 0.2755,
"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.3092,
"delta": 0.1092,
"percent_delta": 0.5461,
"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.4055,
"delta": 0.0055,
"percent_delta": 0.0138,
"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.2,
"after": 0.3092,
"delta": 0.1092,
"percent_delta": 0.5461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.0,
"delta": -0.197,
"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.07,
"after": 4.0,
"delta": 0.93,
"percent_delta": 0.3029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.292,
"after": 0.2551,
"delta": -0.0369,
"percent_delta": -0.1264,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.274,
"after": 0.0,
"delta": -0.274,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.37,
"after": 2.0,
"delta": 1.63,
"percent_delta": 4.4054,
"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.348,
"after": 0.3092,
"delta": -0.0388,
"percent_delta": -0.1115,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.369,
"after": 1.0,
"delta": 0.631,
"percent_delta": 1.71,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.476,
"after": 0.4055,
"delta": -0.0705,
"percent_delta": -0.1481,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.637,
"after": 1.0,
"delta": 0.363,
"percent_delta": 0.5699,
"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.37,
"after": 2.0,
"delta": 1.63,
"percent_delta": 4.4054,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.274,
"after": 0.0,
"delta": -0.274,
"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.197 | - |
| predicted_3B | 0.013 | - |
| predicted_AB | 3.070 | - |
| predicted_AVG | 0.292 | - |
| predicted_BB | 0.274 | - |
| predicted_H | 0.370 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.348 | - |
| predicted_R | 0.369 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.476 | - |
| predicted_SO | 0.637 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.317 |
| predicted_3B | 0.015 | 0.002 |
| predicted_AB | 4.564 | 1.494 |
| predicted_AVG | 0.319 | 0.027 |
| predicted_BB | 0.361 | 0.087 |
| predicted_H | 1.208 | 0.838 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.050 | 0.020 |
| predicted_OBP | 0.371 | 0.023 |
| predicted_R | 0.500 | 0.131 |
| predicted_RBI | 0.533 | 0.343 |
| predicted_SLG | 0.502 | 0.026 |
| predicted_SO | 0.831 | 0.194 |
Step 3: 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.015 | 0.000 |
| predicted_AB | 4.564 | 0.000 |
| predicted_AVG | 0.255 | -0.064 |
| predicted_BB | 0.358 | -0.003 |
| predicted_H | 1.164 | -0.044 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.048 | -0.002 |
| predicted_OBP | 0.309 | -0.062 |
| predicted_R | 0.469 | -0.031 |
| predicted_RBI | 0.500 | -0.033 |
| predicted_SLG | 0.406 | -0.097 |
| predicted_SO | 0.839 | 0.008 |
AB rounded to 5 (raw=4.56), rates preserved: AVG=0.255 HR/AB=0.010
| 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 | - |
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 | 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 | 1.000 | 0.486 |
| predicted_3B | 0.000 | -0.015 |
| predicted_AB | 5.000 | 0.436 |
| predicted_AVG | 0.200 | -0.055 |
| predicted_BB | 0.000 | -0.358 |
| predicted_H | 1.000 | -0.164 |
| predicted_HR | 0.000 | -0.048 |
| predicted_OBP | 0.200 | -0.109 |
| predicted_R | 0.000 | -0.469 |
| predicted_RBI | 1.000 | 0.500 |
| predicted_SLG | 0.400 | -0.006 |
| predicted_SO | 1.000 | 0.161 |
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 | 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 | 7.000 | 5.000 | 0.000 | 0.000 | 4.000 | 1.000 | 1.000 | 2.000 | 0.4118 | 0.4444 | 0.7059 | 0.4118 | 0.0000 | 0.2353 | 0.0588 | 0.1177 |
| last_10 | 0.20 | 9 | - | 36.000 | 19.000 | 10.000 | 0.000 | 0.000 | 7.000 | 3.000 | 1.000 | 2.000 | 0.5278 | 0.5405 | 0.8056 | 0.5278 | 0.0000 | 0.1944 | 0.0278 | 0.0556 |
| season | 0.60 | 57 | - | 482.000 | 143.000 | 31.000 | 2.000 | 8.000 | 54.000 | 58.000 | 43.000 | 100.000 | 0.2967 | 0.3580 | 0.4191 | 0.2967 | 0.0166 | 0.1120 | 0.0892 | 0.2075 |
| Metric | Value |
|---|---|
| predicted_2B | 0.9270 |
| predicted_3B | 0.0170 |
| predicted_AB | 6.5100 |
| predicted_AVG | 0.3533 |
| predicted_BB | 0.4740 |
| predicted_H | 2.3000 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.0760 |
| predicted_OBP | 0.4014 |
| predicted_R | 0.6700 |
| predicted_RBI | 0.9790 |
| predicted_SLG | 0.5360 |
| predicted_SO | 1.0840 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.9270 | 0.5140 | model_form_blend |
| predicted_3B | 0.0130 | 0.0170 | 0.0147 | model_form_blend |
| predicted_AB | 3.0700 | 6.5100 | 4.5639 | model_form_blend |
| predicted_AVG | 0.2920 | 0.3533 | 0.3186 | model_form_blend |
| predicted_BB | 0.2740 | 0.4740 | 0.3609 | model_form_blend |
| predicted_H | 0.3700 | 2.3000 | 1.2081 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.0300 | 0.0760 | 0.0500 | model_form_blend |
| predicted_OBP | 0.3480 | 0.4014 | 0.3712 | model_form_blend |
| predicted_R | 0.3690 | 0.6700 | 0.4997 | model_form_blend |
| predicted_RBI | 0.1900 | 0.9790 | 0.5326 | model_form_blend |
| predicted_SLG | 0.4760 | 0.5360 | 0.5021 | model_form_blend |
| predicted_SO | 0.6370 | 1.0840 | 0.8311 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 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.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 | 2 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.667 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| 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 | CF |
| gameID | 20260607_CHW@PHI |
| game_type | full |
| mlbID | 671976 |
| playerID | 671976 |
| playerName | Tristan Peters |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-07 |
| sl_k_percent | 18.7 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.35 |
| sl_xwoba | 0.293 |
| sl_xba | 0.246 |
| sl_xslg | 0.35 |
| sl_sweet_spot_percent | 32.8 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 25.5 |
| sl_exit_velocity_avg | 86.4 |
| sl_launch_angle_avg | 13.9 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 56.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.134 | 0.000 | 0.000 | Hitting_2B | 0.130 | 0.000 | -0.130 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.299 | 3.000 | 5.000 | Hitting_AB | 3.203 | 3.000 | -0.203 | 0.000 |
| predicted_AVG | 0.212 | 0.000 | 0.200 | Hitting_AVG | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_BB | 0.493 | 0.000 | 1.000 | Hitting_BB | 0.493 | 0.000 | -0.493 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.280 | 0.000 | 1.000 | Hitting_H | 0.565 | 0.000 | -0.565 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.261 | 0.000 | -0.261 | 0.000 |
| predicted_OBP | 0.231 | 0.000 | 0.333 | Hitting_OBP | 0.296 | 0.000 | -0.296 | 0.000 |
| predicted_R | 0.388 | 0.000 | 1.000 | Hitting_R | 0.377 | 0.000 | -0.377 | 0.000 |
| predicted_RBI | 0.190 | 0.000 | 1.000 | Hitting_RBI | 0.551 | 1.000 | -0.551 | -1.000 |
| predicted_SLG | 0.371 | 0.000 | 0.200 | Hitting_SLG | 0.462 | 0.000 | -0.462 | 0.000 |
| predicted_SO | 0.985 | 1.000 | 1.000 | Hitting_SO | 0.957 | 1.000 | 0.043 | 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 | 0 |
| Worse Metrics | 10 |
| Biggest Boost | - |
| Biggest Deboost | predicted_BB: 0.4930 -> 0.0000 (deboost -0.4930, 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.2990 -> 5.1475 (boost 1.8485, better) | predicted_AVG: 0.2120 -> 0.1915 (deboost -0.0205, 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.3778 -> 0.2998 (deboost -0.0780, 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.5179 -> 1.0000 (boost 0.4821, better) | predicted_SO: 1.5237 -> 1.0000 (deboost -0.5237, better) | AB rounded to 5 (raw=5.15), rates preserved: AVG=0.129 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5183 -> 1.0000 (boost 0.4817, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2202 -> 0.3330 (boost 0.1128, better) | predicted_SLG: 0.2998 -> 0.2000 (deboost -0.0998, 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 -> 3.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.2000 -> 0.2998 (boost 0.0998, better) | predicted_OBP: 0.3330 -> 0.2202 (deboost -0.1128, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691011",
"player_name": "Drew Romo",
"position": "3B",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.134,
"predicted_3B": 0.0,
"predicted_AB": 3.299,
"predicted_AVG": 0.212,
"predicted_BB": 0.493,
"predicted_H": 0.28,
"predicted_HR": 0.06,
"predicted_OBP": 0.231,
"predicted_R": 0.388,
"predicted_RBI": 0.19,
"predicted_SLG": 0.371,
"predicted_SO": 0.985
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.262,
"predicted_3B": 0.0013,
"predicted_AB": 5.1475,
"predicted_AVG": 0.1915,
"predicted_BB": 0.6071,
"predicted_H": 0.6896,
"predicted_HBP": 0.092,
"predicted_HR": 0.2144,
"predicted_OBP": 0.2352,
"predicted_R": 0.5521,
"predicted_RBI": 0.5517,
"predicted_SLG": 0.3778,
"predicted_SO": 1.51
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.134,
"after": 0.262,
"delta": 0.128,
"percent_delta": 0.9552,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0013,
"delta": 0.0013,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.299,
"after": 5.1475,
"delta": 1.8485,
"percent_delta": 0.5603,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.1915,
"delta": -0.0205,
"percent_delta": -0.0967,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.493,
"after": 0.6071,
"delta": 0.1141,
"percent_delta": 0.2314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 0.6896,
"delta": 0.4096,
"percent_delta": 1.4629,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.2144,
"delta": 0.1544,
"percent_delta": 2.5733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.231,
"after": 0.2352,
"delta": 0.0042,
"percent_delta": 0.0182,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.388,
"after": 0.5521,
"delta": 0.1641,
"percent_delta": 0.4229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.5517,
"delta": 0.3617,
"percent_delta": 1.9037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.3778,
"delta": 0.0068,
"percent_delta": 0.0183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.985,
"after": 1.51,
"delta": 0.525,
"percent_delta": 0.533,
"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.299,
"after": 5.1475,
"delta": 1.8485,
"percent_delta": 0.5603,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.1915,
"delta": -0.0205,
"percent_delta": -0.0967,
"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": 22
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.262,
"predicted_3B": 0.0013,
"predicted_AB": 5.1475,
"predicted_AVG": 0.1291,
"predicted_BB": 0.6016,
"predicted_H": 0.6646,
"predicted_HBP": 0.092,
"predicted_HR": 0.2046,
"predicted_OBP": 0.2202,
"predicted_R": 0.5183,
"predicted_RBI": 0.5179,
"predicted_SLG": 0.2998,
"predicted_SO": 1.5237
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.262,
"after": 0.262,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0013,
"after": 0.0013,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.1475,
"after": 5.1475,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1915,
"after": 0.1291,
"delta": -0.0624,
"percent_delta": -0.3258,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6071,
"after": 0.6016,
"delta": -0.0055,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6896,
"after": 0.6646,
"delta": -0.025,
"percent_delta": -0.0363,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2144,
"after": 0.2046,
"delta": -0.0098,
"percent_delta": -0.0457,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2352,
"after": 0.2202,
"delta": -0.015,
"percent_delta": -0.0638,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5521,
"after": 0.5183,
"delta": -0.0338,
"percent_delta": -0.0612,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5517,
"after": 0.5179,
"delta": -0.0338,
"percent_delta": -0.0613,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3778,
"after": 0.2998,
"delta": -0.078,
"percent_delta": -0.2065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.51,
"after": 1.5237,
"delta": 0.0137,
"percent_delta": 0.0091,
"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.3778,
"after": 0.2998,
"delta": -0.078,
"percent_delta": -0.2065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.15), rates preserved: AVG=0.129 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.262,
"after": 0.0,
"delta": -0.262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0013,
"after": 0.0,
"delta": -0.0013,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.1475,
"after": 5.0,
"delta": -0.1475,
"percent_delta": -0.0287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6016,
"after": 1.0,
"delta": 0.3984,
"percent_delta": 0.6622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6646,
"after": 1.0,
"delta": 0.3354,
"percent_delta": 0.5047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.092,
"after": 0.0,
"delta": -0.092,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2046,
"after": 0.0,
"delta": -0.2046,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5179,
"after": 1.0,
"delta": 0.4821,
"percent_delta": 0.9309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5237,
"after": 1.0,
"delta": -0.5237,
"percent_delta": -0.3437,
"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.5179,
"after": 1.0,
"delta": 0.4821,
"percent_delta": 0.9309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5237,
"after": 1.0,
"delta": -0.5237,
"percent_delta": -0.3437,
"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": 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.5183,
"after": 1.0,
"delta": 0.4817,
"percent_delta": 0.9294,
"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.5183,
"after": 1.0,
"delta": 0.4817,
"percent_delta": 0.9294,
"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.1291,
"after": 0.2,
"delta": 0.0709,
"percent_delta": 0.5492,
"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.2202,
"after": 0.333,
"delta": 0.1128,
"percent_delta": 0.5123,
"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.2998,
"after": 0.2,
"delta": -0.0998,
"percent_delta": -0.3329,
"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.2202,
"after": 0.333,
"delta": 0.1128,
"percent_delta": 0.5123,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2998,
"after": 0.2,
"delta": -0.0998,
"percent_delta": -0.3329,
"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": 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": 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": 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.1291,
"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.2202,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2998,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1291,
"delta": -0.0709,
"percent_delta": -0.3545,
"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.2202,
"delta": -0.1128,
"percent_delta": -0.3386,
"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.2998,
"delta": 0.0998,
"percent_delta": 0.4988,
"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.2998,
"delta": 0.0998,
"percent_delta": 0.4988,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2202,
"delta": -0.1128,
"percent_delta": -0.3386,
"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.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.299,
"after": 3.0,
"delta": -0.299,
"percent_delta": -0.0906,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.1291,
"delta": -0.0829,
"percent_delta": -0.391,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.28,
"after": 0.0,
"delta": -0.28,
"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.231,
"after": 0.2202,
"delta": -0.0108,
"percent_delta": -0.0468,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.388,
"after": 0.0,
"delta": -0.388,
"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.371,
"after": 0.2998,
"delta": -0.0712,
"percent_delta": -0.1919,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.985,
"after": 1.0,
"delta": 0.015,
"percent_delta": 0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 0,
"deboosted_metrics": 10,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"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.134 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.299 | - |
| predicted_AVG | 0.212 | - |
| predicted_BB | 0.493 | - |
| predicted_H | 0.280 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.231 | - |
| predicted_R | 0.388 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.371 | - |
| predicted_SO | 0.985 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.262 | 0.128 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.147 | 1.849 |
| predicted_AVG | 0.192 | -0.020 |
| predicted_BB | 0.607 | 0.114 |
| predicted_H | 0.690 | 0.410 |
| predicted_HBP | 0.092 | - |
| predicted_HR | 0.214 | 0.154 |
| predicted_OBP | 0.235 | 0.004 |
| predicted_R | 0.552 | 0.164 |
| predicted_RBI | 0.552 | 0.362 |
| predicted_SLG | 0.378 | 0.007 |
| predicted_SO | 1.510 | 0.525 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.262 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.147 | 0.000 |
| predicted_AVG | 0.129 | -0.062 |
| predicted_BB | 0.602 | -0.005 |
| predicted_H | 0.665 | -0.025 |
| predicted_HBP | 0.092 | 0.000 |
| predicted_HR | 0.205 | -0.010 |
| predicted_OBP | 0.220 | -0.015 |
| predicted_R | 0.518 | -0.034 |
| predicted_RBI | 0.518 | -0.034 |
| predicted_SLG | 0.300 | -0.078 |
| predicted_SO | 1.524 | 0.014 |
AB rounded to 5 (raw=5.15), rates preserved: AVG=0.129 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 | - |
Enforced H<=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.262 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.147 |
| predicted_AVG | 0.200 | 0.071 |
| predicted_BB | 1.000 | 0.398 |
| predicted_H | 1.000 | 0.335 |
| predicted_HR | 0.000 | -0.205 |
| predicted_OBP | 0.333 | 0.113 |
| predicted_R | 1.000 | 0.482 |
| predicted_RBI | 1.000 | 0.482 |
| predicted_SLG | 0.200 | -0.100 |
| predicted_SO | 1.000 | -0.524 |
Attached 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 | 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 | - | 18.000 | 2.000 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 4.000 | 0.1111 | 0.1111 | 0.2222 | 0.1111 | 0.0000 | 0.0556 | 0.0000 | 0.2222 |
| last_10 | 0.20 | 7 | - | 37.000 | 3.000 | 2.000 | 0.000 | 1.000 | 3.000 | 2.000 | 0.000 | 18.000 | 0.0811 | 0.0811 | 0.2162 | 0.0811 | 0.0270 | 0.0811 | 0.0000 | 0.4865 |
| season | 0.60 | 22 | - | 221.000 | 39.000 | 9.000 | 0.000 | 18.000 | 38.000 | 26.000 | 33.000 | 66.000 | 0.1765 | 0.2934 | 0.4615 | 0.1765 | 0.0814 | 0.1719 | 0.1493 | 0.2986 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4390 |
| predicted_3B | 0.0030 |
| predicted_AB | 7.7040 |
| predicted_AVG | 0.1631 |
| predicted_BB | 0.7650 |
| predicted_H | 1.2560 |
| predicted_HBP | 0.0920 |
| predicted_HR | 0.4280 |
| predicted_OBP | 0.2411 |
| predicted_R | 0.7790 |
| predicted_RBI | 1.0520 |
| predicted_SLG | 0.3873 |
| predicted_SO | 2.2360 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1340 | 0.4390 | 0.2620 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0013 | model_form_blend |
| predicted_AB | 3.2990 | 7.7040 | 5.1475 | model_form_blend |
| predicted_AVG | 0.2120 | 0.1631 | 0.1915 | model_form_blend |
| predicted_BB | 0.4930 | 0.7650 | 0.6071 | model_form_blend |
| predicted_H | 0.2800 | 1.2560 | 0.6896 | model_form_blend |
| predicted_HBP | - | 0.0920 | 0.0920 | form_only |
| predicted_HR | 0.0600 | 0.4280 | 0.2144 | model_form_blend |
| predicted_OBP | 0.2310 | 0.2411 | 0.2352 | model_form_blend |
| predicted_R | 0.3880 | 0.7790 | 0.5521 | model_form_blend |
| predicted_RBI | 0.1900 | 1.0520 | 0.5517 | model_form_blend |
| predicted_SLG | 0.3710 | 0.3873 | 0.3778 | model_form_blend |
| predicted_SO | 0.9850 | 2.2360 | 1.5100 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 69 |
| Season rows before report date | 69 |
| Report year | 2026 |
| Profile rows used | 67 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 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.176 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 1 |
| 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 | 20260607_CHW@PHI |
| game_type | full |
| mlbID | 691011 |
| playerID | 691011 |
| playerName | Drew Romo |
| pos | C |
| started | True |
| startingPosition | C |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.6 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.294 |
| sl_xwoba | 0.281 |
| sl_xba | 0.19 |
| sl_xslg | 0.333 |
| sl_sweet_spot_percent | 24.6 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 28.1 |
| sl_exit_velocity_avg | 84.4 |
| sl_launch_angle_avg | 11.6 |
| sl_whiff_percent | 33.1 |
| 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.026 | 0.000 | 0.000 | Hitting_2B | 0.023 | 0.000 | -0.023 | 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.159 | 4.000 | 0.841 | -1.000 |
| predicted_AVG | 0.281 | 0.000 | 0.333 | Hitting_AVG | 0.200 | 0.250 | -0.200 | -0.250 |
| predicted_BB | 0.158 | 0.000 | 0.000 | Hitting_BB | 0.193 | 0.000 | -0.193 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.102 | 0.000 | -0.102 | 0.000 |
| predicted_H | 0.190 | 0.000 | 1.000 | Hitting_H | 0.432 | 1.000 | -0.432 | -1.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_OBP | 0.281 | 0.000 | 0.333 | Hitting_OBP | 0.269 | 0.250 | -0.269 | -0.250 |
| predicted_R | 0.289 | 0.000 | 0.000 | Hitting_R | 0.261 | 1.000 | -0.261 | -1.000 |
| predicted_RBI | 0.130 | 0.000 | 0.000 | Hitting_RBI | 0.193 | 1.000 | -0.193 | -1.000 |
| predicted_SLG | 0.371 | 0.000 | 0.333 | Hitting_SLG | 0.321 | 0.250 | -0.321 | -0.250 |
| predicted_SO | 0.934 | 0.000 | 1.000 | Hitting_SO | 0.807 | 2.000 | -0.807 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 8 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 2.5000 -> 3.0000 (boost 0.5000, better) |
| Biggest Deboost | predicted_SO: 0.9340 -> 0.0000 (deboost -0.9340, 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: 2.5000 -> 3.0940 (boost 0.5940, better) | predicted_AVG: 0.2810 -> 0.2413 (deboost -0.0397, 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.3567 -> 0.2313 (deboost -0.1254, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 0 | 6 | 1 | 5 | - | predicted_H: 0.3969 -> 0.0000 (deboost -0.3969, worse) | AB rounded to 3 (raw=3.09), rates preserved: AVG=0.128 HR/AB=0.030 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.3475 -> 0.0000 (deboost -0.3475, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1283 -> 0.3330 (boost 0.2047, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 0 | 2 | 1 | 1 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1283 (deboost -0.2047, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656537",
"player_name": "Derek Hill",
"position": "SS",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.026,
"predicted_3B": 0.0,
"predicted_AB": 2.5,
"predicted_AVG": 0.281,
"predicted_BB": 0.158,
"predicted_H": 0.19,
"predicted_HR": 0.04,
"predicted_OBP": 0.281,
"predicted_R": 0.289,
"predicted_RBI": 0.13,
"predicted_SLG": 0.371,
"predicted_SO": 0.934
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0351,
"predicted_3B": 0.0008,
"predicted_AB": 3.094,
"predicted_AVG": 0.2413,
"predicted_BB": 0.165,
"predicted_H": 0.4118,
"predicted_HBP": 0.005,
"predicted_HR": 0.0985,
"predicted_OBP": 0.2553,
"predicted_R": 0.3702,
"predicted_RBI": 0.2537,
"predicted_SLG": 0.3567,
"predicted_SO": 1.1908
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.026,
"after": 0.0351,
"delta": 0.0091,
"percent_delta": 0.35,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 3.094,
"delta": 0.594,
"percent_delta": 0.2376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.2413,
"delta": -0.0397,
"percent_delta": -0.1413,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.158,
"after": 0.165,
"delta": 0.007,
"percent_delta": 0.0443,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.4118,
"delta": 0.2218,
"percent_delta": 1.1674,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0985,
"delta": 0.0585,
"percent_delta": 1.4625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2553,
"delta": -0.0257,
"percent_delta": -0.0915,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.289,
"after": 0.3702,
"delta": 0.0812,
"percent_delta": 0.281,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.2537,
"delta": 0.1237,
"percent_delta": 0.9515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.3567,
"delta": -0.0143,
"percent_delta": -0.0385,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.934,
"after": 1.1908,
"delta": 0.2568,
"percent_delta": 0.2749,
"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": 2.5,
"after": 3.094,
"delta": 0.594,
"percent_delta": 0.2376,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.2413,
"delta": -0.0397,
"percent_delta": -0.1413,
"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": 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.0351,
"predicted_3B": 0.0008,
"predicted_AB": 3.094,
"predicted_AVG": 0.1283,
"predicted_BB": 0.1635,
"predicted_H": 0.3969,
"predicted_HBP": 0.005,
"predicted_HR": 0.094,
"predicted_OBP": 0.172,
"predicted_R": 0.3475,
"predicted_RBI": 0.2381,
"predicted_SLG": 0.2313,
"predicted_SO": 1.2016
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0351,
"after": 0.0351,
"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.094,
"after": 3.094,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2413,
"after": 0.1283,
"delta": -0.113,
"percent_delta": -0.4683,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.165,
"after": 0.1635,
"delta": -0.0015,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4118,
"after": 0.3969,
"delta": -0.0149,
"percent_delta": -0.0362,
"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.0985,
"after": 0.094,
"delta": -0.0045,
"percent_delta": -0.0457,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2553,
"after": 0.172,
"delta": -0.0833,
"percent_delta": -0.3263,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3702,
"after": 0.3475,
"delta": -0.0227,
"percent_delta": -0.0613,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2537,
"after": 0.2381,
"delta": -0.0156,
"percent_delta": -0.0615,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3567,
"after": 0.2313,
"delta": -0.1254,
"percent_delta": -0.3516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1908,
"after": 1.2016,
"delta": 0.0108,
"percent_delta": 0.0091,
"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.3567,
"after": 0.2313,
"delta": -0.1254,
"percent_delta": -0.3516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.09), rates preserved: AVG=0.128 HR/AB=0.030",
"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.0351,
"after": 0.0,
"delta": -0.0351,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0008,
"after": 0.0,
"delta": -0.0008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.094,
"after": 3.0,
"delta": -0.094,
"percent_delta": -0.0304,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1635,
"after": 0.0,
"delta": -0.1635,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3969,
"after": 0.0,
"delta": -0.3969,
"percent_delta": -1.0,
"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.094,
"after": 0.0,
"delta": -0.094,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2381,
"after": 0.0,
"delta": -0.2381,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2016,
"after": 1.0,
"delta": -0.2016,
"percent_delta": -0.1678,
"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_H",
"before": 0.3969,
"after": 0.0,
"delta": -0.3969,
"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.3475,
"after": 0.0,
"delta": -0.3475,
"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.3475,
"after": 0.0,
"delta": -0.3475,
"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.1283,
"after": 0.333,
"delta": 0.2047,
"percent_delta": 1.5955,
"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.172,
"after": 0.333,
"delta": 0.161,
"percent_delta": 0.936,
"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.2313,
"after": 0.333,
"delta": 0.1017,
"percent_delta": 0.4397,
"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.1283,
"after": 0.333,
"delta": 0.2047,
"percent_delta": 1.5955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1283,
"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.172,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2313,
"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.1283,
"delta": -0.2047,
"percent_delta": -0.6148,
"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.172,
"delta": -0.161,
"percent_delta": -0.4834,
"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.2313,
"delta": -0.1017,
"percent_delta": -0.3055,
"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.1283,
"delta": -0.2047,
"percent_delta": -0.6148,
"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.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.281,
"after": 0.1283,
"delta": -0.1527,
"percent_delta": -0.5434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.158,
"after": 0.0,
"delta": -0.158,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.172,
"delta": -0.109,
"percent_delta": -0.3879,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.289,
"after": 0.0,
"delta": -0.289,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.371,
"after": 0.2313,
"delta": -0.1397,
"percent_delta": -0.3765,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.934,
"after": 0.0,
"delta": -0.934,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.5,
"after": 3.0,
"delta": 0.5,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.934,
"after": 0.0,
"delta": -0.934,
"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.026 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.500 | - |
| predicted_AVG | 0.281 | - |
| predicted_BB | 0.158 | - |
| predicted_H | 0.190 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.281 | - |
| predicted_R | 0.289 | - |
| predicted_RBI | 0.130 | - |
| predicted_SLG | 0.371 | - |
| predicted_SO | 0.934 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.035 | 0.009 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.094 | 0.594 |
| predicted_AVG | 0.241 | -0.040 |
| predicted_BB | 0.165 | 0.007 |
| predicted_H | 0.412 | 0.222 |
| predicted_HBP | 0.005 | - |
| predicted_HR | 0.099 | 0.059 |
| predicted_OBP | 0.255 | -0.026 |
| predicted_R | 0.370 | 0.081 |
| predicted_RBI | 0.254 | 0.124 |
| predicted_SLG | 0.357 | -0.014 |
| predicted_SO | 1.191 | 0.257 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.035 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.094 | 0.000 |
| predicted_AVG | 0.128 | -0.113 |
| predicted_BB | 0.164 | -0.002 |
| predicted_H | 0.397 | -0.015 |
| predicted_HBP | 0.005 | 0.000 |
| predicted_HR | 0.094 | -0.005 |
| predicted_OBP | 0.172 | -0.083 |
| predicted_R | 0.347 | -0.023 |
| predicted_RBI | 0.238 | -0.016 |
| predicted_SLG | 0.231 | -0.125 |
| predicted_SO | 1.202 | 0.011 |
AB rounded to 3 (raw=3.09), rates preserved: AVG=0.128 HR/AB=0.030
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.035 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.094 |
| predicted_AVG | 0.333 | 0.205 |
| predicted_BB | 0.000 | -0.164 |
| predicted_H | 1.000 | 0.603 |
| predicted_HR | 0.000 | -0.094 |
| predicted_OBP | 0.333 | 0.161 |
| predicted_R | 0.000 | -0.347 |
| predicted_RBI | 0.000 | -0.238 |
| predicted_SLG | 0.333 | 0.102 |
| 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 | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 6.000 | 0.1667 | 0.1667 | 0.4167 | 0.1667 | 0.0833 | 0.1667 | 0.0000 | 0.5000 |
| last_10 | 0.20 | 9 | - | 22.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 11.000 | 0.0909 | 0.0909 | 0.2273 | 0.0909 | 0.0454 | 0.0909 | 0.0000 | 0.5000 |
| season | 0.60 | 39 | - | 190.000 | 38.000 | 2.000 | 0.000 | 7.000 | 17.000 | 22.000 | 12.000 | 71.000 | 0.2000 | 0.2475 | 0.3211 | 0.2000 | 0.0368 | 0.0895 | 0.0632 | 0.3737 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0480 |
| predicted_3B | 0.0020 |
| predicted_AB | 3.9410 |
| predicted_AVG | 0.1846 |
| predicted_BB | 0.1750 |
| predicted_H | 0.7280 |
| predicted_HBP | 0.0050 |
| predicted_HR | 0.1820 |
| predicted_OBP | 0.2187 |
| predicted_R | 0.4860 |
| predicted_RBI | 0.4300 |
| predicted_SLG | 0.3362 |
| predicted_SO | 1.5570 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0260 | 0.0480 | 0.0351 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 2.5000 | 3.9410 | 3.0940 | model_form_blend |
| predicted_AVG | 0.2810 | 0.1846 | 0.2413 | model_form_blend |
| predicted_BB | 0.1580 | 0.1750 | 0.1650 | model_form_blend |
| predicted_H | 0.1900 | 0.7280 | 0.4118 | model_form_blend |
| predicted_HBP | - | 0.0050 | 0.0050 | form_only |
| predicted_HR | 0.0400 | 0.1820 | 0.0985 | model_form_blend |
| predicted_OBP | 0.2810 | 0.2187 | 0.2553 | model_form_blend |
| predicted_R | 0.2890 | 0.4860 | 0.3702 | model_form_blend |
| predicted_RBI | 0.1300 | 0.4300 | 0.2537 | model_form_blend |
| predicted_SLG | 0.3710 | 0.3362 | 0.3567 | model_form_blend |
| predicted_SO | 0.9340 | 1.5570 | 1.1908 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 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.2 |
| 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 | 1 |
| 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 | LF |
| gameID | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 656537 |
| playerID | 656537 |
| playerName | Derek Hill |
| pos | RF |
| started | True |
| startingPosition | LF |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-10 |
| sl_k_percent | 32.2 |
| sl_bb_percent | 7.8 |
| sl_woba | 0.295 |
| sl_xwoba | 0.302 |
| sl_xba | 0.233 |
| sl_xslg | 0.377 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 9.6 |
| sl_hard_hit_percent | 35.8 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 15.4 |
| sl_whiff_percent | 34.6 |
| sl_swing_percent | 51.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.133 | 0.000 | 0.000 | Hitting_2B | 0.132 | 0.000 | -0.132 | 0.000 |
| predicted_3B | 0.057 | 0.000 | 0.000 | Hitting_3B | 0.057 | 0.000 | -0.057 | 0.000 |
| predicted_AB | 3.544 | 3.000 | 6.000 | Hitting_AB | 3.522 | 4.000 | -0.522 | -1.000 |
| predicted_AVG | 0.267 | 0.000 | 0.333 | Hitting_AVG | 0.263 | 0.250 | -0.263 | -0.250 |
| predicted_BB | 0.297 | 0.000 | 1.000 | Hitting_BB | 0.296 | 1.000 | -0.296 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.107 | 0.000 | -0.107 | 0.000 |
| predicted_H | 0.850 | 0.000 | 2.000 | Hitting_H | 0.925 | 1.000 | -0.925 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_OBP | 0.377 | 0.000 | 0.429 | Hitting_OBP | 0.375 | 0.400 | -0.375 | -0.400 |
| predicted_R | 0.658 | 0.000 | 1.000 | Hitting_R | 0.654 | 1.000 | -0.654 | -1.000 |
| predicted_RBI | 0.340 | 0.000 | 1.000 | Hitting_RBI | 0.384 | 0.000 | -0.384 | 0.000 |
| predicted_SLG | 0.399 | 0.000 | 0.333 | Hitting_SLG | 0.359 | 0.250 | -0.359 | -0.250 |
| predicted_SO | 0.652 | 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 | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 0 |
| Worse Metrics | 11 |
| Biggest Boost | predicted_SO: 0.6520 -> 1.0000 (boost 0.3480, worse) |
| Biggest Deboost | predicted_H: 0.8500 -> 0.0000 (deboost -0.8500, 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.5440 -> 5.6248 (boost 2.0808, 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_OBP: 0.3918 -> 0.3245 (deboost -0.0673, 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 | 4 | 4 | predicted_H: 1.4750 -> 2.0000 (boost 0.5250, better) | predicted_HBP: 0.9960 -> 0.0000 (deboost -0.9960, worse) | AB rounded to 6 (raw=5.62), rates preserved: AVG=0.262 HR/AB=0.010 |
| 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.3245 -> 0.4290 (boost 0.1045, better) | predicted_SLG: 0.3670 -> 0.3330 (deboost -0.0340, 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 -> 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.3670 (boost 0.0340, better) | predicted_OBP: 0.4290 -> 0.3245 (deboost -0.1045, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "803011",
"player_name": "Sam Antonacci",
"position": "LF",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.133,
"predicted_3B": 0.057,
"predicted_AB": 3.544,
"predicted_AVG": 0.267,
"predicted_BB": 0.297,
"predicted_H": 0.85,
"predicted_HR": 0.06,
"predicted_OBP": 0.377,
"predicted_R": 0.658,
"predicted_RBI": 0.34,
"predicted_SLG": 0.399,
"predicted_SO": 0.652
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2913,
"predicted_3B": 0.0662,
"predicted_AB": 5.6248,
"predicted_AVG": 0.277,
"predicted_BB": 0.5236,
"predicted_H": 1.5306,
"predicted_HBP": 0.996,
"predicted_HR": 0.0578,
"predicted_OBP": 0.3918,
"predicted_R": 1.0954,
"predicted_RBI": 0.5517,
"predicted_SLG": 0.3942,
"predicted_SO": 1.0251
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.133,
"after": 0.2913,
"delta": 0.1583,
"percent_delta": 1.1902,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.057,
"after": 0.0662,
"delta": 0.0092,
"percent_delta": 0.1614,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.544,
"after": 5.6248,
"delta": 2.0808,
"percent_delta": 0.5871,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.277,
"delta": 0.01,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.5236,
"delta": 0.2266,
"percent_delta": 0.763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 1.5306,
"delta": 0.6806,
"percent_delta": 0.8007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0578,
"delta": -0.0022,
"percent_delta": -0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.377,
"after": 0.3918,
"delta": 0.0148,
"percent_delta": 0.0393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.658,
"after": 1.0954,
"delta": 0.4374,
"percent_delta": 0.6647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.5517,
"delta": 0.2117,
"percent_delta": 0.6226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.3942,
"delta": -0.0048,
"percent_delta": -0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 1.0251,
"delta": 0.3731,
"percent_delta": 0.5722,
"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.544,
"after": 5.6248,
"delta": 2.0808,
"percent_delta": 0.5871,
"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": 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.2913,
"predicted_3B": 0.0662,
"predicted_AB": 5.6248,
"predicted_AVG": 0.2622,
"predicted_BB": 0.5188,
"predicted_H": 1.475,
"predicted_HBP": 0.996,
"predicted_HR": 0.0552,
"predicted_OBP": 0.3245,
"predicted_R": 1.0283,
"predicted_RBI": 0.5179,
"predicted_SLG": 0.367,
"predicted_SO": 1.0344
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2913,
"after": 0.2913,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0662,
"after": 0.0662,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6248,
"after": 5.6248,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.277,
"after": 0.2622,
"delta": -0.0148,
"percent_delta": -0.0534,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5236,
"after": 0.5188,
"delta": -0.0048,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5306,
"after": 1.475,
"delta": -0.0556,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.996,
"after": 0.996,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0578,
"after": 0.0552,
"delta": -0.0026,
"percent_delta": -0.045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3918,
"after": 0.3245,
"delta": -0.0673,
"percent_delta": -0.1718,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0954,
"after": 1.0283,
"delta": -0.0671,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5517,
"after": 0.5179,
"delta": -0.0338,
"percent_delta": -0.0613,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3942,
"after": 0.367,
"delta": -0.0272,
"percent_delta": -0.069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0251,
"after": 1.0344,
"delta": 0.0093,
"percent_delta": 0.0091,
"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_OBP",
"before": 0.3918,
"after": 0.3245,
"delta": -0.0673,
"percent_delta": -0.1718,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.62), rates preserved: AVG=0.262 HR/AB=0.010",
"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.2913,
"after": 0.0,
"delta": -0.2913,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0662,
"after": 0.0,
"delta": -0.0662,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.6248,
"after": 6.0,
"delta": 0.3752,
"percent_delta": 0.0667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5188,
"after": 1.0,
"delta": 0.4812,
"percent_delta": 0.9275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.475,
"after": 2.0,
"delta": 0.525,
"percent_delta": 0.3559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.996,
"after": 0.0,
"delta": -0.996,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0552,
"after": 0.0,
"delta": -0.0552,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5179,
"after": 1.0,
"delta": 0.4821,
"percent_delta": 0.9309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0344,
"after": 1.0,
"delta": -0.0344,
"percent_delta": -0.0333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.475,
"after": 2.0,
"delta": 0.525,
"percent_delta": 0.3559,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.996,
"after": 0.0,
"delta": -0.996,
"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.0283,
"after": 1.0,
"delta": -0.0283,
"percent_delta": -0.0275,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.2622,
"after": 0.333,
"delta": 0.0708,
"percent_delta": 0.27,
"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.3245,
"after": 0.429,
"delta": 0.1045,
"percent_delta": 0.322,
"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.367,
"after": 0.333,
"delta": -0.034,
"percent_delta": -0.0926,
"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.3245,
"after": 0.429,
"delta": 0.1045,
"percent_delta": 0.322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.367,
"after": 0.333,
"delta": -0.034,
"percent_delta": -0.0926,
"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": 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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 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.2622,
"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.3245,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.367,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2622,
"delta": -0.0708,
"percent_delta": -0.2125,
"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.3245,
"delta": -0.1045,
"percent_delta": -0.2435,
"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.367,
"delta": 0.034,
"percent_delta": 0.1021,
"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.367,
"delta": 0.034,
"percent_delta": 0.1021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3245,
"delta": -0.1045,
"percent_delta": -0.2435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.133,
"after": 0.0,
"delta": -0.133,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.057,
"after": 0.0,
"delta": -0.057,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.544,
"after": 3.0,
"delta": -0.544,
"percent_delta": -0.1535,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2622,
"delta": -0.0048,
"percent_delta": -0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.297,
"after": 0.0,
"delta": -0.297,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.85,
"after": 0.0,
"delta": -0.85,
"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.377,
"after": 0.3245,
"delta": -0.0525,
"percent_delta": -0.1393,
"direction": "deboost",
"projection_effect": "worse",
"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.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.367,
"delta": -0.032,
"percent_delta": -0.0802,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 1.0,
"delta": 0.348,
"percent_delta": 0.5337,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 0,
"worse_metrics": 11,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.652,
"after": 1.0,
"delta": 0.348,
"percent_delta": 0.5337,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.85,
"after": 0.0,
"delta": -0.85,
"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.133 | - |
| predicted_3B | 0.057 | - |
| predicted_AB | 3.544 | - |
| predicted_AVG | 0.267 | - |
| predicted_BB | 0.297 | - |
| predicted_H | 0.850 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.377 | - |
| predicted_R | 0.658 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.399 | - |
| predicted_SO | 0.652 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.291 | 0.158 |
| predicted_3B | 0.066 | 0.009 |
| predicted_AB | 5.625 | 2.081 |
| predicted_AVG | 0.277 | 0.010 |
| predicted_BB | 0.524 | 0.227 |
| predicted_H | 1.531 | 0.681 |
| predicted_HBP | 0.996 | - |
| predicted_HR | 0.058 | -0.002 |
| predicted_OBP | 0.392 | 0.015 |
| predicted_R | 1.095 | 0.437 |
| predicted_RBI | 0.552 | 0.212 |
| predicted_SLG | 0.394 | -0.005 |
| predicted_SO | 1.025 | 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.291 | 0.000 |
| predicted_3B | 0.066 | 0.000 |
| predicted_AB | 5.625 | 0.000 |
| predicted_AVG | 0.262 | -0.015 |
| predicted_BB | 0.519 | -0.005 |
| predicted_H | 1.475 | -0.056 |
| predicted_HBP | 0.996 | 0.000 |
| predicted_HR | 0.055 | -0.003 |
| predicted_OBP | 0.325 | -0.067 |
| predicted_R | 1.028 | -0.067 |
| predicted_RBI | 0.518 | -0.034 |
| predicted_SLG | 0.367 | -0.027 |
| predicted_SO | 1.034 | 0.009 |
AB rounded to 6 (raw=5.62), rates preserved: AVG=0.262 HR/AB=0.010
| 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.291 |
| predicted_3B | 0.000 | -0.066 |
| predicted_AB | 6.000 | 0.375 |
| predicted_AVG | 0.333 | 0.071 |
| predicted_BB | 1.000 | 0.481 |
| predicted_H | 2.000 | 0.525 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.429 | 0.104 |
| predicted_R | 1.000 | -0.028 |
| predicted_RBI | 1.000 | 0.482 |
| predicted_SLG | 0.333 | -0.034 |
| predicted_SO | 1.000 | -0.034 |
Attached 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 | 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 | - | 18.000 | 7.000 | 2.000 | 0.000 | 0.000 | 2.000 | 5.000 | 3.000 | 3.000 | 0.3889 | 0.5600 | 0.5000 | 0.3889 | 0.0000 | 0.1111 | 0.1667 | 0.1667 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 3.000 | 0.000 | 0.000 | 2.000 | 7.000 | 3.000 | 7.000 | 0.2821 | 0.3913 | 0.3590 | 0.2821 | 0.0000 | 0.0513 | 0.0769 | 0.1795 |
| season | 0.60 | 48 | - | 560.000 | 147.000 | 21.000 | 9.000 | 5.000 | 61.000 | 104.000 | 47.000 | 103.000 | 0.2625 | 0.3748 | 0.3589 | 0.2625 | 0.0089 | 0.1089 | 0.0839 | 0.1839 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4950 |
| predicted_3B | 0.0780 |
| predicted_AB | 8.3010 |
| predicted_AVG | 0.2899 |
| predicted_BB | 0.8150 |
| predicted_H | 2.4060 |
| predicted_HBP | 0.9960 |
| predicted_HR | 0.0550 |
| predicted_OBP | 0.4108 |
| predicted_R | 1.6580 |
| predicted_RBI | 0.8240 |
| predicted_SLG | 0.3881 |
| predicted_SO | 1.5050 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1330 | 0.4950 | 0.2913 | model_form_blend |
| predicted_3B | 0.0570 | 0.0780 | 0.0662 | model_form_blend |
| predicted_AB | 3.5440 | 8.3010 | 5.6248 | model_form_blend |
| predicted_AVG | 0.2670 | 0.2899 | 0.2770 | model_form_blend |
| predicted_BB | 0.2970 | 0.8150 | 0.5236 | model_form_blend |
| predicted_H | 0.8500 | 2.4060 | 1.5306 | model_form_blend |
| predicted_HBP | - | 0.9960 | 0.9960 | form_only |
| predicted_HR | 0.0600 | 0.0550 | 0.0578 | model_form_blend |
| predicted_OBP | 0.3770 | 0.4108 | 0.3918 | model_form_blend |
| predicted_R | 0.6580 | 1.6580 | 1.0954 | model_form_blend |
| predicted_RBI | 0.3400 | 0.8240 | 0.5517 | model_form_blend |
| predicted_SLG | 0.3990 | 0.3881 | 0.3942 | model_form_blend |
| predicted_SO | 0.6520 | 1.5050 | 1.0251 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 159 |
| Season rows before report date | 159 |
| 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 | 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.262 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF-2B |
| gameID | 20260609_ATL@CHW |
| game_type | full |
| mlbID | 803011 |
| playerID | 803011 |
| playerName | Sam Antonacci |
| pos | SS |
| started | True |
| startingPosition | LF |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-09 |
| sl_k_percent | 14.8 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.35 |
| sl_xwoba | 0.374 |
| sl_xba | 0.306 |
| sl_xslg | 0.43 |
| sl_sweet_spot_percent | 41.0 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 36.0 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 11.5 |
| sl_whiff_percent | 16.3 |
| 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.145 | 0.000 | 0.000 | Hitting_2B | 0.144 | 0.000 | -0.144 | 0.000 |
| predicted_3B | 0.016 | 0.000 | 0.000 | Hitting_3B | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_AB | 3.740 | 3.000 | 6.000 | Hitting_AB | 3.696 | 4.000 | -0.696 | -1.000 |
| predicted_AVG | 0.243 | 0.000 | 0.167 | Hitting_AVG | 0.233 | 0.250 | -0.233 | -0.250 |
| predicted_BB | 0.699 | 0.000 | 1.000 | Hitting_BB | 0.700 | 0.000 | -0.700 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_H | 0.910 | 0.000 | 1.000 | Hitting_H | 0.860 | 1.000 | -0.860 | -1.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.236 | 0.000 | -0.236 | 0.000 |
| predicted_OBP | 0.351 | 0.000 | 0.286 | Hitting_OBP | 0.365 | 0.250 | -0.365 | -0.250 |
| predicted_R | 0.791 | 0.000 | 1.000 | Hitting_R | 0.788 | 0.000 | -0.788 | 0.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.612 | 0.000 | -0.612 | 0.000 |
| predicted_SLG | 0.460 | 0.000 | 0.167 | Hitting_SLG | 0.472 | 0.250 | -0.472 | -0.250 |
| predicted_SO | 0.767 | 2.000 | 1.000 | Hitting_SO | 0.764 | 0.000 | 1.236 | 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: 0.7670 -> 2.0000 (boost 1.2330, 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 | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.7400 -> 6.4866 (boost 2.7466, 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_R: 1.3086 -> 1.2284 (deboost -0.0802, 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_H: 1.5327 -> 1.0000 (deboost -0.5327, worse) | AB rounded to 6 (raw=6.49), rates preserved: AVG=0.236 HR/AB=0.056 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2284 -> 1.0000 (deboost -0.2284, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4438 -> 0.1670 (deboost -0.2768, 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 -> 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.4438 (boost 0.2768, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678246",
"player_name": "Miguel Vargas",
"position": "CF",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.145,
"predicted_3B": 0.016,
"predicted_AB": 3.74,
"predicted_AVG": 0.243,
"predicted_BB": 0.699,
"predicted_H": 0.91,
"predicted_HR": 0.19,
"predicted_OBP": 0.351,
"predicted_R": 0.791,
"predicted_RBI": 0.59,
"predicted_SLG": 0.46,
"predicted_SO": 0.767
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2087,
"predicted_3B": 0.0204,
"predicted_AB": 6.4866,
"predicted_AVG": 0.2444,
"predicted_BB": 1.2082,
"predicted_H": 1.5904,
"predicted_HBP": 0.141,
"predicted_HR": 0.3829,
"predicted_OBP": 0.3595,
"predicted_R": 1.3086,
"predicted_RBI": 1.0537,
"predicted_SLG": 0.4641,
"predicted_SO": 1.3099
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.145,
"after": 0.2087,
"delta": 0.0637,
"percent_delta": 0.4393,
"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": 3.74,
"after": 6.4866,
"delta": 2.7466,
"percent_delta": 0.7344,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2444,
"delta": 0.0014,
"percent_delta": 0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.699,
"after": 1.2082,
"delta": 0.5092,
"percent_delta": 0.7285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.5904,
"delta": 0.6804,
"percent_delta": 0.7477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.3829,
"delta": 0.1929,
"percent_delta": 1.0153,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3595,
"delta": 0.0085,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.791,
"after": 1.3086,
"delta": 0.5176,
"percent_delta": 0.6544,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 1.0537,
"delta": 0.4637,
"percent_delta": 0.7859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.46,
"after": 0.4641,
"delta": 0.0041,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.767,
"after": 1.3099,
"delta": 0.5429,
"percent_delta": 0.7078,
"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.74,
"after": 6.4866,
"delta": 2.7466,
"percent_delta": 0.7344,
"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.2087,
"predicted_3B": 0.0204,
"predicted_AB": 6.4866,
"predicted_AVG": 0.2363,
"predicted_BB": 1.1972,
"predicted_H": 1.5327,
"predicted_HBP": 0.141,
"predicted_HR": 0.3654,
"predicted_OBP": 0.3553,
"predicted_R": 1.2284,
"predicted_RBI": 0.9891,
"predicted_SLG": 0.4438,
"predicted_SO": 1.3218
},
"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.0204,
"after": 0.0204,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4866,
"after": 6.4866,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2444,
"after": 0.2363,
"delta": -0.0081,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2082,
"after": 1.1972,
"delta": -0.011,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5904,
"after": 1.5327,
"delta": -0.0577,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.141,
"after": 0.141,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3829,
"after": 0.3654,
"delta": -0.0175,
"percent_delta": -0.0457,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3595,
"after": 0.3553,
"delta": -0.0042,
"percent_delta": -0.0117,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.3086,
"after": 1.2284,
"delta": -0.0802,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0537,
"after": 0.9891,
"delta": -0.0646,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4641,
"after": 0.4438,
"delta": -0.0203,
"percent_delta": -0.0437,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3099,
"after": 1.3218,
"delta": 0.0119,
"percent_delta": 0.0091,
"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.3086,
"after": 1.2284,
"delta": -0.0802,
"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=6.49), rates preserved: AVG=0.236 HR/AB=0.056",
"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.2087,
"after": 0.0,
"delta": -0.2087,
"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": 6.4866,
"after": 6.0,
"delta": -0.4866,
"percent_delta": -0.075,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1972,
"after": 1.0,
"delta": -0.1972,
"percent_delta": -0.1647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5327,
"after": 1.0,
"delta": -0.5327,
"percent_delta": -0.3476,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.141,
"after": 0.0,
"delta": -0.141,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3654,
"after": 0.0,
"delta": -0.3654,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9891,
"after": 1.0,
"delta": 0.0109,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.3218,
"after": 1.0,
"delta": -0.3218,
"percent_delta": -0.2435,
"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_H",
"before": 1.5327,
"after": 1.0,
"delta": -0.5327,
"percent_delta": -0.3476,
"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": 1.2284,
"after": 1.0,
"delta": -0.2284,
"percent_delta": -0.1859,
"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.2284,
"after": 1.0,
"delta": -0.2284,
"percent_delta": -0.1859,
"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": 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.2363,
"after": 0.167,
"delta": -0.0693,
"percent_delta": -0.2933,
"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.3553,
"after": 0.286,
"delta": -0.0693,
"percent_delta": -0.195,
"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.4438,
"after": 0.167,
"delta": -0.2768,
"percent_delta": -0.6237,
"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.4438,
"after": 0.167,
"delta": -0.2768,
"percent_delta": -0.6237,
"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": 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": 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": 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.2363,
"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.3553,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4438,
"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.2363,
"delta": 0.0693,
"percent_delta": 0.4149,
"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.3553,
"delta": 0.0693,
"percent_delta": 0.2422,
"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.4438,
"delta": 0.2768,
"percent_delta": 1.6572,
"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.4438,
"delta": 0.2768,
"percent_delta": 1.6572,
"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.016,
"after": 0.0,
"delta": -0.016,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.74,
"after": 3.0,
"delta": -0.74,
"percent_delta": -0.1979,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2363,
"delta": -0.0067,
"percent_delta": -0.0276,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.699,
"after": 0.0,
"delta": -0.699,
"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.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.351,
"after": 0.3553,
"delta": 0.0043,
"percent_delta": 0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.791,
"after": 0.0,
"delta": -0.791,
"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.46,
"after": 0.4438,
"delta": -0.0162,
"percent_delta": -0.0352,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.767,
"after": 2.0,
"delta": 1.233,
"percent_delta": 1.6076,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.767,
"after": 2.0,
"delta": 1.233,
"percent_delta": 1.6076,
"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.145 | - |
| predicted_3B | 0.016 | - |
| predicted_AB | 3.740 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.699 | - |
| predicted_H | 0.910 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.351 | - |
| predicted_R | 0.791 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.460 | - |
| predicted_SO | 0.767 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.209 | 0.064 |
| predicted_3B | 0.020 | 0.004 |
| predicted_AB | 6.487 | 2.747 |
| predicted_AVG | 0.244 | 0.001 |
| predicted_BB | 1.208 | 0.509 |
| predicted_H | 1.590 | 0.680 |
| predicted_HBP | 0.141 | - |
| predicted_HR | 0.383 | 0.193 |
| predicted_OBP | 0.359 | 0.009 |
| predicted_R | 1.309 | 0.518 |
| predicted_RBI | 1.054 | 0.464 |
| predicted_SLG | 0.464 | 0.004 |
| predicted_SO | 1.310 | 0.543 |
Step 3: 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.020 | 0.000 |
| predicted_AB | 6.487 | 0.000 |
| predicted_AVG | 0.236 | -0.008 |
| predicted_BB | 1.197 | -0.011 |
| predicted_H | 1.533 | -0.058 |
| predicted_HBP | 0.141 | 0.000 |
| predicted_HR | 0.365 | -0.018 |
| predicted_OBP | 0.355 | -0.004 |
| predicted_R | 1.228 | -0.080 |
| predicted_RBI | 0.989 | -0.065 |
| predicted_SLG | 0.444 | -0.020 |
| predicted_SO | 1.322 | 0.012 |
AB rounded to 6 (raw=6.49), rates preserved: AVG=0.236 HR/AB=0.056
| 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.209 |
| predicted_3B | 0.000 | -0.020 |
| predicted_AB | 6.000 | -0.487 |
| predicted_AVG | 0.167 | -0.069 |
| predicted_BB | 1.000 | -0.197 |
| predicted_H | 1.000 | -0.533 |
| predicted_HR | 0.000 | -0.365 |
| predicted_OBP | 0.286 | -0.069 |
| predicted_R | 1.000 | -0.228 |
| predicted_RBI | 1.000 | 0.011 |
| predicted_SLG | 0.167 | -0.277 |
| predicted_SO | 1.000 | -0.322 |
Attached 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 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 20.000 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 4.000 | 4.000 | 0.2500 | 0.3750 | 0.4000 | 0.2500 | 0.0500 | 0.1000 | 0.2000 | 0.2000 |
| last_10 | 0.20 | 10 | - | 39.000 | 11.000 | 1.000 | 0.000 | 3.000 | 9.000 | 8.000 | 7.000 | 7.000 | 0.2821 | 0.3913 | 0.5385 | 0.2821 | 0.0769 | 0.2308 | 0.1795 | 0.1795 |
| season | 0.60 | 65 | - | 924.000 | 215.000 | 36.000 | 4.000 | 59.000 | 153.000 | 197.000 | 174.000 | 191.000 | 0.2327 | 0.3640 | 0.4719 | 0.2327 | 0.0639 | 0.1656 | 0.1883 | 0.2067 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2890 |
| predicted_3B | 0.0260 |
| predicted_AB | 9.9480 |
| predicted_AVG | 0.2462 |
| predicted_BB | 1.8500 |
| predicted_H | 2.4480 |
| predicted_HBP | 0.1410 |
| predicted_HR | 0.6260 |
| predicted_OBP | 0.3702 |
| predicted_R | 1.9610 |
| predicted_RBI | 1.6380 |
| predicted_SLG | 0.4692 |
| predicted_SO | 1.9940 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1450 | 0.2890 | 0.2087 | model_form_blend |
| predicted_3B | 0.0160 | 0.0260 | 0.0204 | model_form_blend |
| predicted_AB | 3.7400 | 9.9480 | 6.4866 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2462 | 0.2444 | model_form_blend |
| predicted_BB | 0.6990 | 1.8500 | 1.2082 | model_form_blend |
| predicted_H | 0.9100 | 2.4480 | 1.5904 | model_form_blend |
| predicted_HBP | - | 0.1410 | 0.1410 | form_only |
| predicted_HR | 0.1900 | 0.6260 | 0.3829 | model_form_blend |
| predicted_OBP | 0.3510 | 0.3702 | 0.3595 | model_form_blend |
| predicted_R | 0.7910 | 1.9610 | 1.3086 | model_form_blend |
| predicted_RBI | 0.5900 | 1.6380 | 1.0537 | model_form_blend |
| predicted_SLG | 0.4600 | 0.4692 | 0.4641 | model_form_blend |
| predicted_SO | 0.7670 | 1.9940 | 1.3099 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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.233 |
| 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.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 | 3B |
| gameID | 20260610_ATL@CHW |
| game_type | full |
| mlbID | 678246 |
| playerID | 678246 |
| playerName | Miguel Vargas |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-10 |
| sl_k_percent | 16.8 |
| sl_bb_percent | 15.1 |
| sl_woba | 0.377 |
| sl_xwoba | 0.394 |
| sl_xba | 0.262 |
| sl_xslg | 0.526 |
| sl_sweet_spot_percent | 40.6 |
| sl_barrel_batted_rate | 14.1 |
| sl_hard_hit_percent | 45.3 |
| sl_exit_velocity_avg | 89.8 |
| sl_launch_angle_avg | 19.6 |
| sl_whiff_percent | 20.5 |
| 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.204 | 0.000 | 0.000 | Hitting_2B | 0.204 | 0.000 | -0.204 | 0.000 |
| predicted_3B | 0.044 | 0.000 | 0.000 | Hitting_3B | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_AB | 3.691 | 3.000 | 6.000 | Hitting_AB | 3.691 | 5.000 | -0.691 | -2.000 |
| predicted_AVG | 0.248 | 0.000 | 0.167 | Hitting_AVG | 0.250 | 0.200 | -0.250 | -0.200 |
| predicted_BB | 0.249 | 0.000 | 1.000 | Hitting_BB | 0.249 | 0.000 | -0.249 | 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.923 | 1.000 | -0.923 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_OBP | 0.325 | 0.000 | 0.286 | Hitting_OBP | 0.292 | 0.200 | -0.292 | -0.200 |
| predicted_R | 0.464 | 0.000 | 1.000 | Hitting_R | 0.464 | 1.000 | -0.464 | -1.000 |
| predicted_RBI | 0.470 | 0.000 | 1.000 | Hitting_RBI | 0.586 | 0.000 | -0.586 | 0.000 |
| predicted_SLG | 0.426 | 0.000 | 0.167 | Hitting_SLG | 0.406 | 0.200 | -0.406 | -0.200 |
| predicted_SO | 1.077 | 0.000 | 2.000 | Hitting_SO | 1.077 | 0.000 | -1.077 | 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.0770 -> 0.0000 (deboost -1.0770, 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.6910 -> 5.5305 (boost 1.8395, 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_R: 0.9313 -> 0.8742 (deboost -0.0571, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 1.5000 -> 2.0000 (boost 0.5000, worse) | predicted_2B: 0.2518 -> 0.0000 (deboost -0.2518, worse) | AB rounded to 6 (raw=5.53), rates preserved: AVG=0.226 HR/AB=0.040 |
| 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 | 1 | 0 | 1 | 0 | predicted_R: 0.8742 -> 1.0000 (boost 0.1258, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4097 -> 0.1670 (deboost -0.2427, 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: 6.0000 -> 3.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.1670 -> 0.4097 (boost 0.2427, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "643217",
"player_name": "Andrew Benintendi",
"position": "RF",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.204,
"predicted_3B": 0.044,
"predicted_AB": 3.691,
"predicted_AVG": 0.248,
"predicted_BB": 0.249,
"predicted_H": 0.72,
"predicted_HR": 0.13,
"predicted_OBP": 0.325,
"predicted_R": 0.464,
"predicted_RBI": 0.47,
"predicted_SLG": 0.426,
"predicted_SO": 1.077
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2518,
"predicted_3B": 0.0493,
"predicted_AB": 5.5305,
"predicted_AVG": 0.2522,
"predicted_BB": 0.5826,
"predicted_H": 1.2952,
"predicted_HBP": 0.003,
"predicted_HR": 0.233,
"predicted_OBP": 0.3297,
"predicted_R": 0.9313,
"predicted_RBI": 0.8716,
"predicted_SLG": 0.4366,
"predicted_SO": 1.4865
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.204,
"after": 0.2518,
"delta": 0.0478,
"percent_delta": 0.2343,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.044,
"after": 0.0493,
"delta": 0.0053,
"percent_delta": 0.1205,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.691,
"after": 5.5305,
"delta": 1.8395,
"percent_delta": 0.4984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2522,
"delta": 0.0042,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.249,
"after": 0.5826,
"delta": 0.3336,
"percent_delta": 1.3398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 1.2952,
"delta": 0.5752,
"percent_delta": 0.7989,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.233,
"delta": 0.103,
"percent_delta": 0.7923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3297,
"delta": 0.0047,
"percent_delta": 0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.464,
"after": 0.9313,
"delta": 0.4673,
"percent_delta": 1.0071,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.8716,
"delta": 0.4016,
"percent_delta": 0.8545,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.426,
"after": 0.4366,
"delta": 0.0106,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.077,
"after": 1.4865,
"delta": 0.4095,
"percent_delta": 0.3802,
"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.691,
"after": 5.5305,
"delta": 1.8395,
"percent_delta": 0.4984,
"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.2518,
"predicted_3B": 0.0493,
"predicted_AB": 5.5305,
"predicted_AVG": 0.2257,
"predicted_BB": 0.5773,
"predicted_H": 1.2482,
"predicted_HBP": 0.003,
"predicted_HR": 0.2224,
"predicted_OBP": 0.2989,
"predicted_R": 0.8742,
"predicted_RBI": 0.8182,
"predicted_SLG": 0.4097,
"predicted_SO": 1.5
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2518,
"after": 0.2518,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0493,
"after": 0.0493,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.5305,
"after": 5.5305,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2522,
"after": 0.2257,
"delta": -0.0265,
"percent_delta": -0.1051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5826,
"after": 0.5773,
"delta": -0.0053,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2952,
"after": 1.2482,
"delta": -0.047,
"percent_delta": -0.0363,
"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.233,
"after": 0.2224,
"delta": -0.0106,
"percent_delta": -0.0455,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3297,
"after": 0.2989,
"delta": -0.0308,
"percent_delta": -0.0934,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9313,
"after": 0.8742,
"delta": -0.0571,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8716,
"after": 0.8182,
"delta": -0.0534,
"percent_delta": -0.0613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4366,
"after": 0.4097,
"delta": -0.0269,
"percent_delta": -0.0616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4865,
"after": 1.5,
"delta": 0.0135,
"percent_delta": 0.0091,
"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": 0.9313,
"after": 0.8742,
"delta": -0.0571,
"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.53), rates preserved: AVG=0.226 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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2518,
"after": 0.0,
"delta": -0.2518,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0493,
"after": 0.0,
"delta": -0.0493,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.5305,
"after": 6.0,
"delta": 0.4695,
"percent_delta": 0.0849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5773,
"after": 1.0,
"delta": 0.4227,
"percent_delta": 0.7322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2482,
"after": 1.0,
"delta": -0.2482,
"percent_delta": -0.1988,
"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.2224,
"after": 0.0,
"delta": -0.2224,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8182,
"after": 1.0,
"delta": 0.1818,
"percent_delta": 0.2222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5,
"after": 2.0,
"delta": 0.5,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.5,
"after": 2.0,
"delta": 0.5,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2518,
"after": 0.0,
"delta": -0.2518,
"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": 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.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": 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.8742,
"after": 1.0,
"delta": 0.1258,
"percent_delta": 0.1439,
"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.8742,
"after": 1.0,
"delta": 0.1258,
"percent_delta": 0.1439,
"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.2257,
"after": 0.167,
"delta": -0.0587,
"percent_delta": -0.2601,
"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.2989,
"after": 0.286,
"delta": -0.0129,
"percent_delta": -0.0432,
"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.4097,
"after": 0.167,
"delta": -0.2427,
"percent_delta": -0.5924,
"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.4097,
"after": 0.167,
"delta": -0.2427,
"percent_delta": -0.5924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 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.2257,
"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.2989,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4097,
"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.2257,
"delta": 0.0587,
"percent_delta": 0.3514,
"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.2989,
"delta": 0.0129,
"percent_delta": 0.045,
"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.4097,
"delta": 0.2427,
"percent_delta": 1.4531,
"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.4097,
"delta": 0.2427,
"percent_delta": 1.4531,
"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.204,
"after": 0.0,
"delta": -0.204,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.044,
"after": 0.0,
"delta": -0.044,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.691,
"after": 3.0,
"delta": -0.691,
"percent_delta": -0.1872,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2257,
"delta": -0.0223,
"percent_delta": -0.0899,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.249,
"after": 0.0,
"delta": -0.249,
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.2989,
"delta": -0.0261,
"percent_delta": -0.0803,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.464,
"after": 0.0,
"delta": -0.464,
"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.426,
"after": 0.4097,
"delta": -0.0163,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.077,
"after": 0.0,
"delta": -1.077,
"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.077,
"after": 0.0,
"delta": -1.077,
"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.204 | - |
| predicted_3B | 0.044 | - |
| predicted_AB | 3.691 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.249 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.464 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.426 | - |
| predicted_SO | 1.077 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.252 | 0.048 |
| predicted_3B | 0.049 | 0.005 |
| predicted_AB | 5.530 | 1.840 |
| predicted_AVG | 0.252 | 0.004 |
| predicted_BB | 0.583 | 0.334 |
| predicted_H | 1.295 | 0.575 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.233 | 0.103 |
| predicted_OBP | 0.330 | 0.005 |
| predicted_R | 0.931 | 0.467 |
| predicted_RBI | 0.872 | 0.402 |
| predicted_SLG | 0.437 | 0.011 |
| predicted_SO | 1.486 | 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.252 | 0.000 |
| predicted_3B | 0.049 | 0.000 |
| predicted_AB | 5.530 | 0.000 |
| predicted_AVG | 0.226 | -0.026 |
| predicted_BB | 0.577 | -0.005 |
| predicted_H | 1.248 | -0.047 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.222 | -0.011 |
| predicted_OBP | 0.299 | -0.031 |
| predicted_R | 0.874 | -0.057 |
| predicted_RBI | 0.818 | -0.053 |
| predicted_SLG | 0.410 | -0.027 |
| predicted_SO | 1.500 | 0.014 |
AB rounded to 6 (raw=5.53), rates preserved: AVG=0.226 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 | 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 | 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.252 |
| predicted_3B | 0.000 | -0.049 |
| predicted_AB | 6.000 | 0.470 |
| predicted_AVG | 0.167 | -0.059 |
| predicted_BB | 1.000 | 0.423 |
| predicted_H | 1.000 | -0.248 |
| predicted_HR | 0.000 | -0.222 |
| predicted_OBP | 0.286 | -0.013 |
| predicted_R | 1.000 | 0.126 |
| predicted_RBI | 1.000 | 0.182 |
| predicted_SLG | 0.167 | -0.243 |
| predicted_SO | 2.000 | 0.500 |
Attached 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 | -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 | 4.000 | 0.000 | 0.000 | 1.000 | 3.000 | 5.000 | 4.000 | 2.000 | 0.2667 | 0.4211 | 0.4667 | 0.2667 | 0.0667 | 0.2000 | 0.2667 | 0.1333 |
| last_10 | 0.20 | 10 | - | 33.000 | 9.000 | 1.000 | 0.000 | 3.000 | 7.000 | 9.000 | 6.000 | 9.000 | 0.2727 | 0.3846 | 0.5758 | 0.2727 | 0.0909 | 0.2121 | 0.1818 | 0.2727 |
| season | 0.60 | 59 | - | 668.000 | 167.000 | 37.000 | 8.000 | 17.000 | 106.000 | 84.000 | 45.000 | 195.000 | 0.2500 | 0.2924 | 0.4057 | 0.2500 | 0.0255 | 0.1587 | 0.0674 | 0.2919 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3130 |
| predicted_3B | 0.0560 |
| predicted_AB | 7.8870 |
| predicted_AVG | 0.2576 |
| predicted_BB | 1.0100 |
| predicted_H | 2.0320 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3650 |
| predicted_OBP | 0.3357 |
| predicted_R | 1.5300 |
| predicted_RBI | 1.3860 |
| predicted_SLG | 0.4502 |
| predicted_SO | 2.0110 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2040 | 0.3130 | 0.2518 | model_form_blend |
| predicted_3B | 0.0440 | 0.0560 | 0.0493 | model_form_blend |
| predicted_AB | 3.6910 | 7.8870 | 5.5305 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2576 | 0.2522 | model_form_blend |
| predicted_BB | 0.2490 | 1.0100 | 0.5826 | model_form_blend |
| predicted_H | 0.7200 | 2.0320 | 1.2952 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1300 | 0.3650 | 0.2330 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3357 | 0.3297 | model_form_blend |
| predicted_R | 0.4640 | 1.5300 | 0.9313 | model_form_blend |
| predicted_RBI | 0.4700 | 1.3860 | 0.8716 | model_form_blend |
| predicted_SLG | 0.4260 | 0.4502 | 0.4366 | model_form_blend |
| predicted_SO | 1.0770 | 2.0110 | 1.4865 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 181 |
| Season rows before report date | 181 |
| Report year | 2026 |
| Profile rows used | 181 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 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 | DH |
| gameID | 20260609_ATL@CHW |
| game_type | full |
| mlbID | 643217 |
| playerID | 643217 |
| playerName | Andrew Benintendi |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | CHW |
| teamID | 6 |
| game_date | 2026-06-09 |
| sl_k_percent | 27.7 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.302 |
| sl_xwoba | 0.327 |
| sl_xba | 0.252 |
| sl_xslg | 0.443 |
| sl_sweet_spot_percent | 39.4 |
| sl_barrel_batted_rate | 11.0 |
| sl_hard_hit_percent | 47.4 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 18.0 |
| sl_whiff_percent | 29.6 |
| sl_swing_percent | 52.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 2.000 | 1.000 | 1.000 | 2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.000 | 1.000 | -1.000 | 0.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 4.667 | 6.000 | 1.333 | 0.000 |
| predicted_IP | 6.100 | 6.100 | 6.100 | Pitching_InningsPitched | 4.583 | 5.000 | 1.517 | 1.100 |
| predicted_SO | 8.000 | 8.000 | 8.000 | Pitching_SO | 3.500 | 3.000 | 4.500 | 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: 6.0000 -> 8.0000 (boost 2.0000, better) |
| Biggest Deboost | predicted_IP: 7.3333 -> 6.1000 (deboost -1.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 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 7.3333 -> 6.1000 (deboost -1.2333, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_SO: 6.0000 -> 8.0000 (boost 2.0000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "641743",
"player_name": "Anthony Kay",
"position": "Starter",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.0,
"predicted_H": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 7.3333,
"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": 3.0,
"predicted_ER": 1.0,
"predicted_H": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 6.1,
"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": 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": 7.3333,
"after": 6.1,
"delta": -1.2333,
"percent_delta": -0.1682,
"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": 7.3333,
"after": 6.1,
"delta": -1.2333,
"percent_delta": -0.1682,
"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": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 6.1,
"predicted_R": 1.0,
"predicted_SO": 8.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": 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.1,
"after": 6.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 8.0,
"delta": 2.0,
"percent_delta": 0.3333,
"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": 6.0,
"after": 8.0,
"delta": 2.0,
"percent_delta": 0.3333,
"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": 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": 7.3333,
"after": 6.1,
"delta": -1.2333,
"percent_delta": -0.1682,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 8.0,
"delta": 2.0,
"percent_delta": 0.3333,
"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": 6.0,
"after": 8.0,
"delta": 2.0,
"percent_delta": 0.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_IP",
"before": 7.3333,
"after": 6.1,
"delta": -1.2333,
"percent_delta": -0.1682,
"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 | 6.000 | - |
| predicted_HR | 2.000 | - |
| predicted_IP | 7.333 | - |
| 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 | 3.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 6.000 | 0.000 |
| predicted_HR | 2.000 | 0.000 |
| predicted_IP | 6.100 | -1.233 |
| 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 | 27.100 | 5.000 | 21.000 | 9.000 | 22.000 | 2.000 | 1.6463 | 1.0976 | 0.1829 | 0.7683 | 0.3293 | 0.8049 | 0.0732 |
| last_10 | 0.35 | 10 | 48.100 | 20.000 | 50.000 | 18.000 | 37.000 | 6.000 | 3.7241 | 1.4069 | 0.4138 | 1.0345 | 0.3724 | 0.7655 | 0.1241 |
| season | 0.20 | 12 | 57.100 | 24.000 | 56.000 | 24.000 | 42.000 | 8.000 | 3.7674 | 1.3953 | 0.4186 | 0.9767 | 0.4186 | 0.7326 | 0.1395 |
| Metric | Value |
|---|---|
| predicted_BB | 2.0560 |
| predicted_ER | 2.0520 |
| predicted_ERA | 3.2614 |
| predicted_H | 5.2090 |
| predicted_HR | 0.6510 |
| predicted_IP | 5.2000 |
| predicted_SO | 4.6630 |
| predicted_WHIP | 1.2829 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 2.0560 | 2.5037 | model_form_blend |
| predicted_ER | 1.0000 | 2.0520 | 1.5531 | model_form_blend |
| predicted_ERA | - | 3.2614 | 3.2614 | form_only |
| predicted_H | 6.0000 | 5.2090 | 5.5841 | model_form_blend |
| predicted_HR | 2.0000 | 0.6510 | 1.2908 | model_form_blend |
| predicted_IP | 7.1000 | 5.2000 | 6.1000 | model_form_blend |
| predicted_SO | 6.0000 | 4.6630 | 5.2971 | model_form_blend |
| predicted_WHIP | - | 1.2829 | 1.2829 | 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.1 |
| H | 6 |
| R | 1 |
| ER | 1 |
| BB | 3 |
| SO | 8 |
| HR | 2 |
| BF | 28 |
| 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 | 22 |
| Pitching_ER | 1 |
| Pitching_ERA | 3.77 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 9 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 84 |
| Pitching_R | 1 |
| Pitching_SO | 3 |
| Pitching_Strikes | 54 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260530_DET@CHW |
| game_type | full |
| mlbID | 641743 |
| playerID | 641743 |
| playerName | Anthony Kay |
| pos | P |
| started | True |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-05-30 |
| sl_k_percent | 16.5 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.355 |
| sl_xwoba | 0.372 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 41.6 |
| sl_whiff_percent | 20.2 |
| sl_swing_percent | 45.3 |
| sl_avg_best_speed | 78.014195313 |
| sl_avg_hyper_speed | 94.839667813 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.000 | 2.000 | -1.000 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.017 | 1.100 | -0.017 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.333 | 1.000 | -1.333 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "691799",
"player_name": "Grant Taylor",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 4.000 | 1.000 | 7.000 | 0.000 | 0.0000 | 0.9375 | 0.0000 | 0.7500 | 0.1875 | 1.3125 | 0.0000 |
| last_10 | 0.35 | 6 | 6.100 | 1.000 | 6.000 | 2.000 | 8.000 | 0.000 | 1.4211 | 1.2632 | 0.1579 | 0.9474 | 0.3158 | 1.2632 | 0.0000 |
| season | 0.20 | 6 | 6.100 | 1.000 | 6.000 | 2.000 | 8.000 | 0.000 | 1.4211 | 1.2632 | 0.1579 | 0.9474 | 0.3158 | 1.2632 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3330 |
| predicted_ER | 0.3930 |
| predicted_ERA | 3.5374 |
| predicted_H | 0.9230 |
| predicted_HR | 0.1130 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0100 |
| predicted_WHIP | 1.2561 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3330 | 0.1039 | model_form_blend |
| predicted_ER | 0.0000 | 0.3930 | 0.1226 | model_form_blend |
| predicted_ERA | - | 3.5374 | 3.5374 | form_only |
| predicted_H | 0.0000 | 0.9230 | 0.2880 | model_form_blend |
| predicted_HR | 0.0000 | 0.1130 | 0.0353 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0100 | 0.3152 | model_form_blend |
| predicted_WHIP | - | 1.2561 | 1.2561 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 6 |
| Season rows before report date | 6 |
| Report year | 2026 |
| Profile rows used | 6 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.42 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 22 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 17 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260409_CHW@KC |
| game_type | full |
| mlbID | 691799 |
| playerID | 691799 |
| playerName | Grant Taylor |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-04-09 |
| game_pk | 824130.0 |
| sl_k_percent | 36.4 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.245 |
| sl_xwoba | 0.228 |
| sl_sweet_spot_percent | 30.0 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 38.8 |
| sl_whiff_percent | 30.3 |
| sl_swing_percent | 50.7 |
| sv_pitch_count | 22.0 |
| sv_outs_recorded_est | 4.0 |
| sv_release_speed | 94.2909090909091 |
| sv_release_spin_rate | 2537.5454545454545 |
| sv_effective_speed | 95.62272727272726 |
| sv_launch_speed | 84.075 |
| sv_launch_angle | 12.625 |
| sv_woba_value | 1.8 |
| sv_woba_denom | 6.0 |
| sv_delta_run_exp | -0.404 |
| sv_delta_home_win_exp | -0.161 |
| sl_avg_best_speed | 79.615002 |
| sl_avg_hyper_speed | 93.67298481 |
| 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.417 | 0.000 | 0.583 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.875 | 0.000 | -0.875 | 0.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.871 | 1.000 | -0.671 | -0.800 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.958 | 1.000 | 0.042 | 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": "663542",
"player_name": "Bryan Hudson",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 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": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.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 | 5.000 | 2.000 | 5.000 | 1.000 | 2.000 | 0.000 | 3.6000 | 1.2000 | 0.4000 | 1.0000 | 0.2000 | 0.4000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 2.000 | 10.000 | 2.000 | 7.000 | 0.000 | 1.8000 | 1.2000 | 0.2000 | 1.0000 | 0.2000 | 0.7000 | 0.0000 |
| season | 0.20 | 24 | 23.000 | 4.000 | 21.000 | 10.000 | 23.000 | 0.000 | 1.5652 | 1.3478 | 0.1739 | 0.9130 | 0.4348 | 1.0000 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2550 |
| predicted_ER | 0.3220 |
| predicted_ERA | 3.5120 |
| predicted_H | 0.8010 |
| predicted_HR | 0.0610 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6500 |
| predicted_WHIP | 1.2795 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2550 | 0.6807 | model_form_blend |
| predicted_ER | 0.0000 | 0.3220 | 0.1380 | model_form_blend |
| predicted_ERA | - | 3.5120 | 3.5120 | form_only |
| predicted_H | 0.0000 | 0.8010 | 0.3434 | model_form_blend |
| predicted_HR | 0.0000 | 0.0610 | 0.0261 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6500 | 0.8500 | model_form_blend |
| predicted_WHIP | - | 1.2795 | 1.2795 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 24 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 15 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.57 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 11 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260519_CHW@SEA |
| game_type | full |
| mlbID | 663542 |
| playerID | 663542 |
| playerName | Bryan Hudson |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-05-19 |
| game_pk | 823136.0 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 10.5 |
| sl_woba | 0.283 |
| sl_xwoba | 0.289 |
| sl_sweet_spot_percent | 30.7 |
| sl_barrel_batted_rate | 1.1 |
| sl_hard_hit_percent | 33.0 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 45.5 |
| sv_pitch_count | 11.0 |
| sv_outs_recorded_est | 3.0 |
| sv_release_speed | 89.7090909090909 |
| sv_release_spin_rate | 2132.5454545454545 |
| sv_effective_speed | 91.4090909090909 |
| sv_launch_speed | 87.175 |
| sv_launch_angle | 6.75 |
| sv_woba_value | 0.0 |
| sv_woba_denom | 3.0 |
| sv_delta_run_exp | -0.774 |
| sv_delta_home_win_exp | -0.032 |
| sl_avg_best_speed | 77.41172881 |
| sl_avg_hyper_speed | 92.948410602 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.000 | 1.000 | 1.000 | 1.000 |
| predicted_ER | 4.000 | 4.000 | 4.000 | Pitching_ER | 2.000 | 2.000 | 2.000 | 2.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 3.000 | 3.000 | 1.000 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 2.100 | 2.100 | -1.100 | -1.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 1.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 1 | 0 | 1 | 0 | predicted_IP: 0.1000 -> 1.0000 (boost 0.9000, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656794",
"player_name": "Sean Newcomb",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 4.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 4.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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 1.0,
"delta": 0.9,
"percent_delta": 9.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null,
"has_material_change": true,
"dominant_effect": "better"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 4.000 | - |
| predicted_H | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 1 | 2.100 | 2.000 | 3.000 | 1.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.2857 | 0.4286 | 0.4286 | 0.0000 |
| last_10 | 0.35 | 1 | 2.100 | 2.000 | 3.000 | 1.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.2857 | 0.4286 | 0.4286 | 0.0000 |
| season | 0.20 | 1 | 2.100 | 2.000 | 3.000 | 1.000 | 1.000 | 0.000 | 7.7143 | 1.7143 | 0.8571 | 1.2857 | 0.4286 | 0.4286 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1860 |
| predicted_ER | 0.2600 |
| predicted_ERA | 4.6563 |
| predicted_H | 0.4960 |
| predicted_HR | 0.0650 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.4480 |
| predicted_WHIP | 1.3577 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.1860 | 1.5226 | model_form_blend |
| predicted_ER | 4.0000 | 0.2600 | 3.0158 | model_form_blend |
| predicted_ERA | - | 4.6563 | 4.6563 | form_only |
| predicted_H | 4.0000 | 0.4960 | 3.0779 | model_form_blend |
| predicted_HR | 0.0000 | 0.0650 | 0.0171 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.4480 | 0.1179 | model_form_blend |
| predicted_WHIP | - | 1.3577 | 1.3577 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| Report year | 2026 |
| Profile rows used | 1 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 4 |
| R | 4 |
| ER | 4 |
| BB | 2 |
| SO | 0 |
| HR | 0 |
| BF | 9 |
| Pitches | 29 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 10 |
| Pitching_ER | 2 |
| Pitching_ERA | 7.71 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 5 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.1 |
| Pitching_Pitches | 33 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 26 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260326_CHW@MIL |
| game_type | full |
| mlbID | 656794 |
| playerID | 656794 |
| playerName | Sean Newcomb |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-03-26 |
| game_pk | 823812.0 |
| sl_k_percent | 22.9 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.273 |
| sl_xwoba | 0.29 |
| sl_sweet_spot_percent | 32.1 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 35.8 |
| sl_whiff_percent | 24.7 |
| sl_swing_percent | 46.1 |
| sv_pitch_count | 37.0 |
| sv_outs_recorded_est | 6.0 |
| sv_release_speed | 90.8030303030303 |
| sv_release_spin_rate | 2396.818181818182 |
| sv_effective_speed | 89.39393939393939 |
| sv_launch_speed | 79.68571428571428 |
| sv_launch_angle | 4.428571428571429 |
| sv_woba_value | 3.3 |
| sv_woba_denom | 8.0 |
| sv_delta_run_exp | 0.0589999999999999 |
| sv_delta_home_win_exp | 0.0319999999999999 |
| sl_avg_best_speed | 74.340006604 |
| sl_avg_hyper_speed | 93.370515905 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.000 | 2.000 | 0.000 | -1.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.500 | 2.000 | -0.500 | -1.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 0.550 | 0.100 | -0.550 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.000 | 0.000 | 0.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 2 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 2 |
| Better Metrics | 0 |
| Worse Metrics | 2 |
| Biggest Boost | - |
| Biggest Deboost | predicted_SO: 2.0000 -> 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 | 2 | 0 | 2 | 0 | 2 | - | 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": "622554",
"player_name": "Seranthony Domínguez",
"position": "Middle Reliever",
"team": "CHW",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.0,
"predicted_R": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"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 | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| 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 | 2 | 1.100 | 2.000 | 3.000 | 1.000 | 0.000 | 1.000 | 13.5000 | 3.0000 | 1.5000 | 2.2500 | 0.7500 | 0.0000 | 0.7500 |
| last_10 | 0.35 | 2 | 1.100 | 2.000 | 3.000 | 1.000 | 0.000 | 1.000 | 13.5000 | 3.0000 | 1.5000 | 2.2500 | 0.7500 | 0.0000 | 0.7500 |
| season | 0.20 | 2 | 1.100 | 2.000 | 3.000 | 1.000 | 0.000 | 1.000 | 13.5000 | 3.0000 | 1.5000 | 2.2500 | 0.7500 | 0.0000 | 0.7500 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1340 |
| predicted_ER | 0.1880 |
| predicted_ERA | 4.8307 |
| predicted_H | 0.3590 |
| predicted_HR | 0.0600 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.3110 |
| predicted_WHIP | 1.4086 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1340 | 0.0333 | model_form_blend |
| predicted_ER | 1.0000 | 0.1880 | 0.7981 | model_form_blend |
| predicted_ERA | - | 4.8307 | 4.8307 | form_only |
| predicted_H | 1.0000 | 0.3590 | 0.8406 | model_form_blend |
| predicted_HR | 0.0000 | 0.0600 | 0.0149 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 2.0000 | 0.3110 | 1.5801 | model_form_blend |
| predicted_WHIP | - | 1.4086 | 1.4086 | 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 | 1 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 1 |
| 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 | 4 |
| Pitching_ER | 2 |
| Pitching_ERA | 13.50 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 3 |
| Pitching_Inherited Runners Scored | 3 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 19 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L, BS |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260329_CHW@MIL |
| game_type | full |
| mlbID | 622554 |
| playerID | 622554 |
| playerName | Seranthony Domínguez |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHW |
| teamID | 6 |
| game_date | 2026-03-29 |
| game_pk | 823810.0 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 12.4 |
| sl_woba | 0.288 |
| sl_xwoba | 0.344 |
| sl_sweet_spot_percent | 37.7 |
| sl_barrel_batted_rate | 10.0 |
| sl_hard_hit_percent | 36.1 |
| sl_whiff_percent | 27.5 |
| sl_swing_percent | 42.3 |
| sv_pitch_count | 19.0 |
| sv_outs_recorded_est | 1.0 |
| sv_release_speed | 92.93157894736842 |
| sv_release_spin_rate | 2148.157894736842 |
| sv_effective_speed | 92.93157894736842 |
| sv_launch_speed | 82.55 |
| sv_launch_angle | 24.166666666666668 |
| sv_woba_value | 3.6 |
| sv_woba_denom | 4.0 |
| sv_delta_run_exp | 2.256 |
| sv_delta_home_win_exp | 0.681 |
| sl_avg_best_speed | 80.326552333 |
| sl_avg_hyper_speed | 94.356490333 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | CHC 5 - 3 COL | CHC | 0.570 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | CHC 6 - 4 COL | CHC | - | 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.7000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5703 |
| 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.338 | 4.066 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 5 | 3 | 0.5703 | 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 | 6 | 4 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.46081292639138244,
"base_low_score_probability": 0.41831238779174146,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.04250053859964098,
"confidence": 0.6508,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.0,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.1016000000000001
},
"prediction": "normal_scoring",
"expected_total_runs": 8,
"pre_simulation_expected_total_runs": 9.7,
"low_score_model_expected_total_runs": 9.7,
"final_simulation_total_runs": 10,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 32,
"near_bucket_sample_size": 32,
"medium_bucket_sample_size": 109,
"wide_bucket_sample_size": 174,
"global_sample_size": 174,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5625,
"bayesian_hit_rate": 0.54,
"sample_weight": 0.544,
"prior_strength": 18.0,
"reliability": 0.64,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6236,
"calibrated_pick_probability": 0.5703,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "COL",
"games": 67,
"wins": 25,
"losses": 42,
"win_pct": 0.373134328358209,
"runs_scored": 291,
"runs_allowed": 386,
"run_differential": -95,
"run_differential_per_game": -1.4179104477611941,
"available": true
},
"away": {
"team": "CHC",
"games": 67,
"wins": 34,
"losses": 33,
"win_pct": 0.5074626865671642,
"runs_scored": 306,
"runs_allowed": 307,
"run_differential": -1,
"run_differential_per_game": -0.014925373134328358,
"available": true
},
"run_differential_edge_per_game": -1.403,
"win_pct_edge": -0.1343,
"quality_edge": -1.6045,
"margin_adjustment": -0.6739,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 4.768,
"home_runs": 3.314,
"home_win_probability": 0.3764
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "CHC",
"guardrail_predicted_team": "CHC",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "CHC",
"output_opponent_team": "COL",
"final_score_winner": "CHC",
"pre_simulation_winner": "CHC",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "CHC 5 - 3 COL",
"winner": "CHC"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 4,
"score_text": "CHC 6 - 4 COL",
"winner": "CHC"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 1,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "COL",
"games": 67,
"wins": 25,
"losses": 42,
"win_pct": 0.373134328358209,
"runs_scored": 291,
"runs_allowed": 386,
"run_differential": -95,
"run_differential_per_game": -1.4179104477611941,
"available": true
},
"away": {
"team": "CHC",
"games": 67,
"wins": 34,
"losses": 33,
"win_pct": 0.5074626865671642,
"runs_scored": 306,
"runs_allowed": 307,
"run_differential": -1,
"run_differential_per_game": -0.014925373134328358,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.4538,
"final_margin": -1.4538,
"margin_cap": 4.25,
"season_quality_edge": 1.6045,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.570298,
"final_confidence": 0.570298,
"confidence_cap": 0.64,
"score_gap": 1.4538,
"calibration_sample_size": 32,
"calibration_empirical_hit_rate": 0.5625,
"calibration_bayesian_hit_rate": 0.54,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.6045,
"reasons": [
"unvalidated probabilities are capped for production display",
"projected score gap is moderate",
"local calibration sample has at least 30 games",
"season run-differential edge supports the pick",
"win-probability calibration cap enforced"
]
}{
"pre_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "CHC 5 - 3 COL",
"winner": "CHC"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 4,
"score_text": "CHC 6 - 4 COL",
"winner": "CHC"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 1,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 5,
"home_runs": 3,
"confidence": 0.570298,
"home_win_probability": 0.42970200000000003,
"away_win_probability": 0.570298,
"predicted_score_text": "CHC 5 - 3 COL",
"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": "CHC",
"original_runs": 5,
"run_delta": 0.305,
"adjusted_runs": 5,
"lineup": {
"players_used": 9,
"total_weight": 57.0,
"quality": 0.16961775143909322,
"contact": 0.16133987082918924,
"power": 0.16922851108362488,
"discipline": 0.30746636690235835,
"xwoba": 0.3277368421052631,
"recent_xwoba": 0.3277368421052631,
"barrel": 8.447368421052632,
"ab_hard_contact": 0.17666044723639696,
"ab_bat_speed": 69.45829093386929,
"ab_strikeout_rate": 0.2129571919948846,
"available_players": 9,
"top_players": [
{
"player_id": "691718",
"player_name": "Pete Crow-Armstrong",
"position": "CF",
"weight": 7.0,
"quality": 0.670518252848864,
"contact": 0.6818328141092044,
"power": 1.0347841121544676,
"discipline": -0.3129758487126908,
"xwoba": 0.353,
"recent_xwoba": 0.353,
"barrel": 11.6,
"ab_hard_contact": 0.4733965288036364,
"ab_bat_speed": 71.59198015873015,
"ab_strikeout_rate": 0.25212121212121213,
"available": 1.0
},
{
"player_id": "664023",
"player_name": "Ian Happ",
"position": "LF",
"weight": 7.0,
"quality": 0.43725420930097847,
"contact": 0.06754406145096965,
"power": 1.0959580654492367,
"discipline": 0.03858047078480491,
"xwoba": 0.342,
"recent_xwoba": 0.342,
"barrel": 15.4,
"ab_hard_contact": 0.5930660708894882,
"ab_bat_speed": 70.72080156136528,
"ab_strikeout_rate": 0.3169934640522876,
"available": 1.0
},
{
"player_id": "683737",
"player_name": "Michael Busch",
"position": "1B",
"weight": 7.0,
"quality": 0.3148785591258399,
"contact": 0.2265981036233948,
"power": 0.3622624628390756,
"discipline": 0.6504178501810082,
"xwoba": 0.346,
"recent_xwoba": 0.346,
"barrel": 11.300000000000002,
"ab_hard_contact": 0.13324925678147984,
"ab_bat_speed": 65.7454809670782,
"ab_strikeout_rate": 0.22037037037037038,
"available": 1.0
},
{
"player_id": "621020",
"player_name": "Dansby Swanson",
"position": "SS",
"weight": 6.0,
"quality": -0.2621690068147328,
"contact": -0.5775224094006187,
"power": -0.22881876863699688,
"discipline": 0.21389719491035272,
"xwoba": 0.29,
"recent_xwoba": 0.29,
"barrel": 7.1,
"ab_hard_contact": 0.2659103415457569,
"ab_bat_speed": 69.60817612942613,
"ab_strikeout_rate": 0.21939102564102564,
"available": 1.0
},
{
"player_id": "663538",
"player_name": "Nico Hoerner",
"position": "2B",
"weight": 7.0,
"quality": 0.02353021189266348,
"contact": 0.4431314165275682,
"power": -0.8539452109474327,
"discipline": 1.1496776973297442,
"xwoba": 0.336,
"recent_xwoba": 0.336,
"barrel": 1.2,
"ab_hard_contact": -0.5825232665677164,
"ab_bat_speed": 67.76582128159906,
"ab_strikeout_rate": 0.08353909465020576,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "663372",
"player_name": "Ryan Feltner",
"quality": -0.22529917858637452,
"contact": -0.8715189897775398,
"command": -0.3512383247496029,
"movement": -0.15216683308855866,
"xwoba": 0.367,
"whiff": 24.3,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "COL",
"original_runs": 3,
"run_delta": -0.068,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 48.0,
"quality": -0.0417387468944099,
"contact": -0.2999148781882096,
"power": -0.2914675315178103,
"discipline": -0.14396890677675175,
"xwoba": 0.2975416666666667,
"recent_xwoba": 0.2975416666666667,
"barrel": 6.116666666666667,
"ab_hard_contact": -0.29358078908637153,
"ab_bat_speed": 69.95319176655109,
"ab_strikeout_rate": 0.2521638298483195,
"available_players": 8,
"top_players": [
{
"player_id": "664954",
"player_name": "Brett Sullivan",
"position": "C",
"weight": 5.0,
"quality": -0.4015407676860382,
"contact": -1.2680432057853939,
"power": -1.3508559324119924,
"discipline": -0.42479148959354923,
"xwoba": 0.24299999999999997,
"recent_xwoba": 0.243,
"barrel": 1.4,
"ab_hard_contact": -0.47311864823985506,
"ab_bat_speed": 65.34087560386475,
"ab_strikeout_rate": 0.24057971014492754,
"available": 1.0
},
{
"player_id": "694249",
"player_name": "Cole Carrigg",
"position": "CF",
"weight": 4.0,
"quality": -0.0,
"contact": -2.0,
"power": -2.0,
"discipline": 0.8159285714285713,
"xwoba": 0.172,
"recent_xwoba": 0.172,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26223456790123,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
},
{
"player_id": "696100",
"player_name": "Hunter Goodman",
"position": "DH",
"weight": 7.0,
"quality": 0.2907535161349975,
"contact": 0.07913704272392352,
"power": 1.093464903201597,
"discipline": -0.7185689223057644,
"xwoba": 0.33,
"recent_xwoba": 0.33,
"barrel": 15.6,
"ab_hard_contact": -0.019463840729974313,
"ab_bat_speed": 74.20468333333334,
"ab_strikeout_rate": 0.34,
"available": 1.0
},
{
"player_id": "650489",
"player_name": "Willi Castro",
"position": "3B",
"weight": 6.0,
"quality": -0.31886806081352354,
"contact": -0.43999263188646626,
"power": -0.3864179557883724,
"discipline": -0.4227658920027342,
"xwoba": 0.288,
"recent_xwoba": 0.288,
"barrel": 5.1,
"ab_hard_contact": -0.03654959195793778,
"ab_bat_speed": 70.78322285353535,
"ab_strikeout_rate": 0.28219696969696967,
"available": 1.0
},
{
"player_id": "666397",
"player_name": "Edouard Julien",
"position": "2B",
"weight": 5.0,
"quality": 0.30434894958867525,
"contact": 0.5373204722930834,
"power": 0.3742597904086762,
"discipline": 0.15389668615984334,
"xwoba": 0.341,
"recent_xwoba": 0.341,
"barrel": 7.400000000000001,
"ab_hard_contact": 0.11376723674496286,
"ab_bat_speed": 70.16150793650793,
"ab_strikeout_rate": 0.30224867724867727,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "665795",
"player_name": "Edward Cabrera",
"quality": -0.27117225555910895,
"contact": -0.702998697861429,
"command": -0.025381181892460025,
"movement": 0.32416448983544793,
"xwoba": 0.336,
"whiff": 27.6,
"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": "CHC 5 - 3 COL",
"confidence": 0.570298,
"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": "CHC 5 - 3 COL",
"winner": "CHC"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 4,
"score_text": "CHC 6 - 4 COL",
"winner": "CHC"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 1,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away CHC | True | 1.0264 | 1.0264 | 1 | 9 | 0 |
| Home COL | True | 0.9979 | 0.9979 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3B | Alex Bregman | 86 | 1.0060 | 0.0802 | neutral | 0.3120 | 0.2470 | 0.3710 | 5 | 38.80 | 88.10 | 14.80 | 17.80 | 16.70 | 10.20 | 0.2000 |
| LF | Ian Happ | 41 | 1.0525 | 0.7004 | neutral | 0.3420 | 0.2120 | 0.4580 | 15.40 | 47 | 90.80 | 16.60 | 32.60 | 31.90 | 14.20 | -0.6000 |
| CF | Pete Crow-Armstrong | 6 | 1.0761 | 1.0146 | neutral | 0.3530 | 0.2530 | 0.4760 | 11.60 | 49.70 | 91.80 | 20.10 | 28.40 | 25.50 | 8.40 | 0.2857 |
| 1B | Michael Busch | 71 | 1.0446 | 0.5942 | neutral | 0.3460 | 0.2380 | 0.4140 | 11.30 | 41.80 | 88.40 | 15 | 26.50 | 23.40 | 14.90 | 0 |
| RF | Seiya Suzuki | 75 | 1.0242 | 0.3231 | neutral | 0.3260 | 0.2470 | 0.4180 | 8.50 | 41.10 | 89 | 18 | 27 | 25.80 | 10.20 | -0.0286 |
| 2B | Nico Hoerner | 82 | 1.0260 | 0.3470 | neutral | 0.3360 | 0.2960 | 0.3780 | 1.20 | 28 | 86 | 12.60 | 10.30 | 6.60 | 9.90 | 0.8286 |
| DH | Moisés Ballesteros | 237 | 1.0172 | 0.2289 | neutral | 0.3150 | 0.2400 | 0.3940 | 9.80 | 46.40 | 90.20 | 12.10 | 28.40 | 20.50 | 9.90 | 0.0286 |
| C | Carson Kelly | 108 | 1.0069 | 0.0923 | neutral | 0.3170 | 0.2530 | 0.3780 | 6.20 | 40.30 | 89 | 13.20 | 21.90 | 16.90 | 9 | -0.3143 |
| SS | Dansby Swanson | 94 | 0.9844 | -0.2087 | neutral | 0.2900 | 0.1950 | 0.3420 | 7.10 | 41 | 89.40 | 16.10 | 30.50 | 23.90 | 12.60 | 0.3714 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2B | Edouard Julien | 534 | 1.0450 | 0.6004 | positive_batter_regression | 0.3410 | 0.2570 | 0.4170 | 7.40 | 50 | 91.10 | 8.70 | 25.60 | 27.60 | 12.20 | 1.3143 |
| 1B | TJ Rumfield | 118 | 1.0153 | 0.2044 | neutral | 0.3290 | 0.2540 | 0.4070 | 6.90 | 34.70 | 85.10 | 13.90 | 19.20 | 15.10 | 9.30 | -0.4571 |
| DH | Hunter Goodman | 47 | 1.0407 | 0.5422 | negative_batter_regression | 0.3300 | 0.2320 | 0.4560 | 15.60 | 47.30 | 91.20 | 17.70 | 33.50 | 33 | 8.80 | -1.0286 |
| 3B | Willi Castro | 200 | 0.9772 | -0.3039 | negative_batter_regression | 0.2880 | 0.2220 | 0.3460 | 5.10 | 43.40 | 88.40 | 18.40 | 29.90 | 26.60 | 8.40 | -0.8857 |
| RF | Troy Johnston | 337 | 1.0131 | 0.1745 | neutral | 0.3250 | 0.2830 | 0.3920 | 2.90 | 36.60 | 89.20 | 13.30 | 23.20 | 19 | 7.60 | -0.7143 |
| LF | Sterlin Thompson | 451 | 0.9892 | -0.1441 | neutral | 0.3000 | 0.2330 | 0.3140 | 0 | 41.70 | 87.30 | 7 | 23.10 | 18.90 | 9.40 | 0.1714 |
| CF | Cole Carrigg | 353 | 0.9274 | -0.9678 | negative_batter_regression | 0.1720 | 0.0880 | 0.1360 | 0 | 20 | 76.30 | 40 | 17.60 | 25 | 12.50 | -2 |
| SS | Ezequiel Tovar | 430 | 1.0130 | 0.1729 | positive_batter_regression | 0.3020 | 0.2380 | 0.4070 | 8.50 | 36 | 88 | 15.60 | 30.10 | 27.10 | 5.70 | 1 |
| C | Brett Sullivan | 496 | 0.9600 | -0.5335 | neutral | 0.2430 | 0.2080 | 0.2830 | 1.40 | 26.10 | 86 | 18.70 | 20.20 | 21.30 | 4.30 | -0.1429 |
{
"home": {
"applied": true,
"offense_factor": 0.9979,
"raw_average_factor": 0.9979,
"team_espn_average_rank": 329.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "2B",
"player_id": "666397",
"player_name": "Edouard Julien",
"offense_factor": 1.045,
"quality_score": 0.6004,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "666397",
"espn_id": 3985190,
"player_name": "Edouard Julien",
"team": "COL",
"role": "batter",
"espn_rank": 534,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 534,
"gp_value": 57.0,
"gp_rank": 166,
"ab_value": 158.0,
"ab_rank": 208,
"r_value": 22.0,
"r_rank": 179,
"h_value": 36.0,
"h_rank": 215,
"avg_value": 0.2278481,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 49.0,
"tb_rank": 1429,
"bb_value": 22.0,
"bb_rank": 105,
"so_value": 50.0,
"so_rank": 117,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.3259668,
"obp_rank": "-",
"slg_value": 0.3101265,
"slg_rank": "-",
"ops_value": 0.6360933,
"ops_rank": null,
"war_value": -0.63,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 147.0,
"k_percent": 27.6,
"bb_percent": 12.2,
"woba": 0.295,
"xwoba": 0.341,
"xba": 0.257,
"xslg": 0.417,
"sweet_spot_percent": 44.4,
"barrel_batted_rate": 7.4,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 91.1,
"launch_angle_avg": 8.7,
"whiff_percent": 25.6,
"swing_percent": 41.9
},
"components": {
"expected_quality": 0.8309,
"regression_edge": 1.3143,
"xwoba_edge": 1.0571,
"xba_edge": 0.5429,
"xslg_edge": 0.6143,
"barrel_edge": 0.1111,
"hard_hit_edge": 1.6429,
"exit_velocity_edge": 0.92,
"sweet_spot_edge": 1.85,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "681198",
"player_name": "TJ Rumfield",
"offense_factor": 1.0153,
"quality_score": 0.2044,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681198",
"espn_id": 5014349,
"player_name": "TJ Rumfield",
"team": "COL",
"role": "batter",
"espn_rank": 118,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 118,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 227.0,
"ab_rank": 98,
"r_value": 27.0,
"r_rank": 122,
"h_value": 61.0,
"h_rank": 68,
"avg_value": 0.2687224,
"avg_rank": 55.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 97.0,
"tb_rank": 551,
"bb_value": 24.0,
"bb_rank": 80,
"so_value": 39.0,
"so_rank": 179,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3488372,
"obp_rank": "54",
"slg_value": 0.4273127,
"slg_rank": "78",
"ops_value": 0.7761499,
"ops_rank": 132.0,
"war_value": 1.05,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 209.0,
"k_percent": 15.1,
"bb_percent": 9.3,
"woba": 0.345,
"xwoba": 0.329,
"xba": 0.254,
"xslg": 0.407,
"sweet_spot_percent": 38.9,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 34.7,
"exit_velocity_avg": 85.1,
"launch_angle_avg": 13.9,
"whiff_percent": 19.2,
"swing_percent": 50.6
},
"components": {
"expected_quality": 0.3246,
"regression_edge": -0.4571,
"xwoba_edge": 0.7143,
"xba_edge": 0.4571,
"xslg_edge": 0.4714,
"barrel_edge": 0.0,
"hard_hit_edge": -0.5429,
"exit_velocity_edge": -1.48,
"sweet_spot_edge": 0.9333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "696100",
"player_name": "Hunter Goodman",
"offense_factor": 1.0407,
"quality_score": 0.5422,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "696100",
"espn_id": 4416591,
"player_name": "Hunter Goodman",
"team": "COL",
"role": "batter",
"espn_rank": 47,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 47,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 233.0,
"ab_rank": 87,
"r_value": 41.0,
"r_rank": 31,
"h_value": 58.0,
"h_rank": 84,
"avg_value": 0.248927,
"avg_rank": 85.0,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 18.0,
"hr_rank": 6,
"rbi_value": 33.0,
"rbi_rank": 61,
"tb_value": 123.0,
"tb_rank": 551,
"bb_value": 23.0,
"bb_rank": 89,
"so_value": 86.0,
"so_rank": 9,
"sb_value": 5.0,
"sb_rank": 84,
"obp_value": 0.3256704,
"obp_rank": "96",
"slg_value": 0.5278969,
"slg_rank": "15",
"ops_value": 0.8535673,
"ops_rank": 111.0,
"war_value": 1.88,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 206.0,
"k_percent": 33.0,
"bb_percent": 8.8,
"woba": 0.366,
"xwoba": 0.33,
"xba": 0.232,
"xslg": 0.456,
"sweet_spot_percent": 35.8,
"barrel_batted_rate": 15.6,
"hard_hit_percent": 47.3,
"exit_velocity_avg": 91.2,
"launch_angle_avg": 17.7,
"whiff_percent": 33.5,
"swing_percent": 54.2
},
"components": {
"expected_quality": 0.8408,
"regression_edge": -1.0286,
"xwoba_edge": 0.7429,
"xba_edge": -0.1714,
"xslg_edge": 1.1714,
"barrel_edge": 1.9333,
"hard_hit_edge": 1.2571,
"exit_velocity_edge": 0.96,
"sweet_spot_edge": 0.4167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "650489",
"player_name": "Willi Castro",
"offense_factor": 0.9772,
"quality_score": -0.3039,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "650489",
"espn_id": 34230,
"player_name": "Willi Castro",
"team": "COL",
"role": "batter",
"espn_rank": 200,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 200,
"gp_value": 56.0,
"gp_rank": 173,
"ab_value": 192.0,
"ab_rank": 145,
"r_value": 27.0,
"r_rank": 122,
"h_value": 51.0,
"h_rank": 119,
"avg_value": 0.265625,
"avg_rank": 60.0,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 71.0,
"tb_rank": 1237,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 57.0,
"so_rank": 76,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.3364485,
"obp_rank": "76",
"slg_value": 0.3697916,
"slg_rank": "122",
"ops_value": 0.7062401,
"ops_rank": 46.0,
"war_value": 0.48,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 164.0,
"k_percent": 26.6,
"bb_percent": 8.4,
"woba": 0.319,
"xwoba": 0.288,
"xba": 0.222,
"xslg": 0.346,
"sweet_spot_percent": 29.4,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 43.4,
"exit_velocity_avg": 88.4,
"launch_angle_avg": 18.4,
"whiff_percent": 29.9,
"swing_percent": 53.8
},
"components": {
"expected_quality": -0.3298,
"regression_edge": -0.8857,
"xwoba_edge": -0.4571,
"xba_edge": -0.4571,
"xslg_edge": -0.4,
"barrel_edge": -0.4,
"hard_hit_edge": 0.7,
"exit_velocity_edge": -0.16,
"sweet_spot_edge": -0.65,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "687859",
"player_name": "Troy Johnston",
"offense_factor": 1.0131,
"quality_score": 0.1745,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687859",
"espn_id": 4346111,
"player_name": "Troy Johnston",
"team": "COL",
"role": "batter",
"espn_rank": 337,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 337,
"gp_value": 63.0,
"gp_rank": 100,
"ab_value": 215.0,
"ab_rank": 118,
"r_value": 27.0,
"r_rank": 122,
"h_value": 66.0,
"h_rank": 38,
"avg_value": 0.3069767,
"avg_rank": 8.0,
"2b_value": 19.0,
"2b_rank": 2,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 28.0,
"rbi_rank": 108,
"tb_value": 91.0,
"tb_rank": 1246,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 45.0,
"so_rank": 140,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.3644067,
"obp_rank": "37",
"slg_value": 0.4232558,
"slg_rank": "80",
"ops_value": 0.7876625,
"ops_rank": 117.0,
"war_value": 0.01,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 179.0,
"k_percent": 19.0,
"bb_percent": 7.6,
"woba": 0.35,
"xwoba": 0.325,
"xba": 0.283,
"xslg": 0.392,
"sweet_spot_percent": 43.0,
"barrel_batted_rate": 2.9,
"hard_hit_percent": 36.6,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 13.3,
"whiff_percent": 23.2,
"swing_percent": 50.3
},
"components": {
"expected_quality": 0.3656,
"regression_edge": -0.7143,
"xwoba_edge": 0.6,
"xba_edge": 1.2857,
"xslg_edge": 0.2571,
"barrel_edge": -0.8889,
"hard_hit_edge": -0.2714,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 1.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "694514",
"player_name": "Sterlin Thompson",
"offense_factor": 0.9892,
"quality_score": -0.1441,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694514",
"espn_id": 4683366,
"player_name": "Sterlin Thompson",
"team": "COL",
"role": "batter",
"espn_rank": 451,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 451,
"gp_value": 19.0,
"gp_rank": 400,
"ab_value": 46.0,
"ab_rank": 411,
"r_value": 4.0,
"r_rank": 419,
"h_value": 11.0,
"h_rank": 392,
"avg_value": 0.2391304,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 374,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 7.0,
"rbi_rank": 352,
"tb_value": 13.0,
"tb_rank": 2407,
"bb_value": 5.0,
"bb_rank": 364,
"so_value": 10.0,
"so_rank": 429,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3396226,
"obp_rank": "-",
"slg_value": 0.2826086,
"slg_rank": "-",
"ops_value": 0.6222312,
"ops_rank": null,
"war_value": -0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 25.0,
"k_percent": 18.9,
"bb_percent": 9.4,
"woba": 0.294,
"xwoba": 0.3,
"xba": 0.233,
"xslg": 0.314,
"sweet_spot_percent": 30.6,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 41.7,
"exit_velocity_avg": 87.3,
"launch_angle_avg": 7.0,
"whiff_percent": 23.1,
"swing_percent": 48.1
},
"components": {
"expected_quality": -0.4003,
"regression_edge": 0.1714,
"xwoba_edge": -0.1143,
"xba_edge": -0.1429,
"xslg_edge": -0.8571,
"barrel_edge": -1.5333,
"hard_hit_edge": 0.4571,
"exit_velocity_edge": -0.6,
"sweet_spot_edge": -0.45,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "694249",
"player_name": "Cole Carrigg",
"offense_factor": 0.9274,
"quality_score": -0.9678,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "694249",
"espn_id": 5149102,
"player_name": "Cole Carrigg",
"team": "COL",
"role": "batter",
"espn_rank": 353,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 353,
"gp_value": 2.0,
"gp_rank": 536,
"ab_value": 7.0,
"ab_rank": 524,
"r_value": 0.0,
"r_rank": 526,
"h_value": 1.0,
"h_rank": 513,
"avg_value": 0.1428571,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 0.0,
"rbi_rank": 507,
"tb_value": 3.0,
"tb_rank": 2394,
"bb_value": 1.0,
"bb_rank": 462,
"so_value": 2.0,
"so_rank": 520,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.25,
"obp_rank": "-",
"slg_value": 0.4285714,
"slg_rank": "-",
"ops_value": 0.6785714,
"ops_rank": null,
"war_value": -0.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 25.0,
"bb_percent": 12.5,
"woba": 0.289,
"xwoba": 0.172,
"xba": 0.088,
"xslg": 0.136,
"sweet_spot_percent": 20.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 20.0,
"exit_velocity_avg": 76.3,
"launch_angle_avg": 40.0,
"whiff_percent": 17.6,
"swing_percent": 56.7
},
"components": {
"expected_quality": -2.1753,
"regression_edge": -2.0,
"xwoba_edge": -2.5,
"xba_edge": -2.5,
"xslg_edge": -2.5,
"barrel_edge": -1.5333,
"hard_hit_edge": -2.5,
"exit_velocity_edge": -2.5,
"sweet_spot_edge": -2.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "678662",
"player_name": "Ezequiel Tovar",
"offense_factor": 1.013,
"quality_score": 0.1729,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "678662",
"espn_id": 4905919,
"player_name": "Ezequiel Tovar",
"team": "COL",
"role": "batter",
"espn_rank": 430,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 430,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 228.0,
"ab_rank": 97,
"r_value": 20.0,
"r_rank": 196,
"h_value": 49.0,
"h_rank": 131,
"avg_value": 0.2149122,
"avg_rank": 145.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 23.0,
"rbi_rank": 157,
"tb_value": 77.0,
"tb_rank": 1032,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 67.0,
"so_rank": 40,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.2631578,
"obp_rank": "164",
"slg_value": 0.3377192,
"slg_rank": "144",
"ops_value": 0.600877,
"ops_rank": 308.0,
"war_value": -0.17,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 197.0,
"k_percent": 27.1,
"bb_percent": 5.7,
"woba": 0.267,
"xwoba": 0.302,
"xba": 0.238,
"xslg": 0.407,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 8.5,
"hard_hit_percent": 36.0,
"exit_velocity_avg": 88.0,
"launch_angle_avg": 15.6,
"whiff_percent": 30.1,
"swing_percent": 61.7
},
"components": {
"expected_quality": 0.0617,
"regression_edge": 1.0,
"xwoba_edge": -0.0571,
"xba_edge": 0.0,
"xslg_edge": 0.4714,
"barrel_edge": 0.3556,
"hard_hit_edge": -0.3571,
"exit_velocity_edge": -0.32,
"sweet_spot_edge": 0.85,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "664954",
"player_name": "Brett Sullivan",
"offense_factor": 0.96,
"quality_score": -0.5335,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664954",
"espn_id": 39913,
"player_name": "Brett Sullivan",
"team": "COL",
"role": "batter",
"espn_rank": 496,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 496,
"gp_value": 32.0,
"gp_rank": 333,
"ab_value": 87.0,
"ab_rank": 335,
"r_value": 4.0,
"r_rank": 419,
"h_value": 18.0,
"h_rank": 338,
"avg_value": 0.2068965,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 9.0,
"rbi_rank": 317,
"tb_value": 27.0,
"tb_rank": 1956,
"bb_value": 4.0,
"bb_rank": 394,
"so_value": 20.0,
"so_rank": 335,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2473118,
"obp_rank": "-",
"slg_value": 0.3103448,
"slg_rank": "-",
"ops_value": 0.5576566,
"ops_rank": null,
"war_value": -0.4,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 79.0,
"k_percent": 21.3,
"bb_percent": 4.3,
"woba": 0.248,
"xwoba": 0.243,
"xba": 0.208,
"xslg": 0.283,
"sweet_spot_percent": 26.1,
"barrel_batted_rate": 1.4,
"hard_hit_percent": 26.1,
"exit_velocity_avg": 86.0,
"launch_angle_avg": 18.7,
"whiff_percent": 20.2,
"swing_percent": 53.0
},
"components": {
"expected_quality": -1.3554,
"regression_edge": -0.1429,
"xwoba_edge": -1.7429,
"xba_edge": -0.8571,
"xslg_edge": -1.3,
"barrel_edge": -1.2222,
"hard_hit_edge": -1.7714,
"exit_velocity_edge": -1.12,
"sweet_spot_edge": -1.2,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0264,
"raw_average_factor": 1.0264,
"team_espn_average_rank": 88.89,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "3B",
"player_id": "608324",
"player_name": "Alex Bregman",
"offense_factor": 1.006,
"quality_score": 0.0802,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "608324",
"espn_id": 34886,
"player_name": "Alex Bregman",
"team": "CHC",
"role": "batter",
"espn_rank": 86,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 86,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 268.0,
"ab_rank": 9,
"r_value": 30.0,
"r_rank": 90,
"h_value": 66.0,
"h_rank": 38,
"avg_value": 0.2462686,
"avg_rank": 98.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 20.0,
"rbi_rank": 191,
"tb_value": 92.0,
"tb_rank": 790,
"bb_value": 31.0,
"bb_rank": 40,
"so_value": 51.0,
"so_rank": 106,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3311475,
"obp_rank": "89",
"slg_value": 0.3432835,
"slg_rank": "140",
"ops_value": 0.674431,
"ops_rank": 51.0,
"war_value": 1.39,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 249.0,
"k_percent": 16.7,
"bb_percent": 10.2,
"woba": 0.305,
"xwoba": 0.312,
"xba": 0.247,
"xslg": 0.371,
"sweet_spot_percent": 32.0,
"barrel_batted_rate": 5.0,
"hard_hit_percent": 38.8,
"exit_velocity_avg": 88.1,
"launch_angle_avg": 14.8,
"whiff_percent": 17.8,
"swing_percent": 40.7
},
"components": {
"expected_quality": 0.0607,
"regression_edge": 0.2,
"xwoba_edge": 0.2286,
"xba_edge": 0.2571,
"xslg_edge": -0.0429,
"barrel_edge": -0.4222,
"hard_hit_edge": 0.0429,
"exit_velocity_edge": -0.28,
"sweet_spot_edge": -0.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "664023",
"player_name": "Ian Happ",
"offense_factor": 1.0525,
"quality_score": 0.7004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664023",
"espn_id": 34945,
"player_name": "Ian Happ",
"team": "CHC",
"role": "batter",
"espn_rank": 41,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 41,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 239.0,
"ab_rank": 66,
"r_value": 43.0,
"r_rank": 18,
"h_value": 55.0,
"h_rank": 98,
"avg_value": 0.2301255,
"avg_rank": 124.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 15.0,
"hr_rank": 16,
"rbi_value": 35.0,
"rbi_rank": 51,
"tb_value": 117.0,
"tb_rank": 215,
"bb_value": 40.0,
"bb_rank": 18,
"so_value": 90.0,
"so_rank": 5,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3475177,
"obp_rank": "55",
"slg_value": 0.4895397,
"slg_rank": "33",
"ops_value": 0.8370574,
"ops_rank": 22.0,
"war_value": 2.07,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 233.0,
"k_percent": 31.9,
"bb_percent": 14.2,
"woba": 0.363,
"xwoba": 0.342,
"xba": 0.212,
"xslg": 0.458,
"sweet_spot_percent": 34.2,
"barrel_batted_rate": 15.4,
"hard_hit_percent": 47.0,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 16.6,
"whiff_percent": 32.6,
"swing_percent": 43.9
},
"components": {
"expected_quality": 0.9121,
"regression_edge": -0.6,
"xwoba_edge": 1.0857,
"xba_edge": -0.7429,
"xslg_edge": 1.2,
"barrel_edge": 1.8889,
"hard_hit_edge": 1.2143,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": 0.15,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "691718",
"player_name": "Pete Crow-Armstrong",
"offense_factor": 1.0761,
"quality_score": 1.0146,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691718",
"espn_id": 4717833,
"player_name": "Pete Crow-Armstrong",
"team": "CHC",
"role": "batter",
"espn_rank": 6,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 6,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 252.0,
"ab_rank": 29,
"r_value": 38.0,
"r_rank": 49,
"h_value": 64.0,
"h_rank": 47,
"avg_value": 0.2539682,
"avg_rank": 78.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 3.0,
"3b_rank": 5,
"hr_value": 11.0,
"hr_rank": 44,
"rbi_value": 32.0,
"rbi_rank": 73,
"tb_value": 111.0,
"tb_rank": 363,
"bb_value": 24.0,
"bb_rank": 80,
"so_value": 73.0,
"so_rank": 25,
"sb_value": 14.0,
"sb_rank": 11,
"obp_value": 0.3368421,
"obp_rank": "75",
"slg_value": 0.4404761,
"slg_rank": "68",
"ops_value": 0.7773182,
"ops_rank": 143.0,
"war_value": 3.27,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 229.0,
"k_percent": 25.5,
"bb_percent": 8.4,
"woba": 0.343,
"xwoba": 0.353,
"xba": 0.253,
"xslg": 0.476,
"sweet_spot_percent": 33.7,
"barrel_batted_rate": 11.6,
"hard_hit_percent": 49.7,
"exit_velocity_avg": 91.8,
"launch_angle_avg": 20.1,
"whiff_percent": 28.4,
"swing_percent": 52.3
},
"components": {
"expected_quality": 1.1333,
"regression_edge": 0.2857,
"xwoba_edge": 1.4,
"xba_edge": 0.4286,
"xslg_edge": 1.4571,
"barrel_edge": 1.0444,
"hard_hit_edge": 1.6,
"exit_velocity_edge": 1.2,
"sweet_spot_edge": 0.0667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "1B",
"player_id": "683737",
"player_name": "Michael Busch",
"offense_factor": 1.0446,
"quality_score": 0.5942,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683737",
"espn_id": 42415,
"player_name": "Michael Busch",
"team": "CHC",
"role": "batter",
"espn_rank": 71,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 71,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 243.0,
"ab_rank": 53,
"r_value": 28.0,
"r_rank": 111,
"h_value": 60.0,
"h_rank": 73,
"avg_value": 0.2469135,
"avg_rank": 92.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 37.0,
"rbi_rank": 42,
"tb_value": 97.0,
"tb_rank": 478,
"bb_value": 44.0,
"bb_rank": 8,
"so_value": 69.0,
"so_rank": 30,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3694915,
"obp_rank": "32",
"slg_value": 0.3991769,
"slg_rank": "101",
"ops_value": 0.7686684,
"ops_rank": 69.0,
"war_value": 1.56,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 243.0,
"k_percent": 23.4,
"bb_percent": 14.9,
"woba": 0.346,
"xwoba": 0.346,
"xba": 0.238,
"xslg": 0.414,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 11.3,
"hard_hit_percent": 41.8,
"exit_velocity_avg": 88.4,
"launch_angle_avg": 15.0,
"whiff_percent": 26.5,
"swing_percent": 41.9
},
"components": {
"expected_quality": 0.691,
"regression_edge": 0.0,
"xwoba_edge": 1.2,
"xba_edge": 0.0,
"xslg_edge": 0.5714,
"barrel_edge": 0.9778,
"hard_hit_edge": 0.4714,
"exit_velocity_edge": -0.16,
"sweet_spot_edge": -0.2833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "673548",
"player_name": "Seiya Suzuki",
"offense_factor": 1.0242,
"quality_score": 0.3231,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "673548",
"espn_id": 4142424,
"player_name": "Seiya Suzuki",
"team": "CHC",
"role": "batter",
"espn_rank": 75,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 75,
"gp_value": 54.0,
"gp_rank": 188,
"ab_value": 198.0,
"ab_rank": 138,
"r_value": 29.0,
"r_rank": 104,
"h_value": 49.0,
"h_rank": 131,
"avg_value": 0.2474747,
"avg_rank": 92.0,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 81.0,
"tb_rank": 947,
"bb_value": 23.0,
"bb_rank": 89,
"so_value": 58.0,
"so_rank": 71,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3333333,
"obp_rank": "82",
"slg_value": 0.4090909,
"slg_rank": "90",
"ops_value": 0.7424242,
"ops_rank": 172.0,
"war_value": 1.52,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 177.0,
"k_percent": 25.8,
"bb_percent": 10.2,
"woba": 0.327,
"xwoba": 0.326,
"xba": 0.247,
"xslg": 0.418,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 8.5,
"hard_hit_percent": 41.1,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 18.0,
"whiff_percent": 27.0,
"swing_percent": 42.2
},
"components": {
"expected_quality": 0.4717,
"regression_edge": -0.0286,
"xwoba_edge": 0.6286,
"xba_edge": 0.2571,
"xslg_edge": 0.6286,
"barrel_edge": 0.3556,
"hard_hit_edge": 0.3714,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": 0.4833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "663538",
"player_name": "Nico Hoerner",
"offense_factor": 1.026,
"quality_score": 0.347,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663538",
"espn_id": 41219,
"player_name": "Nico Hoerner",
"team": "CHC",
"role": "batter",
"espn_rank": 82,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 82,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 267.0,
"ab_rank": 10,
"r_value": 26.0,
"r_rank": 136,
"h_value": 66.0,
"h_rank": 38,
"avg_value": 0.247191,
"avg_rank": 92.0,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 33.0,
"rbi_rank": 61,
"tb_value": 93.0,
"tb_rank": 993,
"bb_value": 30.0,
"bb_rank": 45,
"so_value": 20.0,
"so_rank": 335,
"sb_value": 12.0,
"sb_rank": 17,
"obp_value": 0.3289473,
"obp_rank": "91",
"slg_value": 0.3483146,
"slg_rank": "136",
"ops_value": 0.6772619,
"ops_rank": 45.0,
"war_value": 1.41,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 250.0,
"k_percent": 6.6,
"bb_percent": 9.9,
"woba": 0.307,
"xwoba": 0.336,
"xba": 0.296,
"xslg": 0.378,
"sweet_spot_percent": 38.0,
"barrel_batted_rate": 1.2,
"hard_hit_percent": 28.0,
"exit_velocity_avg": 86.0,
"launch_angle_avg": 12.6,
"whiff_percent": 10.3,
"swing_percent": 42.8
},
"components": {
"expected_quality": 0.2686,
"regression_edge": 0.8286,
"xwoba_edge": 0.9143,
"xba_edge": 1.6571,
"xslg_edge": 0.0571,
"barrel_edge": -1.2667,
"hard_hit_edge": -1.5,
"exit_velocity_edge": -1.12,
"sweet_spot_edge": 0.7833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "694208",
"player_name": "Moisés Ballesteros",
"offense_factor": 1.0172,
"quality_score": 0.2289,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694208",
"espn_id": 4987418,
"player_name": "Moises Ballesteros",
"team": "CHC",
"role": "batter",
"espn_rank": 237,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 237,
"gp_value": 54.0,
"gp_rank": 188,
"ab_value": 143.0,
"ab_rank": 231,
"r_value": 15.0,
"r_rank": 254,
"h_value": 34.0,
"h_rank": 225,
"avg_value": 0.2377622,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 23.0,
"rbi_rank": 157,
"tb_value": 57.0,
"tb_rank": 1248,
"bb_value": 16.0,
"bb_rank": 181,
"so_value": 33.0,
"so_rank": 221,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.310559,
"obp_rank": "-",
"slg_value": 0.3986013,
"slg_rank": "-",
"ops_value": 0.7091603,
"ops_rank": null,
"war_value": 0.3,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 141.0,
"k_percent": 20.5,
"bb_percent": 9.9,
"woba": 0.314,
"xwoba": 0.315,
"xba": 0.24,
"xslg": 0.394,
"sweet_spot_percent": 34.8,
"barrel_batted_rate": 9.8,
"hard_hit_percent": 46.4,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 12.1,
"whiff_percent": 28.4,
"swing_percent": 49.6
},
"components": {
"expected_quality": 0.4107,
"regression_edge": 0.0286,
"xwoba_edge": 0.3143,
"xba_edge": 0.0571,
"xslg_edge": 0.2857,
"barrel_edge": 0.6444,
"hard_hit_edge": 1.1286,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": 0.25,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "608348",
"player_name": "Carson Kelly",
"offense_factor": 1.0069,
"quality_score": 0.0923,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "608348",
"espn_id": 32797,
"player_name": "Carson Kelly",
"team": "CHC",
"role": "batter",
"espn_rank": 108,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 108,
"gp_value": 50.0,
"gp_rank": 212,
"ab_value": 159.0,
"ab_rank": 207,
"r_value": 19.0,
"r_rank": 202,
"h_value": 45.0,
"h_rank": 159,
"avg_value": 0.2830188,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 18.0,
"rbi_rank": 214,
"tb_value": 57.0,
"tb_rank": 1585,
"bb_value": 16.0,
"bb_rank": 181,
"so_value": 30.0,
"so_rank": 250,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3595505,
"obp_rank": "-",
"slg_value": 0.3584905,
"slg_rank": "-",
"ops_value": 0.718041,
"ops_rank": null,
"war_value": 1.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 148.0,
"k_percent": 16.9,
"bb_percent": 9.0,
"woba": 0.328,
"xwoba": 0.317,
"xba": 0.253,
"xslg": 0.378,
"sweet_spot_percent": 31.0,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 40.3,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 13.2,
"whiff_percent": 21.9,
"swing_percent": 47.5
},
"components": {
"expected_quality": 0.2108,
"regression_edge": -0.3143,
"xwoba_edge": 0.3714,
"xba_edge": 0.4286,
"xslg_edge": 0.0571,
"barrel_edge": -0.1556,
"hard_hit_edge": 0.2571,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": -0.3833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "621020",
"player_name": "Dansby Swanson",
"offense_factor": 0.9844,
"quality_score": -0.2087,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "621020",
"espn_id": 34895,
"player_name": "Dansby Swanson",
"team": "CHC",
"role": "batter",
"espn_rank": 94,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 94,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 211.0,
"ab_rank": 124,
"r_value": 36.0,
"r_rank": 55,
"h_value": 38.0,
"h_rank": 199,
"avg_value": 0.1800947,
"avg_rank": 165.0,
"2b_value": 7.0,
"2b_rank": 198,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 28.0,
"rbi_rank": 108,
"tb_value": 68.0,
"tb_rank": 843,
"bb_value": 31.0,
"bb_rank": 40,
"so_value": 59.0,
"so_rank": 65,
"sb_value": 5.0,
"sb_rank": 84,
"obp_value": 0.2845528,
"obp_rank": "143",
"slg_value": 0.3222748,
"slg_rank": "154",
"ops_value": 0.6068276,
"ops_rank": 297.0,
"war_value": 1.26,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 208.0,
"k_percent": 23.9,
"bb_percent": 12.6,
"woba": 0.277,
"xwoba": 0.29,
"xba": 0.195,
"xslg": 0.342,
"sweet_spot_percent": 26.9,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 41.0,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 16.1,
"whiff_percent": 30.5,
"swing_percent": 44.4
},
"components": {
"expected_quality": -0.3171,
"regression_edge": 0.3714,
"xwoba_edge": -0.4,
"xba_edge": -1.2286,
"xslg_edge": -0.4571,
"barrel_edge": 0.0444,
"hard_hit_edge": 0.3571,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": -1.0667,
"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 CHC | True | 674 | -0.3216 | 0.8400 | 1.0273 | 1.0038 | 0.9916 | 1.1107 | neutral | 0.3360 | 0.3510 | 21.50 | 8.50 | 27.60 | 12.90 | 40.90 | |
| Home COL | True | 94 | -0.3400 | 0.4500 | 1.0289 | 0.9838 | 0.9883 | 1.0781 | negative_pitcher_regression | 0.3670 | 0.3220 | 17.70 | 7.70 | 24.30 | 12.50 | 44.80 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away CHC | True | None | 91 | 91.64 | 2135 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.1079 | |
| Home COL | True | None | 69 | 89.21 | 2389 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0282 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0130 |
| home_runs_vs_away_pitcher | 1.0229 |
| home_pitcher_quality_edge | -0.0184 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "663372",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 88.0,
"k_percent": 17.7,
"bb_percent": 7.7,
"woba": 0.322,
"xwoba": 0.367,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 44.8,
"avg_best_speed": 78.1487,
"avg_hyper_speed": 94.5607,
"whiff_percent": 24.3,
"swing_percent": 48.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.9664,
"command_and_miss": -0.3214,
"regression_edge": -1.2857,
"xwoba_edge": -1.4857,
"barrel_edge": -1.1556,
"hard_hit_edge": -0.9143,
"whiff_edge": -0.1857,
"bb_edge": 0.325,
"pitch_design_score": -0.0282
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663372",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 69,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 69,
"pitch_usage": 0.0,
"release_speed": 89.21018122301442,
"release_spin_rate": 2389.3740724285353,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 69,
"pitch_usage": 0.0,
"release_speed": 89.21018122301442,
"release_spin_rate": 2389.3740724285353,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2102,
"release_spin_rate": 2389.3741,
"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.0282,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2014,
"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.34,
"sample_weight": 0.45,
"run_prevention_factor": 1.0289,
"strikeout_factor": 0.9838,
"walk_factor": 0.9883,
"homer_factor": 1.0781,
"woba_minus_xwoba": -0.045,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663372",
"espn_id": 4019484,
"player_name": "Ryan Feltner",
"team": "COL",
"role": "pitcher",
"espn_rank": 94,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 94,
"gp_value": 7.0,
"gp_rank": 425,
"gs_value": 7.0,
"gs_rank": 138,
"qs_value": 2.0,
"qs_rank": 107,
"era_value": 4.2187,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 32.0,
"ip_rank": 188,
"h_value": 27.0,
"h_rank": 213,
"er_value": 15.0,
"er_rank": 189,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 23.0,
"k_rank": 297,
"k_per_9_value": 6.46875,
"k_per_9_rank": 42,
"whip_value": 1.1562,
"whip_rank": null,
"war_value": 0.97,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "665795",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 210.0,
"k_percent": 21.5,
"bb_percent": 8.5,
"woba": 0.351,
"xwoba": 0.336,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 12.9,
"hard_hit_percent": 40.9,
"avg_best_speed": 81.5145,
"avg_hyper_speed": 95.1329,
"whiff_percent": 27.6,
"swing_percent": 47.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.7979,
"command_and_miss": 0.0479,
"regression_edge": 0.4286,
"xwoba_edge": -0.6,
"barrel_edge": -1.2444,
"hard_hit_edge": -0.3571,
"whiff_edge": 0.2857,
"bb_edge": 0.125,
"pitch_design_score": 0.1079
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "665795",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 91,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 91,
"pitch_usage": 0.0,
"release_speed": 91.64041999183891,
"release_spin_rate": 2134.7467183691774,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 91,
"pitch_usage": 0.0,
"release_speed": 91.64041999183891,
"release_spin_rate": 2134.7467183691774,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6404,
"release_spin_rate": 2134.7467,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1079,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7707,
"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.3216,
"sample_weight": 0.84,
"run_prevention_factor": 1.0273,
"strikeout_factor": 1.0038,
"walk_factor": 0.9916,
"homer_factor": 1.1107,
"woba_minus_xwoba": 0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665795",
"espn_id": 40944,
"player_name": "Edward Cabrera",
"team": "CHC",
"role": "pitcher",
"espn_rank": 674,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 674,
"gp_value": 11.0,
"gp_rank": 359,
"gs_value": 11.0,
"gs_rank": 88,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 4.9942,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 57.2,
"ip_rank": 107,
"h_value": 61.0,
"h_rank": 74,
"er_value": 32.0,
"er_rank": 52,
"hr_value": 11.0,
"hr_rank": 27,
"bb_value": 21.0,
"bb_rank": 85,
"k_value": 53.0,
"k_rank": 88,
"k_per_9_value": 8.271676,
"k_per_9_rank": 22,
"whip_value": 1.4219,
"whip_rank": null,
"war_value": -0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.013,
"home_runs_vs_away_pitcher": 1.0229,
"home_pitcher_quality_edge": -0.0184
},
"score_before": {
"away_runs": 4.3405,
"home_runs": 3.5359
},
"score_after": {
"away_runs": 4.3969,
"home_runs": 3.617,
"home_win_probability": 0.4334
},
"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 CHC | 5-59 | 0.078 | 0.60 | 3.60 | -192 | cold | average | |
| Home COL | 12-48 | 0.200 | 1.30 | 5.10 | -225 | cold | weak |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away CHC | 34-33 | 0.507 | -1 | -0.015 | True |
| Home COL | 25-42 | 0.373 | -95 | -1.418 | True |
| Signal | - | - | -1.403 | -1.605 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target CHC | - | - | 5 | - | - | - | - |
| Game target COL | - | - | 3 | - | - | - | - |
| Player finalized CHC | 57 | 16 | 8 | 0 | 9 | 8 | 13 |
| Player finalized COL | 48 | 12 | 6 | 1 | 6 | 6 | 13 |
| Player model fractional CHC | 57.26 | 13.85 | 7.62 | 1.98 | 6.71 | 7.42 | 13.28 |
| Player model fractional COL | 47.41 | 11.21 | 5.68 | 1.48 | 5.91 | 4.69 | 12.23 |
| Simulation box CHC | 34 | 8 | 6 | 2 | 6 | 3 | 4 |
| Simulation box COL | 33 | 6 | 4 | 1 | 4 | 9 | 11 |
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 CHC | Starter | Edward Cabrera | 4.20 | 4 | 4 | 3 | 5 | 5.89 | 1.54 | True |
| Away CHC | Middle Reliever | Caleb Thielbar | 1 | 0 | 1 | 0 | 0 | 4.47 | 1.29 | True |
| Away CHC | Middle Reliever | Daniel Palencia | 1 | 0 | 1 | 0 | 0 | 3.70 | 1.24 | True |
| Away CHC | Middle Reliever | Hoby Milner | 1 | 0 | 3 | 0 | 2 | 7.27 | 1.44 | True |
| Away CHC | Middle Reliever | Jacob Webb | 1 | 0 | 2 | 2 | 0 | 3.40 | 1.26 | True |
| Away CHC | Middle Reliever | Phil Maton | 0.10 | 0 | 0 | 1 | 2 | 4.43 | 1.57 | True |
| Home COL | Starter | Ryan Feltner | 5 | 5 | 3 | 6 | 2 | 4.27 | 1.20 | True |
| Home COL | Middle Reliever | Antonio Senzatela | 1.10 | 0 | 1 | 0 | 0 | 4.63 | 1.53 | True |
| Home COL | Middle Reliever | Juan Mejia | 1.10 | 1 | 0 | 2 | 1 | 8.25 | 1.86 | True |
| Home COL | Middle Reliever | Seth Halvorsen | 1.10 | 0 | 0 | 0 | 0 | 3.28 | 1.33 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | CHC | batter | DH | Moisés Ballesteros | better | 10 | 5 | 5 | 6 | 4 | predicted_RBI | 2.5700 | boost | better |
| away | CHC | batter | RF | Seiya Suzuki | better | 11 | 8 | 3 | 9 | 2 | predicted_H | 2.0600 | boost | better |
| away | CHC | batter | 1B | Michael Busch | better | 10 | 6 | 4 | 6 | 4 | predicted_AB | -2.0500 | deboost | worse |
| home | COL | batter | 3B | Willi Castro | worse | 10 | 5 | 5 | 4 | 6 | predicted_SO | 1.7940 | boost | worse |
| home | COL | batter | RF | Troy Johnston | worse | 11 | 4 | 7 | 5 | 6 | predicted_BB | 1.6480 | boost | better |
| home | COL | batter | CF | Cole Carrigg | better | 10 | 8 | 2 | 8 | 2 | predicted_RBI | 1.6000 | boost | better |
| home | COL | batter | 1B | TJ Rumfield | worse | 9 | 1 | 8 | 2 | 7 | predicted_BB | 1.5960 | boost | better |
| home | COL | batter | 2B | Edouard Julien | worse | 11 | 4 | 7 | 3 | 8 | predicted_BB | 1.5090 | boost | better |
| home | COL | batter | LF | Sterlin Thompson | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.5000 | boost | worse |
| home | COL | batter | DH | Hunter Goodman | better | 10 | 7 | 3 | 8 | 2 | predicted_RBI | 1.2800 | boost | better |
| away | CHC | batter | 2B | Nico Hoerner | better | 11 | 7 | 4 | 8 | 3 | predicted_AB | -1.2000 | deboost | worse |
| away | CHC | batter | CF | Pete Crow-Armstrong | better | 11 | 5 | 6 | 6 | 5 | predicted_SO | -1.0570 | deboost | better |
| away | CHC | batter | LF | Ian Happ | worse | 10 | 3 | 7 | 4 | 6 | predicted_AB | -1.0400 | deboost | worse |
| away | CHC | batter | 3B | Alex Bregman | worse | 10 | 3 | 7 | 2 | 8 | predicted_H | -0.9900 | deboost | worse |
| away | CHC | batter | SS | Dansby Swanson | worse | 11 | 2 | 9 | 3 | 8 | predicted_SO | -0.9010 | deboost | better |
| home | COL | batter | C | Brett Sullivan | worse | 10 | 4 | 6 | 3 | 7 | predicted_R | 0.8260 | boost | better |
| away | CHC | pitcher | Starter | Edward Cabrera | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.8000 | deboost | worse |
| home | COL | batter | SS | Ezequiel Tovar | worse | 10 | 1 | 9 | 1 | 9 | predicted_H | -0.7700 | deboost | worse |
| away | CHC | batter | C | Carson Kelly | worse | 10 | 5 | 5 | 4 | 6 | predicted_R | 0.4970 | boost | better |
| home | COL | pitcher | Middle Reliever | Antonio Senzatela | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| home | COL | pitcher | Middle Reliever | Juan Mejia | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | COL | pitcher | Middle Reliever | Seth Halvorsen | 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 | Edward Cabrera |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.3216 |
| ESPN Rank | 674 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1079 |
| Avg Velo | 91.6404 |
| Avg Spin | 2134.7467 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 4.2000 |
| Pre ER | 4 |
| Pre H | 3 |
| Pre BB | 5 |
| Pre SO | 4 |
| Season ERA | 4.9942 |
| Season WHIP | 1.4220 |
| Role Avg IP | 5.2420 |
| Recent Avg IP | 4.4670 |
| Last Start IP | 3.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"opponent": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"edges": {
"quality_edge": 0.1669,
"offense_edge": 0.0573,
"opponent_offense_edge": 0.0031,
"defense_strength": -0.0382,
"opponent_defense_weakness": 0.2102,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0054,
"run_prevention": 0.996,
"strikeout": 1.0048
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "665795",
"profile": {
"available": true,
"pitcher_id": "665795",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 210.0,
"k_percent": 21.5,
"bb_percent": 8.5,
"woba": 0.351,
"xwoba": 0.336,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 12.9,
"hard_hit_percent": 40.9,
"avg_best_speed": 81.5145,
"avg_hyper_speed": 95.1329,
"whiff_percent": 27.6,
"swing_percent": 47.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.7979,
"command_and_miss": 0.0479,
"regression_edge": 0.4286,
"xwoba_edge": -0.6,
"barrel_edge": -1.2444,
"hard_hit_edge": -0.3571,
"whiff_edge": 0.2857,
"bb_edge": 0.125,
"pitch_design_score": 0.1079
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "665795",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 91,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 91,
"pitch_usage": 0.0,
"release_speed": 91.64041999183891,
"release_spin_rate": 2134.7467183691774,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 91,
"pitch_usage": 0.0,
"release_speed": 91.64041999183891,
"release_spin_rate": 2134.7467183691774,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6404,
"release_spin_rate": 2134.7467,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1079,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7707,
"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.3216,
"sample_weight": 0.84,
"run_prevention_factor": 1.0273,
"strikeout_factor": 1.0038,
"walk_factor": 0.9916,
"homer_factor": 1.1107,
"woba_minus_xwoba": 0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665795",
"espn_id": 40944,
"player_name": "Edward Cabrera",
"team": "CHC",
"role": "pitcher",
"espn_rank": 674,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 674,
"gp_value": 11.0,
"gp_rank": 359,
"gs_value": 11.0,
"gs_rank": 88,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 4.9942,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 57.2,
"ip_rank": 107,
"h_value": 61.0,
"h_rank": 74,
"er_value": 32.0,
"er_rank": 52,
"hr_value": 11.0,
"hr_rank": 27,
"bb_value": 21.0,
"bb_rank": 85,
"k_value": 53.0,
"k_rank": 88,
"k_per_9_value": 8.271676,
"k_per_9_rank": 22,
"whip_value": 1.4219,
"whip_rank": null,
"war_value": -0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 4.0,
"factor": 1.0229,
"adjusted": 4
},
"predicted_H": {
"original": 6.0,
"factor": 1.0229,
"adjusted": 6
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9929,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.093,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0032,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 51.2,
"ER": 32,
"H": 60,
"BB": 20,
"SO": 48,
"HR": 11,
"ERA": 5.574193548387097,
"WHIP": 1.5483870967741937,
"K9": 8.361290322580645,
"HR9": 1.9161290322580646,
"games_pitched": 10,
"quality_starts": 3,
"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": "665795",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 91,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 91,
"pitch_usage": 0.0,
"release_speed": 91.64041999183891,
"release_spin_rate": 2134.7467183691774,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 91,
"pitch_usage": 0.0,
"release_speed": 91.64041999183891,
"release_spin_rate": 2134.7467183691774,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6404,
"release_spin_rate": 2134.7467,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1079,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.7707,
"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": "665795",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 11,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 22.1,
"ER": 20.0,
"R": 23.0,
"H": 31.0,
"BB": 9.0,
"SO": 24.0,
"HR": 8.0,
"BF": 103.0,
"Pitches": 406.0
},
"per_game": {
"IP": 4.1,
"ER": 4.0,
"R": 4.6,
"H": 6.2,
"BB": 1.8,
"SO": 4.8,
"HR": 1.6,
"BF": 20.6,
"Pitches": 81.2
},
"rates": {
"ERA": 8.0597,
"WHIP": 1.791,
"ER_per_IP": 0.89552,
"H_per_IP": 1.38806,
"BB_per_IP": 0.40299,
"SO_per_IP": 1.07463,
"HR_per_IP": 0.35821
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 51.2,
"ER": 32.0,
"R": 37.0,
"H": 60.0,
"BB": 20.0,
"SO": 48.0,
"HR": 11.0,
"BF": 228.0,
"Pitches": 874.0
},
"per_game": {
"IP": 5.1,
"ER": 3.2,
"R": 3.7,
"H": 6.0,
"BB": 2.0,
"SO": 4.8,
"HR": 1.1,
"BF": 22.8,
"Pitches": 87.4
},
"rates": {
"ERA": 5.5742,
"WHIP": 1.5484,
"ER_per_IP": 0.61935,
"H_per_IP": 1.16129,
"BB_per_IP": 0.3871,
"SO_per_IP": 0.92903,
"HR_per_IP": 0.2129
}
},
"season": {
"games": 11,
"totals": {
"IP": 57.2,
"ER": 32.0,
"R": 37.0,
"H": 61.0,
"BB": 21.0,
"SO": 53.0,
"HR": 11.0,
"BF": 247.0,
"Pitches": 954.0
},
"per_game": {
"IP": 5.1,
"ER": 2.9091,
"R": 3.3636,
"H": 5.5455,
"BB": 1.9091,
"SO": 4.8182,
"HR": 1.0,
"BF": 22.4545,
"Pitches": 86.7273
},
"rates": {
"ERA": 4.9942,
"WHIP": 1.422,
"ER_per_IP": 0.55491,
"H_per_IP": 1.0578,
"BB_per_IP": 0.36416,
"SO_per_IP": 0.91908,
"HR_per_IP": 0.19075
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 3.219,
"predicted_H": 5.679,
"predicted_BB": 1.879,
"predicted_SO": 4.796,
"predicted_HR": 1.143,
"predicted_ERA": 5.8885,
"predicted_WHIP": 1.5362
}
}{
"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": 4.0,
"form": 3.219,
"final": 3.5955,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 5.679,
"final": 4.3876,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 5.0,
"form": 1.879,
"final": 3.3834,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 4.796,
"final": 4.4123,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 1.143,
"final": 1.0741,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.8885,
"final": 5.8885,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5362,
"final": 1.5362,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Caleb Thielbar |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0737 |
| ESPN Rank | 346 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0938 |
| Avg Velo | 88.0381 |
| Avg Spin | 2392.8065 |
| 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 | 3.3061 |
| Season WHIP | 1.1633 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"opponent": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"edges": {
"quality_edge": 0.1669,
"offense_edge": 0.0573,
"opponent_offense_edge": 0.0031,
"defense_strength": -0.0382,
"opponent_defense_weakness": 0.2102,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0054,
"run_prevention": 0.996,
"strikeout": 1.0048
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "573204",
"profile": {
"available": true,
"pitcher_id": "573204",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 52.0,
"k_percent": 27.5,
"bb_percent": 10.1,
"woba": 0.312,
"xwoba": 0.3,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 11.9,
"hard_hit_percent": 37.2,
"avg_best_speed": 75.9202,
"avg_hyper_speed": 94.5924,
"whiff_percent": 27.7,
"swing_percent": 52.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0783,
"command_and_miss": 0.3586,
"regression_edge": 0.3429,
"xwoba_edge": 0.4286,
"barrel_edge": -1.0222,
"hard_hit_edge": 0.1714,
"whiff_edge": 0.3,
"bb_edge": -0.275,
"pitch_design_score": -0.0938
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "573204",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 88.0381017132449,
"release_spin_rate": 2392.8064756255285,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 88.0381017132449,
"release_spin_rate": 2392.8064756255285,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0381,
"release_spin_rate": 2392.8065,
"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.0938,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.6703,
"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.0737,
"sample_weight": 0.45,
"run_prevention_factor": 0.9937,
"strikeout_factor": 1.0177,
"walk_factor": 1.0099,
"homer_factor": 1.0279,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "573204",
"espn_id": 32440,
"player_name": "Caleb Thielbar",
"team": "CHC",
"role": "pitcher",
"espn_rank": 346,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 346,
"gp_value": 19.0,
"gp_rank": 178,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.8571,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 3.0,
"hld_rank": 136,
"ip_value": 16.1,
"ip_rank": 406,
"h_value": 13.0,
"h_rank": 425,
"er_value": 7.0,
"er_rank": 403,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 19.0,
"k_rank": 345,
"k_per_9_value": 10.469388,
"k_per_9_rank": 22,
"whip_value": 1.2857,
"whip_rank": null,
"war_value": 0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9972,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9972,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0045,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0126,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.008,
"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": 7,
"BB": 3,
"SO": 8,
"HR": 2,
"ERA": 4.32,
"WHIP": 1.2000000000000002,
"K9": 8.64,
"HR9": 2.16,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "573204",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 88.0381017132449,
"release_spin_rate": 2392.8064756255285,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 88.0381017132449,
"release_spin_rate": 2392.8064756255285,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0381,
"release_spin_rate": 2392.8065,
"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.0938,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.6703,
"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.227,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3922,
"prior_weight": 0.6078
},
"role": "pitcher",
"player_id": "573204",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 18,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 2.0,
"SO": 6.0,
"HR": 2.0,
"BF": 19.0,
"Pitches": 87.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 0.4,
"SO": 1.2,
"HR": 0.4,
"BF": 3.8,
"Pitches": 17.4
},
"rates": {
"ERA": 5.7857,
"WHIP": 1.2857,
"ER_per_IP": 0.64286,
"H_per_IP": 0.85714,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.42857
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 3.0,
"SO": 9.0,
"HR": 2.0,
"BF": 38.0,
"Pitches": 161.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.3,
"SO": 0.9,
"HR": 0.2,
"BF": 3.8,
"Pitches": 16.1
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.1786,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 0.32143,
"SO_per_IP": 0.96429,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 18,
"totals": {
"IP": 16.1,
"ER": 6.0,
"R": 7.0,
"H": 12.0,
"BB": 7.0,
"SO": 19.0,
"HR": 3.0,
"BF": 68.0,
"Pitches": 292.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3333,
"R": 0.3889,
"H": 0.6667,
"BB": 0.3889,
"SO": 1.0556,
"HR": 0.1667,
"BF": 3.7778,
"Pitches": 16.2222
},
"rates": {
"ERA": 3.3061,
"WHIP": 1.1633,
"ER_per_IP": 0.36735,
"H_per_IP": 0.73469,
"BB_per_IP": 0.42857,
"SO_per_IP": 1.16327,
"HR_per_IP": 0.18367
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.497,
"predicted_H": 0.91,
"predicted_BB": 0.375,
"predicted_SO": 1.019,
"predicted_HR": 0.205,
"predicted_ERA": 4.4687,
"predicted_WHIP": 1.2852
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6068,
"form_weight": 0.3932,
"form_reliability": 0.3922,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.227,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3922,
"prior_weight": 0.6078
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.497,
"final": 0.1954,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.91,
"final": 0.3578,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.375,
"final": 0.1475,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.019,
"final": 1.0075,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.205,
"final": 0.0806,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4687,
"final": 4.4687,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2852,
"final": 1.2852,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Daniel Palencia |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0522 |
| ESPN Rank | 230 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.2979 |
| Season WHIP | 1.2128 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"opponent": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"edges": {
"quality_edge": 0.1669,
"offense_edge": 0.0573,
"opponent_offense_edge": 0.0031,
"defense_strength": -0.0382,
"opponent_defense_weakness": 0.2102,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0054,
"run_prevention": 0.996,
"strikeout": 1.0048
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "694037",
"profile": {
"available": true,
"pitcher_id": "694037",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 40.0,
"k_percent": 23.9,
"bb_percent": 7.5,
"woba": 0.32,
"xwoba": 0.308,
"sweet_spot_percent": 54.3,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 30.4,
"avg_best_speed": 80.2456,
"avg_hyper_speed": 93.2588,
"whiff_percent": 30.9,
"swing_percent": 51.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.0479,
"command_and_miss": 0.4171,
"regression_edge": 0.3429,
"xwoba_edge": 0.2,
"barrel_edge": 0.1778,
"hard_hit_edge": 1.1429,
"whiff_edge": 0.7571,
"bb_edge": 0.375,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "694037",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0522,
"sample_weight": 0.45,
"run_prevention_factor": 0.9956,
"strikeout_factor": 1.0167,
"walk_factor": 0.9865,
"homer_factor": 0.9703,
"woba_minus_xwoba": 0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694037",
"espn_id": 4875225,
"player_name": "Daniel Palencia",
"team": "CHC",
"role": "pitcher",
"espn_rank": 230,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 230,
"gp_value": 18.0,
"gp_rank": 186,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.8723,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 3.0,
"sv_rank": 43,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 15.2,
"ip_rank": 415,
"h_value": 17.0,
"h_rank": 363,
"er_value": 5.0,
"er_rank": 477,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 5.0,
"bb_rank": 454,
"k_value": 16.0,
"k_rank": 380,
"k_per_9_value": 9.191489,
"k_per_9_rank": 24,
"whip_value": 1.4042,
"whip_rank": null,
"war_value": 0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.998,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.998,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9939,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9866,
"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": 8.2,
"ER": 2,
"H": 9,
"BB": 2,
"SO": 9,
"HR": 1,
"ERA": 2.076923076923077,
"WHIP": 1.2692307692307694,
"K9": 9.346153846153847,
"HR9": 1.0384615384615385,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "694037",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.095,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3823,
"prior_weight": 0.6177
},
"role": "pitcher",
"player_id": "694037",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 17,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 0.0,
"SO": 4.0,
"HR": 0.0,
"BF": 18.0,
"Pitches": 75.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.0,
"SO": 0.8,
"HR": 0.0,
"BF": 3.6,
"Pitches": 15.0
},
"rates": {
"ERA": 1.8,
"WHIP": 0.8,
"ER_per_IP": 0.2,
"H_per_IP": 0.8,
"BB_per_IP": 0.0,
"SO_per_IP": 0.8,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 11.0,
"BB": 2.0,
"SO": 10.0,
"HR": 2.0,
"BF": 40.0,
"Pitches": 158.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.1,
"BB": 0.2,
"SO": 1.0,
"HR": 0.2,
"BF": 4.0,
"Pitches": 15.8
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.3929,
"ER_per_IP": 0.42857,
"H_per_IP": 1.17857,
"BB_per_IP": 0.21429,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 17,
"totals": {
"IP": 15.2,
"ER": 4.0,
"R": 4.0,
"H": 15.0,
"BB": 4.0,
"SO": 16.0,
"HR": 2.0,
"BF": 64.0,
"Pitches": 251.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2353,
"R": 0.2353,
"H": 0.8824,
"BB": 0.2353,
"SO": 0.9412,
"HR": 0.1176,
"BF": 3.7647,
"Pitches": 14.7647
},
"rates": {
"ERA": 2.2979,
"WHIP": 1.2128,
"ER_per_IP": 0.25532,
"H_per_IP": 0.95745,
"BB_per_IP": 0.25532,
"SO_per_IP": 1.02128,
"HR_per_IP": 0.12766
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.412,
"predicted_H": 0.961,
"predicted_BB": 0.274,
"predicted_SO": 0.937,
"predicted_HR": 0.125,
"predicted_ERA": 3.7035,
"predicted_WHIP": 1.2351
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.611,
"form_weight": 0.389,
"form_reliability": 0.3823,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.095,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3823,
"prior_weight": 0.6177
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.412,
"final": 0.1603,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.961,
"final": 0.3738,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.274,
"final": 0.1066,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.937,
"final": 0.9755,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.125,
"final": 0.0486,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7035,
"final": 3.7035,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2351,
"final": 1.2351,
"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 | Hoby Milner |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2975 |
| ESPN Rank | 377 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 83.7464 |
| Avg Spin | 1827.9221 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 4.0345 |
| Season WHIP | 1.1379 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"opponent": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"edges": {
"quality_edge": 0.1669,
"offense_edge": 0.0573,
"opponent_offense_edge": 0.0031,
"defense_strength": -0.0382,
"opponent_defense_weakness": 0.2102,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0054,
"run_prevention": 0.996,
"strikeout": 1.0048
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "571948",
"profile": {
"available": true,
"pitcher_id": "571948",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 96.0,
"k_percent": 12.4,
"bb_percent": 5.8,
"woba": 0.292,
"xwoba": 0.358,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 36.5,
"avg_best_speed": 78.7085,
"avg_hyper_speed": 93.6258,
"whiff_percent": 17.6,
"swing_percent": 45.5
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.3848,
"command_and_miss": -0.9021,
"regression_edge": -1.8857,
"xwoba_edge": -1.2286,
"barrel_edge": 0.2222,
"hard_hit_edge": 0.2714,
"whiff_edge": -1.1429,
"bb_edge": 0.8,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "571948",
"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": 83.74641784753918,
"release_spin_rate": 1827.9221290270189,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 83.74641784753918,
"release_spin_rate": 1827.9221290270189,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 83.7464,
"release_spin_rate": 1827.9221,
"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.2975,
"sample_weight": 0.45,
"run_prevention_factor": 1.0253,
"strikeout_factor": 0.9529,
"walk_factor": 0.9712,
"homer_factor": 1.0037,
"woba_minus_xwoba": -0.066,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "571948",
"espn_id": 36088,
"player_name": "Hoby Milner",
"team": "CHC",
"role": "pitcher",
"espn_rank": 377,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 377,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.0344,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 5.0,
"hld_rank": 79,
"ip_value": 29.0,
"ip_rank": 238,
"h_value": 26.0,
"h_rank": 231,
"er_value": 13.0,
"er_rank": 224,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 7.0,
"bb_rank": 371,
"k_value": 15.0,
"k_rank": 394,
"k_per_9_value": 4.6551723,
"k_per_9_rank": 44,
"whip_value": 1.1379,
"whip_rank": null,
"war_value": 0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0114,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0114,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.987,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0017,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9788,
"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": 8,
"H": 12,
"BB": 1,
"SO": 8,
"HR": 1,
"ERA": 8.307692307692308,
"WHIP": 1.5,
"K9": 8.307692307692308,
"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-09T00:00:00"
}{
"available": true,
"pitcher_id": "571948",
"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": 83.74641784753918,
"release_spin_rate": 1827.9221290270189,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 83.74641784753918,
"release_spin_rate": 1827.9221290270189,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 83.7464,
"release_spin_rate": 1827.9221,
"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.729,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.534,
"prior_weight": 0.466
},
"role": "pitcher",
"player_id": "571948",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 6.0,
"R": 6.0,
"H": 6.0,
"BB": 1.0,
"SO": 3.0,
"HR": 1.0,
"BF": 20.0,
"Pitches": 63.0
},
"per_game": {
"IP": 0.2,
"ER": 1.2,
"R": 1.2,
"H": 1.2,
"BB": 0.2,
"SO": 0.6,
"HR": 0.2,
"BF": 4.0,
"Pitches": 12.6
},
"rates": {
"ERA": 13.5,
"WHIP": 1.75,
"ER_per_IP": 1.5,
"H_per_IP": 1.5,
"BB_per_IP": 0.25,
"SO_per_IP": 0.75,
"HR_per_IP": 0.25
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 8.0,
"R": 8.0,
"H": 12.0,
"BB": 1.0,
"SO": 8.0,
"HR": 1.0,
"BF": 40.0,
"Pitches": 146.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.2,
"BB": 0.1,
"SO": 0.8,
"HR": 0.1,
"BF": 4.0,
"Pitches": 14.6
},
"rates": {
"ERA": 8.3077,
"WHIP": 1.5,
"ER_per_IP": 0.92308,
"H_per_IP": 1.38462,
"BB_per_IP": 0.11538,
"SO_per_IP": 0.92308,
"HR_per_IP": 0.11538
}
},
"season": {
"games": 30,
"totals": {
"IP": 29.0,
"ER": 13.0,
"R": 13.0,
"H": 26.0,
"BB": 7.0,
"SO": 15.0,
"HR": 3.0,
"BF": 121.0,
"Pitches": 448.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4333,
"R": 0.4333,
"H": 0.8667,
"BB": 0.2333,
"SO": 0.5,
"HR": 0.1,
"BF": 4.0333,
"Pitches": 14.9333
},
"rates": {
"ERA": 4.0345,
"WHIP": 1.1379,
"ER_per_IP": 0.44828,
"H_per_IP": 0.89655,
"BB_per_IP": 0.24138,
"SO_per_IP": 0.51724,
"HR_per_IP": 0.10345
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.743,
"predicted_H": 1.069,
"predicted_BB": 0.255,
"predicted_SO": 0.776,
"predicted_HR": 0.146,
"predicted_ERA": 7.2661,
"predicted_WHIP": 1.4398
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5469,
"form_weight": 0.4531,
"form_reliability": 0.534,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.729,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.534,
"prior_weight": 0.466
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.743,
"final": 0.3367,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.069,
"final": 0.4844,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.255,
"final": 1.2093,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 0.776,
"final": 1.9923,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.146,
"final": 0.0662,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 7.2661,
"final": 7.2661,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4398,
"final": 1.4398,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jacob Webb |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0047 |
| ESPN Rank | 291 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0269 |
| Avg Velo | 89.2337 |
| Avg Spin | 2395.7821 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 2.7614 |
| Season WHIP | 1.3295 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"opponent": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"edges": {
"quality_edge": 0.1669,
"offense_edge": 0.0573,
"opponent_offense_edge": 0.0031,
"defense_strength": -0.0382,
"opponent_defense_weakness": 0.2102,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0054,
"run_prevention": 0.996,
"strikeout": 1.0048
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "657097",
"profile": {
"available": true,
"pitcher_id": "657097",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 101.0,
"k_percent": 27.8,
"bb_percent": 7.9,
"woba": 0.305,
"xwoba": 0.312,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 48.1,
"avg_best_speed": 80.5832,
"avg_hyper_speed": 95.0825,
"whiff_percent": 31.5,
"swing_percent": 52.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.2937,
"command_and_miss": 0.6779,
"regression_edge": -0.2,
"xwoba_edge": 0.0857,
"barrel_edge": -0.3333,
"hard_hit_edge": -1.3857,
"whiff_edge": 0.8429,
"bb_edge": 0.275,
"pitch_design_score": -0.0269
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "657097",
"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": 89.23370860093821,
"release_spin_rate": 2395.782062758799,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.23370860093821,
"release_spin_rate": 2395.782062758799,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2337,
"release_spin_rate": 2395.7821,
"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.0269,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.192,
"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.0047,
"sample_weight": 0.45,
"run_prevention_factor": 1.0004,
"strikeout_factor": 1.0283,
"walk_factor": 0.9901,
"homer_factor": 1.0358,
"woba_minus_xwoba": -0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657097",
"espn_id": 40384,
"player_name": "Jacob Webb",
"team": "CHC",
"role": "pitcher",
"espn_rank": 291,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 291,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.7613,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 29.1,
"ip_rank": 227,
"h_value": 29.0,
"h_rank": 194,
"er_value": 9.0,
"er_rank": 329,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 35.0,
"k_rank": 176,
"k_per_9_value": 10.738636,
"k_per_9_rank": 20,
"whip_value": 1.3295,
"whip_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0002,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0002,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9955,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0161,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0127,
"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": 2,
"H": 10,
"BB": 2,
"SO": 15,
"HR": 1,
"ERA": 1.6363636363636365,
"WHIP": 1.0909090909090908,
"K9": 12.272727272727273,
"HR9": 0.8181818181818182,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "657097",
"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": 89.23370860093821,
"release_spin_rate": 2395.782062758799,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.23370860093821,
"release_spin_rate": 2395.782062758799,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2337,
"release_spin_rate": 2395.7821,
"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.0269,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.192,
"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.795,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5368,
"prior_weight": 0.4632
},
"role": "pitcher",
"player_id": "657097",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 2.0,
"SO": 5.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 86.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.4,
"SO": 1.0,
"HR": 0.2,
"BF": 4.8,
"Pitches": 17.2
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.2353,
"ER_per_IP": 0.35294,
"H_per_IP": 0.88235,
"BB_per_IP": 0.35294,
"SO_per_IP": 0.88235,
"HR_per_IP": 0.17647
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.0,
"ER": 2.0,
"R": 2.0,
"H": 10.0,
"BB": 2.0,
"SO": 15.0,
"HR": 1.0,
"BF": 45.0,
"Pitches": 181.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.0,
"BB": 0.2,
"SO": 1.5,
"HR": 0.1,
"BF": 4.5,
"Pitches": 18.1
},
"rates": {
"ERA": 1.6364,
"WHIP": 1.0909,
"ER_per_IP": 0.18182,
"H_per_IP": 0.90909,
"BB_per_IP": 0.18182,
"SO_per_IP": 1.36364,
"HR_per_IP": 0.09091
}
},
"season": {
"games": 29,
"totals": {
"IP": 29.1,
"ER": 9.0,
"R": 12.0,
"H": 29.0,
"BB": 10.0,
"SO": 35.0,
"HR": 4.0,
"BF": 126.0,
"Pitches": 516.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3103,
"R": 0.4138,
"H": 1.0,
"BB": 0.3448,
"SO": 1.2069,
"HR": 0.1379,
"BF": 4.3448,
"Pitches": 17.7931
},
"rates": {
"ERA": 2.7614,
"WHIP": 1.3295,
"ER_per_IP": 0.30682,
"H_per_IP": 0.98864,
"BB_per_IP": 0.34091,
"SO_per_IP": 1.19318,
"HR_per_IP": 0.13636
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.377,
"predicted_H": 0.935,
"predicted_BB": 0.325,
"predicted_SO": 1.031,
"predicted_HR": 0.14,
"predicted_ERA": 3.3974,
"predicted_WHIP": 1.2597
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5457,
"form_weight": 0.4543,
"form_reliability": 0.5368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.795,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5368,
"prior_weight": 0.4632
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.377,
"final": 0.1713,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.935,
"final": 1.5162,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.325,
"final": 0.1476,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.031,
"final": 1.5598,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.14,
"final": 0.0636,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.3974,
"final": 3.3974,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2597,
"final": 1.2597,
"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 | Phil Maton |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2772 |
| ESPN Rank | 644 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.3034 |
| Avg Spin | 2720.3690 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 6.8571 |
| Season WHIP | 1.7619 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"opponent": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"edges": {
"quality_edge": 0.1669,
"offense_edge": 0.0573,
"opponent_offense_edge": 0.0031,
"defense_strength": -0.0382,
"opponent_defense_weakness": 0.2102,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0054,
"run_prevention": 0.996,
"strikeout": 1.0048
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "664208",
"profile": {
"available": true,
"pitcher_id": "664208",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 75.0,
"k_percent": 23.8,
"bb_percent": 10.9,
"woba": 0.397,
"xwoba": 0.363,
"sweet_spot_percent": 39.7,
"barrel_batted_rate": 11.1,
"hard_hit_percent": 44.4,
"avg_best_speed": 76.8608,
"avg_hyper_speed": 94.6343,
"whiff_percent": 26.1,
"swing_percent": 45.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.2338,
"command_and_miss": 0.0007,
"regression_edge": 0.9714,
"xwoba_edge": -1.3714,
"barrel_edge": -0.8444,
"hard_hit_edge": -0.8571,
"whiff_edge": 0.0714,
"bb_edge": -0.475,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "664208",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 84.30340978475898,
"release_spin_rate": 2720.368979111612,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 84.30340978475898,
"release_spin_rate": 2720.368979111612,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3034,
"release_spin_rate": 2720.369,
"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.2772,
"sample_weight": 0.45,
"run_prevention_factor": 1.0236,
"strikeout_factor": 1.0041,
"walk_factor": 1.0171,
"homer_factor": 1.0643,
"woba_minus_xwoba": 0.034,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "664208",
"espn_id": 36161,
"player_name": "Phil Maton",
"team": "CHC",
"role": "pitcher",
"espn_rank": 644,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 644,
"gp_value": 24.0,
"gp_rank": 119,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.8571,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 21.0,
"ip_rank": 346,
"h_value": 26.0,
"h_rank": 231,
"er_value": 16.0,
"er_rank": 174,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 24.0,
"k_rank": 291,
"k_per_9_value": 10.285715,
"k_per_9_rank": 22,
"whip_value": 1.7619,
"whip_rank": null,
"war_value": -0.59,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0106,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0106,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0077,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0289,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0018,
"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": 10,
"BB": 5,
"SO": 8,
"HR": 0,
"ERA": 3.115384615384615,
"WHIP": 1.7307692307692306,
"K9": 8.307692307692307,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "664208",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 84.30340978475898,
"release_spin_rate": 2720.368979111612,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 84.30340978475898,
"release_spin_rate": 2720.368979111612,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3034,
"release_spin_rate": 2720.369,
"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.149,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4535,
"prior_weight": 0.5465
},
"role": "pitcher",
"player_id": "664208",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 2.0,
"R": 2.0,
"H": 7.0,
"BB": 1.0,
"SO": 4.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 80.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 1.4,
"BB": 0.2,
"SO": 0.8,
"HR": 0.0,
"BF": 4.0,
"Pitches": 16.0
},
"rates": {
"ERA": 4.5,
"WHIP": 2.0,
"ER_per_IP": 0.5,
"H_per_IP": 1.75,
"BB_per_IP": 0.25,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.2,
"ER": 3.0,
"R": 3.0,
"H": 10.0,
"BB": 5.0,
"SO": 8.0,
"HR": 0.0,
"BF": 40.0,
"Pitches": 165.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 1.0,
"BB": 0.5,
"SO": 0.8,
"HR": 0.0,
"BF": 4.0,
"Pitches": 16.5
},
"rates": {
"ERA": 3.1154,
"WHIP": 1.7308,
"ER_per_IP": 0.34615,
"H_per_IP": 1.15385,
"BB_per_IP": 0.57692,
"SO_per_IP": 0.92308,
"HR_per_IP": 0.0
}
},
"season": {
"games": 24,
"totals": {
"IP": 21.0,
"ER": 16.0,
"R": 16.0,
"H": 26.0,
"BB": 11.0,
"SO": 24.0,
"HR": 3.0,
"BF": 101.0,
"Pitches": 412.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6667,
"R": 0.6667,
"H": 1.0833,
"BB": 0.4583,
"SO": 1.0,
"HR": 0.125,
"BF": 4.2083,
"Pitches": 17.1667
},
"rates": {
"ERA": 6.8571,
"WHIP": 1.7619,
"ER_per_IP": 0.7619,
"H_per_IP": 1.2381,
"BB_per_IP": 0.52381,
"SO_per_IP": 1.14286,
"HR_per_IP": 0.14286
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.279,
"predicted_H": 0.668,
"predicted_BB": 0.221,
"predicted_SO": 0.548,
"predicted_HR": 0.051,
"predicted_ERA": 4.4254,
"predicted_WHIP": 1.5667
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5809,
"form_weight": 0.4191,
"form_reliability": 0.4535,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.149,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4535,
"prior_weight": 0.5465
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.279,
"final": 0.1169,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.668,
"final": 0.8609,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.221,
"final": 1.2544,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.548,
"final": 0.2297,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.051,
"final": 0.0214,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4254,
"final": 4.4254,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5667,
"final": 1.5667,
"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.136 | 0.000 | 0.000 | Hitting_2B | 0.136 | 0.000 | -0.136 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.540 | 5.000 | 7.000 | Hitting_AB | 4.117 | 2.000 | 0.883 | 3.000 |
| predicted_AVG | 0.218 | 0.000 | 0.286 | Hitting_AVG | 0.258 | 0.000 | -0.258 | 0.000 |
| predicted_BB | 0.513 | 0.000 | 1.000 | Hitting_BB | 0.513 | 2.000 | -0.513 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.015 | 0.000 | -0.015 | 0.000 |
| predicted_H | 0.990 | 0.000 | 2.000 | Hitting_H | 1.064 | 0.000 | -1.064 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.068 | 0.000 | -0.068 | 0.000 |
| predicted_OBP | 0.310 | 0.000 | 0.375 | Hitting_OBP | 0.347 | 0.500 | -0.347 | -0.500 |
| predicted_R | 0.494 | 0.000 | 1.000 | Hitting_R | 0.494 | 0.000 | -0.494 | 0.000 |
| predicted_RBI | 0.390 | 0.000 | 1.000 | Hitting_RBI | 0.317 | 0.000 | -0.317 | 0.000 |
| predicted_SLG | 0.338 | 0.000 | 0.286 | Hitting_SLG | 0.350 | 0.000 | -0.350 | 0.000 |
| predicted_SO | 0.789 | 1.000 | 1.000 | Hitting_SO | 0.789 | 0.000 | 0.211 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 4.5400 -> 5.0000 (boost 0.4600, better) |
| Biggest Deboost | predicted_H: 0.9900 -> 0.0000 (deboost -0.9900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 7 | 1 | 6 | 2 | predicted_AB: 4.5400 -> 7.4748 (boost 2.9348, better) | predicted_SLG: 0.3380 -> 0.3170 (deboost -0.0210, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_SLG: 0.3170 -> 0.3083 (deboost -0.0087, 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.6130 -> 1.0000 (boost 0.3870, better) | predicted_AB: 7.4748 -> 7.0000 (deboost -0.4748, worse) | AB rounded to 7 (raw=7.47), rates preserved: AVG=0.219 HR/AB=0.019 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8023 -> 1.0000 (boost 0.1977, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2190 -> 0.2860 (boost 0.0670, better) | predicted_SLG: 0.3083 -> 0.2860 (deboost -0.0223, 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 | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3083 (boost 0.0223, better) | predicted_AVG: 0.2860 -> 0.2190 (deboost -0.0670, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "608324",
"player_name": "Alex Bregman",
"position": "3B",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.136,
"predicted_3B": 0.019,
"predicted_AB": 4.54,
"predicted_AVG": 0.218,
"predicted_BB": 0.513,
"predicted_H": 0.99,
"predicted_HR": 0.1,
"predicted_OBP": 0.31,
"predicted_R": 0.494,
"predicted_RBI": 0.39,
"predicted_SLG": 0.338,
"predicted_SO": 0.789
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2034,
"predicted_3B": 0.0243,
"predicted_AB": 7.4748,
"predicted_AVG": 0.2153,
"predicted_BB": 1.0399,
"predicted_H": 1.5997,
"predicted_HBP": 0.098,
"predicted_HR": 0.1337,
"predicted_OBP": 0.3133,
"predicted_R": 0.7732,
"predicted_RBI": 0.5907,
"predicted_SLG": 0.317,
"predicted_SO": 1.3735
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.136,
"after": 0.2034,
"delta": 0.0674,
"percent_delta": 0.4956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0243,
"delta": 0.0053,
"percent_delta": 0.2789,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.54,
"after": 7.4748,
"delta": 2.9348,
"percent_delta": 0.6464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2153,
"delta": -0.0027,
"percent_delta": -0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.513,
"after": 1.0399,
"delta": 0.5269,
"percent_delta": 1.0271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.5997,
"delta": 0.6097,
"percent_delta": 0.6159,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1337,
"delta": 0.0337,
"percent_delta": 0.337,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.3133,
"delta": 0.0033,
"percent_delta": 0.0106,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.494,
"after": 0.7732,
"delta": 0.2792,
"percent_delta": 0.5652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.5907,
"delta": 0.2007,
"percent_delta": 0.5146,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.338,
"after": 0.317,
"delta": -0.021,
"percent_delta": -0.0621,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.789,
"after": 1.3735,
"delta": 0.5845,
"percent_delta": 0.7408,
"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.54,
"after": 7.4748,
"delta": 2.9348,
"percent_delta": 0.6464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.338,
"after": 0.317,
"delta": -0.021,
"percent_delta": -0.0621,
"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.2034,
"predicted_3B": 0.0243,
"predicted_AB": 7.4748,
"predicted_AVG": 0.219,
"predicted_BB": 1.0475,
"predicted_H": 1.6368,
"predicted_HBP": 0.098,
"predicted_HR": 0.1385,
"predicted_OBP": 0.315,
"predicted_R": 0.8023,
"predicted_RBI": 0.613,
"predicted_SLG": 0.3083,
"predicted_SO": 1.3635
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2034,
"after": 0.2034,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0243,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.4748,
"after": 7.4748,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2153,
"after": 0.219,
"delta": 0.0037,
"percent_delta": 0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0399,
"after": 1.0475,
"delta": 0.0076,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5997,
"after": 1.6368,
"delta": 0.0371,
"percent_delta": 0.0232,
"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.1337,
"after": 0.1385,
"delta": 0.0048,
"percent_delta": 0.0359,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3133,
"after": 0.315,
"delta": 0.0017,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7732,
"after": 0.8023,
"delta": 0.0291,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5907,
"after": 0.613,
"delta": 0.0223,
"percent_delta": 0.0378,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.317,
"after": 0.3083,
"delta": -0.0087,
"percent_delta": -0.0274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3735,
"after": 1.3635,
"delta": -0.01,
"percent_delta": -0.0073,
"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.317,
"after": 0.3083,
"delta": -0.0087,
"percent_delta": -0.0274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.47), rates preserved: AVG=0.219 HR/AB=0.019",
"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.2034,
"after": 0.0,
"delta": -0.2034,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0,
"delta": -0.0243,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.4748,
"after": 7.0,
"delta": -0.4748,
"percent_delta": -0.0635,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0475,
"after": 1.0,
"delta": -0.0475,
"percent_delta": -0.0453,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6368,
"after": 2.0,
"delta": 0.3632,
"percent_delta": 0.2219,
"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.1385,
"after": 0.0,
"delta": -0.1385,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.613,
"after": 1.0,
"delta": 0.387,
"percent_delta": 0.6313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3635,
"after": 1.0,
"delta": -0.3635,
"percent_delta": -0.2666,
"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.613,
"after": 1.0,
"delta": 0.387,
"percent_delta": 0.6313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.4748,
"after": 7.0,
"delta": -0.4748,
"percent_delta": -0.0635,
"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.8023,
"after": 1.0,
"delta": 0.1977,
"percent_delta": 0.2464,
"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.8023,
"after": 1.0,
"delta": 0.1977,
"percent_delta": 0.2464,
"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.219,
"after": 0.286,
"delta": 0.067,
"percent_delta": 0.3059,
"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.315,
"after": 0.375,
"delta": 0.06,
"percent_delta": 0.1905,
"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.3083,
"after": 0.286,
"delta": -0.0223,
"percent_delta": -0.0723,
"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.219,
"after": 0.286,
"delta": 0.067,
"percent_delta": 0.3059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3083,
"after": 0.286,
"delta": -0.0223,
"percent_delta": -0.0723,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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.219,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.315,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3083,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.219,
"delta": -0.067,
"percent_delta": -0.2343,
"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.315,
"delta": -0.06,
"percent_delta": -0.1601,
"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.3083,
"delta": 0.0223,
"percent_delta": 0.0779,
"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.3083,
"delta": 0.0223,
"percent_delta": 0.0779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.219,
"delta": -0.067,
"percent_delta": -0.2343,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.136,
"after": 0.0,
"delta": -0.136,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.54,
"after": 5.0,
"delta": 0.46,
"percent_delta": 0.1013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.219,
"delta": 0.001,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.513,
"after": 0.0,
"delta": -0.513,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.315,
"delta": 0.005,
"percent_delta": 0.0161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.494,
"after": 0.0,
"delta": -0.494,
"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.338,
"after": 0.3083,
"delta": -0.0297,
"percent_delta": -0.0879,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.789,
"after": 1.0,
"delta": 0.211,
"percent_delta": 0.2674,
"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": 4.54,
"after": 5.0,
"delta": 0.46,
"percent_delta": 0.1013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.99,
"after": 0.0,
"delta": -0.99,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.136 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 4.540 | - |
| predicted_AVG | 0.218 | - |
| predicted_BB | 0.513 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.310 | - |
| predicted_R | 0.494 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.338 | - |
| predicted_SO | 0.789 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.203 | 0.067 |
| predicted_3B | 0.024 | 0.005 |
| predicted_AB | 7.475 | 2.935 |
| predicted_AVG | 0.215 | -0.003 |
| predicted_BB | 1.040 | 0.527 |
| predicted_H | 1.600 | 0.610 |
| predicted_HBP | 0.098 | - |
| predicted_HR | 0.134 | 0.034 |
| predicted_OBP | 0.313 | 0.003 |
| predicted_R | 0.773 | 0.279 |
| predicted_RBI | 0.591 | 0.201 |
| predicted_SLG | 0.317 | -0.021 |
| predicted_SO | 1.373 | 0.584 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.203 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 7.475 | 0.000 |
| predicted_AVG | 0.219 | 0.004 |
| predicted_BB | 1.048 | 0.008 |
| predicted_H | 1.637 | 0.037 |
| predicted_HBP | 0.098 | 0.000 |
| predicted_HR | 0.139 | 0.005 |
| predicted_OBP | 0.315 | 0.002 |
| predicted_R | 0.802 | 0.029 |
| predicted_RBI | 0.613 | 0.022 |
| predicted_SLG | 0.308 | -0.009 |
| predicted_SO | 1.363 | -0.010 |
AB rounded to 7 (raw=7.47), rates preserved: AVG=0.219 HR/AB=0.019
| 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.203 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 7.000 | -0.475 |
| predicted_AVG | 0.286 | 0.067 |
| predicted_BB | 1.000 | -0.048 |
| predicted_H | 2.000 | 0.363 |
| predicted_HR | 0.000 | -0.139 |
| predicted_OBP | 0.375 | 0.060 |
| predicted_R | 1.000 | 0.198 |
| predicted_RBI | 1.000 | 0.387 |
| predicted_SLG | 0.286 | -0.022 |
| 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 | 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 | 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 | 1.000 | 1.000 | 4.000 | 3.000 | 0.1176 | 0.2727 | 0.1176 | 0.1177 | 0.0000 | 0.0588 | 0.2353 | 0.1765 |
| last_10 | 0.20 | 10 | - | 37.000 | 6.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 6.000 | 7.000 | 0.1622 | 0.2727 | 0.2703 | 0.1622 | 0.0270 | 0.0811 | 0.1622 | 0.1892 |
| season | 0.60 | 66 | - | 1091.000 | 282.000 | 36.000 | 5.000 | 18.000 | 84.000 | 131.000 | 136.000 | 209.000 | 0.2585 | 0.3475 | 0.3501 | 0.2585 | 0.0165 | 0.0770 | 0.1247 | 0.1916 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2880 |
| predicted_3B | 0.0310 |
| predicted_AB | 11.1630 |
| predicted_AVG | 0.2120 |
| predicted_BB | 1.7020 |
| predicted_H | 2.3660 |
| predicted_HBP | 0.0980 |
| predicted_HR | 0.1760 |
| predicted_OBP | 0.3175 |
| predicted_R | 1.1240 |
| predicted_RBI | 0.8430 |
| predicted_SLG | 0.2905 |
| predicted_SO | 2.1080 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1360 | 0.2880 | 0.2034 | model_form_blend |
| predicted_3B | 0.0190 | 0.0310 | 0.0243 | model_form_blend |
| predicted_AB | 4.5400 | 11.1630 | 7.4748 | model_form_blend |
| predicted_AVG | 0.2180 | 0.2120 | 0.2153 | model_form_blend |
| predicted_BB | 0.5130 | 1.7020 | 1.0399 | model_form_blend |
| predicted_H | 0.9900 | 2.3660 | 1.5997 | model_form_blend |
| predicted_HBP | - | 0.0980 | 0.0980 | form_only |
| predicted_HR | 0.1000 | 0.1760 | 0.1337 | model_form_blend |
| predicted_OBP | 0.3100 | 0.3175 | 0.3133 | model_form_blend |
| predicted_R | 0.4940 | 1.1240 | 0.7732 | model_form_blend |
| predicted_RBI | 0.3900 | 0.8430 | 0.5907 | model_form_blend |
| predicted_SLG | 0.3380 | 0.2905 | 0.3170 | model_form_blend |
| predicted_SO | 0.7890 | 2.1080 | 1.3735 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 265 |
| Season rows before report date | 265 |
| Report year | 2026 |
| Profile rows used | 265 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.258 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 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 | 20260610_CHC@COL |
| game_type | full |
| mlbID | 608324 |
| playerID | 608324 |
| playerName | Alex Bregman |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 16.7 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.305 |
| sl_xwoba | 0.312 |
| sl_xba | 0.247 |
| sl_xslg | 0.371 |
| sl_sweet_spot_percent | 32.0 |
| sl_barrel_batted_rate | 5.0 |
| sl_hard_hit_percent | 38.8 |
| sl_exit_velocity_avg | 88.1 |
| sl_launch_angle_avg | 14.8 |
| sl_whiff_percent | 17.8 |
| 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.169 | 0.000 | 0.000 | Hitting_2B | 0.169 | 0.000 | -0.169 | 0.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 4.040 | 3.000 | 7.000 | Hitting_AB | 3.900 | 4.000 | -0.900 | -1.000 |
| predicted_AVG | 0.221 | 0.000 | 0.286 | Hitting_AVG | 0.240 | 0.250 | -0.240 | -0.250 |
| predicted_BB | 0.683 | 1.000 | 1.000 | Hitting_BB | 0.683 | 0.000 | 0.317 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.900 | 0.000 | 2.000 | Hitting_H | 0.936 | 1.000 | -0.936 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.265 | 1.000 | -0.265 | -1.000 |
| predicted_OBP | 0.322 | 0.250 | 0.375 | Hitting_OBP | 0.359 | 0.250 | -0.109 | 0.000 |
| predicted_R | 0.755 | 0.000 | 1.000 | Hitting_R | 0.755 | 1.000 | -0.755 | -1.000 |
| predicted_RBI | 0.500 | 0.000 | 1.000 | Hitting_RBI | 0.622 | 1.000 | -0.622 | -1.000 |
| predicted_SLG | 0.460 | 0.000 | 0.286 | Hitting_SLG | 0.497 | 1.000 | -0.497 | -1.000 |
| predicted_SO | 1.337 | 1.000 | 2.000 | Hitting_SO | 1.337 | 1.000 | -0.337 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.6830 -> 1.0000 (boost 0.3170, 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.8450 (boost 2.8050, 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.4793 -> 0.4912 (boost 0.0119, 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_H: 1.5340 -> 2.0000 (boost 0.4660, better) | predicted_HR: 0.4295 -> 0.0000 (deboost -0.4295, worse) | AB rounded to 7 (raw=6.84), rates preserved: AVG=0.224 HR/AB=0.063 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1867 -> 1.0000 (deboost -0.1867, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2241 -> 0.2860 (boost 0.0619, better) | predicted_SLG: 0.4912 -> 0.2860 (deboost -0.2052, 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.4912 (boost 0.2052, better) | predicted_AVG: 0.2860 -> 0.2241 (deboost -0.0619, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664023",
"player_name": "Ian Happ",
"position": "LF",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.02,
"predicted_AB": 4.04,
"predicted_AVG": 0.221,
"predicted_BB": 0.683,
"predicted_H": 0.9,
"predicted_HR": 0.21,
"predicted_OBP": 0.322,
"predicted_R": 0.755,
"predicted_RBI": 0.5,
"predicted_SLG": 0.46,
"predicted_SO": 1.337
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3186,
"predicted_3B": 0.1107,
"predicted_AB": 6.845,
"predicted_AVG": 0.2193,
"predicted_BB": 1.1158,
"predicted_H": 1.4992,
"predicted_HBP": 0.129,
"predicted_HR": 0.4145,
"predicted_OBP": 0.3266,
"predicted_R": 1.1436,
"predicted_RBI": 0.8846,
"predicted_SLG": 0.4793,
"predicted_SO": 2.3828
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.169,
"after": 0.3186,
"delta": 0.1496,
"percent_delta": 0.8852,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.1107,
"delta": 0.0907,
"percent_delta": 4.535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.04,
"after": 6.845,
"delta": 2.805,
"percent_delta": 0.6943,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.221,
"after": 0.2193,
"delta": -0.0017,
"percent_delta": -0.0077,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.683,
"after": 1.1158,
"delta": 0.4328,
"percent_delta": 0.6337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.4992,
"delta": 0.5992,
"percent_delta": 0.6658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.4145,
"delta": 0.2045,
"percent_delta": 0.9738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3266,
"delta": 0.0046,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.755,
"after": 1.1436,
"delta": 0.3886,
"percent_delta": 0.5147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.8846,
"delta": 0.3846,
"percent_delta": 0.7692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.46,
"after": 0.4793,
"delta": 0.0193,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.337,
"after": 2.3828,
"delta": 1.0458,
"percent_delta": 0.7822,
"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.845,
"delta": 2.805,
"percent_delta": 0.6943,
"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.3186,
"predicted_3B": 0.1107,
"predicted_AB": 6.845,
"predicted_AVG": 0.2241,
"predicted_BB": 1.1239,
"predicted_H": 1.534,
"predicted_HBP": 0.129,
"predicted_HR": 0.4295,
"predicted_OBP": 0.3335,
"predicted_R": 1.1867,
"predicted_RBI": 0.9179,
"predicted_SLG": 0.4912,
"predicted_SO": 2.3654
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3186,
"after": 0.3186,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1107,
"after": 0.1107,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.845,
"after": 6.845,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2193,
"after": 0.2241,
"delta": 0.0048,
"percent_delta": 0.0219,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.1158,
"after": 1.1239,
"delta": 0.0081,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4992,
"after": 1.534,
"delta": 0.0348,
"percent_delta": 0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.129,
"after": 0.129,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4145,
"after": 0.4295,
"delta": 0.015,
"percent_delta": 0.0362,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3266,
"after": 0.3335,
"delta": 0.0069,
"percent_delta": 0.0211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1436,
"after": 1.1867,
"delta": 0.0431,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8846,
"after": 0.9179,
"delta": 0.0333,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4793,
"after": 0.4912,
"delta": 0.0119,
"percent_delta": 0.0248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3828,
"after": 2.3654,
"delta": -0.0174,
"percent_delta": -0.0073,
"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.4793,
"after": 0.4912,
"delta": 0.0119,
"percent_delta": 0.0248,
"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.84), rates preserved: AVG=0.224 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.3186,
"after": 0.0,
"delta": -0.3186,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1107,
"after": 0.0,
"delta": -0.1107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.845,
"after": 7.0,
"delta": 0.155,
"percent_delta": 0.0226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1239,
"after": 1.0,
"delta": -0.1239,
"percent_delta": -0.1102,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.534,
"after": 2.0,
"delta": 0.466,
"percent_delta": 0.3038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.129,
"after": 0.0,
"delta": -0.129,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4295,
"after": 0.0,
"delta": -0.4295,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9179,
"after": 1.0,
"delta": 0.0821,
"percent_delta": 0.0894,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3654,
"after": 2.0,
"delta": -0.3654,
"percent_delta": -0.1545,
"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": 1.534,
"after": 2.0,
"delta": 0.466,
"percent_delta": 0.3038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4295,
"after": 0.0,
"delta": -0.4295,
"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.1867,
"after": 1.0,
"delta": -0.1867,
"percent_delta": -0.1573,
"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.1867,
"after": 1.0,
"delta": -0.1867,
"percent_delta": -0.1573,
"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.2241,
"after": 0.286,
"delta": 0.0619,
"percent_delta": 0.2762,
"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.3335,
"after": 0.375,
"delta": 0.0415,
"percent_delta": 0.1244,
"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.4912,
"after": 0.286,
"delta": -0.2052,
"percent_delta": -0.4178,
"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.2241,
"after": 0.286,
"delta": 0.0619,
"percent_delta": 0.2762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4912,
"after": 0.286,
"delta": -0.2052,
"percent_delta": -0.4178,
"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.2241,
"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.3335,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4912,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2241,
"delta": -0.0619,
"percent_delta": -0.2164,
"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.3335,
"delta": -0.0415,
"percent_delta": -0.1106,
"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.4912,
"delta": 0.2052,
"percent_delta": 0.7176,
"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.4912,
"delta": 0.2052,
"percent_delta": 0.7176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2241,
"delta": -0.0619,
"percent_delta": -0.2164,
"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.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"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.221,
"after": 0.2241,
"delta": 0.0031,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.683,
"after": 1.0,
"delta": 0.317,
"percent_delta": 0.4641,
"direction": "boost",
"projection_effect": "better",
"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.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3335,
"delta": 0.0115,
"percent_delta": 0.0357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.755,
"after": 0.0,
"delta": -0.755,
"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.46,
"after": 0.4912,
"delta": 0.0312,
"percent_delta": 0.0678,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.337,
"after": 1.0,
"delta": -0.337,
"percent_delta": -0.2521,
"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.683,
"after": 1.0,
"delta": 0.317,
"percent_delta": 0.4641,
"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": "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.020 | - |
| predicted_AB | 4.040 | - |
| predicted_AVG | 0.221 | - |
| predicted_BB | 0.683 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.322 | - |
| predicted_R | 0.755 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.460 | - |
| predicted_SO | 1.337 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.319 | 0.150 |
| predicted_3B | 0.111 | 0.091 |
| predicted_AB | 6.845 | 2.805 |
| predicted_AVG | 0.219 | -0.002 |
| predicted_BB | 1.116 | 0.433 |
| predicted_H | 1.499 | 0.599 |
| predicted_HBP | 0.129 | - |
| predicted_HR | 0.414 | 0.204 |
| predicted_OBP | 0.327 | 0.005 |
| predicted_R | 1.144 | 0.389 |
| predicted_RBI | 0.885 | 0.385 |
| predicted_SLG | 0.479 | 0.019 |
| predicted_SO | 2.383 | 1.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.319 | 0.000 |
| predicted_3B | 0.111 | 0.000 |
| predicted_AB | 6.845 | 0.000 |
| predicted_AVG | 0.224 | 0.005 |
| predicted_BB | 1.124 | 0.008 |
| predicted_H | 1.534 | 0.035 |
| predicted_HBP | 0.129 | 0.000 |
| predicted_HR | 0.429 | 0.015 |
| predicted_OBP | 0.334 | 0.007 |
| predicted_R | 1.187 | 0.043 |
| predicted_RBI | 0.918 | 0.033 |
| predicted_SLG | 0.491 | 0.012 |
| predicted_SO | 2.365 | -0.017 |
AB rounded to 7 (raw=6.84), rates preserved: AVG=0.224 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.319 |
| predicted_3B | 0.000 | -0.111 |
| predicted_AB | 7.000 | 0.155 |
| predicted_AVG | 0.286 | 0.062 |
| predicted_BB | 1.000 | -0.124 |
| predicted_H | 2.000 | 0.466 |
| predicted_HR | 0.000 | -0.429 |
| predicted_OBP | 0.375 | 0.041 |
| predicted_R | 1.000 | -0.187 |
| predicted_RBI | 1.000 | 0.082 |
| predicted_SLG | 0.286 | -0.205 |
| predicted_SO | 2.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 | -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 | - | 15.000 | 2.000 | 0.000 | 1.000 | 1.000 | 1.000 | 1.000 | 3.000 | 6.000 | 0.1333 | 0.2778 | 0.4667 | 0.1333 | 0.0667 | 0.0667 | 0.2000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 35.000 | 8.000 | 4.000 | 1.000 | 2.000 | 4.000 | 5.000 | 3.000 | 13.000 | 0.2286 | 0.3077 | 0.5714 | 0.2286 | 0.0571 | 0.1143 | 0.0857 | 0.3714 |
| season | 0.60 | 63 | - | 971.000 | 233.000 | 42.000 | 5.000 | 66.000 | 155.000 | 188.000 | 170.000 | 333.000 | 0.2400 | 0.3594 | 0.4974 | 0.2400 | 0.0680 | 0.1596 | 0.1751 | 0.3429 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5070 |
| predicted_3B | 0.2250 |
| predicted_AB | 10.3780 |
| predicted_AVG | 0.2172 |
| predicted_BB | 1.6610 |
| predicted_H | 2.2540 |
| predicted_HBP | 0.1290 |
| predicted_HR | 0.6720 |
| predicted_OBP | 0.3323 |
| predicted_R | 1.6330 |
| predicted_RBI | 1.3690 |
| predicted_SLG | 0.5036 |
| predicted_SO | 3.7000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1690 | 0.5070 | 0.3186 | model_form_blend |
| predicted_3B | 0.0200 | 0.2250 | 0.1107 | model_form_blend |
| predicted_AB | 4.0400 | 10.3780 | 6.8450 | model_form_blend |
| predicted_AVG | 0.2210 | 0.2172 | 0.2193 | model_form_blend |
| predicted_BB | 0.6830 | 1.6610 | 1.1158 | model_form_blend |
| predicted_H | 0.9000 | 2.2540 | 1.4992 | model_form_blend |
| predicted_HBP | - | 0.1290 | 0.1290 | form_only |
| predicted_HR | 0.2100 | 0.6720 | 0.4145 | model_form_blend |
| predicted_OBP | 0.3220 | 0.3323 | 0.3266 | model_form_blend |
| predicted_R | 0.7550 | 1.6330 | 1.1436 | model_form_blend |
| predicted_RBI | 0.5000 | 1.3690 | 0.8846 | model_form_blend |
| predicted_SLG | 0.4600 | 0.5036 | 0.4793 | model_form_blend |
| predicted_SO | 1.3370 | 3.7000 | 2.3828 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 249 |
| Season rows before report date | 249 |
| Report year | 2026 |
| Profile rows used | 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| 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.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 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 | 20260610_CHC@COL |
| game_type | full |
| mlbID | 664023 |
| playerID | 664023 |
| playerName | Ian Happ |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 31.9 |
| sl_bb_percent | 14.2 |
| sl_woba | 0.363 |
| sl_xwoba | 0.342 |
| sl_xba | 0.212 |
| sl_xslg | 0.458 |
| sl_sweet_spot_percent | 34.2 |
| sl_barrel_batted_rate | 15.4 |
| sl_hard_hit_percent | 47.0 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 16.6 |
| sl_whiff_percent | 32.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.115 | 0.000 | 0.000 | Hitting_2B | 0.115 | 0.000 | -0.115 | 0.000 |
| predicted_3B | 0.037 | 1.000 | 0.000 | Hitting_3B | 0.037 | 1.000 | 0.963 | 0.000 |
| predicted_AB | 4.290 | 5.000 | 7.000 | Hitting_AB | 3.693 | 4.000 | 1.307 | 1.000 |
| predicted_AVG | 0.253 | 0.200 | 0.286 | Hitting_AVG | 0.248 | 0.250 | -0.048 | -0.050 |
| predicted_BB | 0.406 | 0.000 | 1.000 | Hitting_BB | 0.406 | 0.000 | -0.406 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.074 | 0.000 | -0.074 | 0.000 |
| predicted_H | 1.090 | 1.000 | 2.000 | Hitting_H | 0.914 | 1.000 | 0.086 | 0.000 |
| predicted_HR | 0.220 | 0.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | -0.127 | 0.000 |
| predicted_OBP | 0.353 | 0.200 | 0.375 | Hitting_OBP | 0.339 | 0.250 | -0.139 | -0.050 |
| predicted_R | 0.578 | 1.000 | 1.000 | Hitting_R | 0.578 | 1.000 | 0.422 | 0.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.471 | 0.000 | -0.471 | 0.000 |
| predicted_SLG | 0.502 | 0.600 | 0.286 | Hitting_SLG | 0.402 | 0.750 | 0.198 | -0.150 |
| predicted_SO | 1.057 | 0.000 | 2.000 | Hitting_SO | 1.057 | 0.000 | -1.057 | 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_3B: 0.0370 -> 1.0000 (boost 0.9630, better) |
| Biggest Deboost | predicted_SO: 1.0570 -> 0.0000 (deboost -1.0570, 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 | 12 | 0 | 11 | 1 | predicted_AB: 4.2900 -> 6.6110 (boost 2.3210, 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.2729 -> 0.2887 (boost 0.0158, better) | predicted_OBP: 0.3627 -> 0.3507 (deboost -0.0120, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 5 | 4 | 4 | 5 | predicted_AB: 6.6110 -> 7.0000 (boost 0.3890, better) | predicted_HR: 0.4052 -> 0.0000 (deboost -0.4052, worse) | AB rounded to 7 (raw=6.61), rates preserved: AVG=0.289 HR/AB=0.061 |
| 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.3507 -> 0.3750 (boost 0.0243, better) | predicted_SLG: 0.5298 -> 0.2860 (deboost -0.2438, 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_3B: 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 | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2860 -> 0.5298 (boost 0.2438, better) | predicted_OBP: 0.3750 -> 0.3507 (deboost -0.0243, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691718",
"player_name": "Pete Crow-Armstrong",
"position": "CF",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.037,
"predicted_AB": 4.29,
"predicted_AVG": 0.253,
"predicted_BB": 0.406,
"predicted_H": 1.09,
"predicted_HR": 0.22,
"predicted_OBP": 0.353,
"predicted_R": 0.578,
"predicted_RBI": 0.54,
"predicted_SLG": 0.502,
"predicted_SO": 1.057
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1658,
"predicted_3B": 0.1064,
"predicted_AB": 6.611,
"predicted_AVG": 0.2729,
"predicted_BB": 0.6269,
"predicted_H": 1.8653,
"predicted_HBP": 0.27,
"predicted_HR": 0.391,
"predicted_OBP": 0.3627,
"predicted_R": 0.9822,
"predicted_RBI": 0.8687,
"predicted_SLG": 0.5248,
"predicted_SO": 1.7201
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.115,
"after": 0.1658,
"delta": 0.0508,
"percent_delta": 0.4417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.037,
"after": 0.1064,
"delta": 0.0694,
"percent_delta": 1.8757,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.29,
"after": 6.611,
"delta": 2.321,
"percent_delta": 0.541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2729,
"delta": 0.0199,
"percent_delta": 0.0787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.406,
"after": 0.6269,
"delta": 0.2209,
"percent_delta": 0.5441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.8653,
"delta": 0.7753,
"percent_delta": 0.7113,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.391,
"delta": 0.171,
"percent_delta": 0.7773,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.353,
"after": 0.3627,
"delta": 0.0097,
"percent_delta": 0.0275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.578,
"after": 0.9822,
"delta": 0.4042,
"percent_delta": 0.6993,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.8687,
"delta": 0.3287,
"percent_delta": 0.6087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.502,
"after": 0.5248,
"delta": 0.0228,
"percent_delta": 0.0454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.057,
"after": 1.7201,
"delta": 0.6631,
"percent_delta": 0.6273,
"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.29,
"after": 6.611,
"delta": 2.321,
"percent_delta": 0.541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1658,
"predicted_3B": 0.1064,
"predicted_AB": 6.611,
"predicted_AVG": 0.2887,
"predicted_BB": 0.6315,
"predicted_H": 1.9086,
"predicted_HBP": 0.27,
"predicted_HR": 0.4052,
"predicted_OBP": 0.3507,
"predicted_R": 1.0192,
"predicted_RBI": 0.9014,
"predicted_SLG": 0.5298,
"predicted_SO": 1.7075
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1658,
"after": 0.1658,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1064,
"after": 0.1064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.611,
"after": 6.611,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2729,
"after": 0.2887,
"delta": 0.0158,
"percent_delta": 0.0579,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6269,
"after": 0.6315,
"delta": 0.0046,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8653,
"after": 1.9086,
"delta": 0.0433,
"percent_delta": 0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.27,
"after": 0.27,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.391,
"after": 0.4052,
"delta": 0.0142,
"percent_delta": 0.0363,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3627,
"after": 0.3507,
"delta": -0.012,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9822,
"after": 1.0192,
"delta": 0.037,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8687,
"after": 0.9014,
"delta": 0.0327,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5248,
"after": 0.5298,
"delta": 0.005,
"percent_delta": 0.0095,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7201,
"after": 1.7075,
"delta": -0.0126,
"percent_delta": -0.0073,
"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.2729,
"after": 0.2887,
"delta": 0.0158,
"percent_delta": 0.0579,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3627,
"after": 0.3507,
"delta": -0.012,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.61), rates preserved: AVG=0.289 HR/AB=0.061",
"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.1658,
"after": 0.0,
"delta": -0.1658,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1064,
"after": 0.0,
"delta": -0.1064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.611,
"after": 7.0,
"delta": 0.389,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6315,
"after": 1.0,
"delta": 0.3685,
"percent_delta": 0.5835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9086,
"after": 2.0,
"delta": 0.0914,
"percent_delta": 0.0479,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.4052,
"after": 0.0,
"delta": -0.4052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9014,
"after": 1.0,
"delta": 0.0986,
"percent_delta": 0.1094,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7075,
"after": 2.0,
"delta": 0.2925,
"percent_delta": 0.1713,
"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_AB",
"before": 6.611,
"after": 7.0,
"delta": 0.389,
"percent_delta": 0.0588,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4052,
"after": 0.0,
"delta": -0.4052,
"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.0192,
"after": 1.0,
"delta": -0.0192,
"percent_delta": -0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2887,
"after": 0.286,
"delta": -0.0027,
"percent_delta": -0.0094,
"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.3507,
"after": 0.375,
"delta": 0.0243,
"percent_delta": 0.0693,
"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.5298,
"after": 0.286,
"delta": -0.2438,
"percent_delta": -0.4602,
"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.3507,
"after": 0.375,
"delta": 0.0243,
"percent_delta": 0.0693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5298,
"after": 0.286,
"delta": -0.2438,
"percent_delta": -0.4602,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 1.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"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": 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": 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": 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_3B",
"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": 0.0,
"predicted_3B": 1.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2887,
"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.3507,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5298,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2887,
"delta": 0.0027,
"percent_delta": 0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.3507,
"delta": -0.0243,
"percent_delta": -0.0648,
"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.5298,
"delta": 0.2438,
"percent_delta": 0.8525,
"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.5298,
"delta": 0.2438,
"percent_delta": 0.8525,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3507,
"delta": -0.0243,
"percent_delta": -0.0648,
"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.115,
"after": 0.0,
"delta": -0.115,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.037,
"after": 1.0,
"delta": 0.963,
"percent_delta": 26.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.29,
"after": 5.0,
"delta": 0.71,
"percent_delta": 0.1655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2887,
"delta": 0.0357,
"percent_delta": 0.1411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.406,
"after": 0.0,
"delta": -0.406,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.0,
"delta": -0.09,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.0,
"delta": -0.22,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.353,
"after": 0.3507,
"delta": -0.0023,
"percent_delta": -0.0065,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.578,
"after": 1.0,
"delta": 0.422,
"percent_delta": 0.7301,
"direction": "boost",
"projection_effect": "better",
"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.502,
"after": 0.5298,
"delta": 0.0278,
"percent_delta": 0.0554,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.057,
"after": 0.0,
"delta": -1.057,
"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_3B",
"before": 0.037,
"after": 1.0,
"delta": 0.963,
"percent_delta": 26.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.057,
"after": 0.0,
"delta": -1.057,
"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.115 | - |
| predicted_3B | 0.037 | - |
| predicted_AB | 4.290 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.406 | - |
| predicted_H | 1.090 | - |
| predicted_HR | 0.220 | - |
| predicted_OBP | 0.353 | - |
| predicted_R | 0.578 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.502 | - |
| predicted_SO | 1.057 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.166 | 0.051 |
| predicted_3B | 0.106 | 0.069 |
| predicted_AB | 6.611 | 2.321 |
| predicted_AVG | 0.273 | 0.020 |
| predicted_BB | 0.627 | 0.221 |
| predicted_H | 1.865 | 0.775 |
| predicted_HBP | 0.270 | - |
| predicted_HR | 0.391 | 0.171 |
| predicted_OBP | 0.363 | 0.010 |
| predicted_R | 0.982 | 0.404 |
| predicted_RBI | 0.869 | 0.329 |
| predicted_SLG | 0.525 | 0.023 |
| predicted_SO | 1.720 | 0.663 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.166 | 0.000 |
| predicted_3B | 0.106 | 0.000 |
| predicted_AB | 6.611 | 0.000 |
| predicted_AVG | 0.289 | 0.016 |
| predicted_BB | 0.631 | 0.005 |
| predicted_H | 1.909 | 0.043 |
| predicted_HBP | 0.270 | 0.000 |
| predicted_HR | 0.405 | 0.014 |
| predicted_OBP | 0.351 | -0.012 |
| predicted_R | 1.019 | 0.037 |
| predicted_RBI | 0.901 | 0.033 |
| predicted_SLG | 0.530 | 0.005 |
| predicted_SO | 1.708 | -0.013 |
AB rounded to 7 (raw=6.61), rates preserved: AVG=0.289 HR/AB=0.061
| 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.166 |
| predicted_3B | 0.000 | -0.106 |
| predicted_AB | 7.000 | 0.389 |
| predicted_AVG | 0.286 | -0.003 |
| predicted_BB | 1.000 | 0.369 |
| predicted_H | 2.000 | 0.091 |
| predicted_HR | 0.000 | -0.405 |
| predicted_OBP | 0.375 | 0.024 |
| predicted_R | 1.000 | -0.019 |
| predicted_RBI | 1.000 | 0.099 |
| predicted_SLG | 0.286 | -0.244 |
| predicted_SO | 2.000 | 0.292 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 1.000 | 1.000 |
| AB | 5.000 | -2.000 |
| BB | 0.000 | -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 | 1.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 | - | 20.000 | 7.000 | 0.000 | 1.000 | 2.000 | 2.000 | 3.000 | 2.000 | 5.000 | 0.3500 | 0.4091 | 0.7500 | 0.3500 | 0.1000 | 0.1000 | 0.1000 | 0.2500 |
| last_10 | 0.20 | 10 | - | 42.000 | 17.000 | 1.000 | 1.000 | 5.000 | 8.000 | 7.000 | 2.000 | 10.000 | 0.4048 | 0.4565 | 0.8333 | 0.4048 | 0.1191 | 0.1905 | 0.0476 | 0.2381 |
| season | 0.60 | 67 | - | 901.000 | 223.000 | 28.000 | 9.000 | 31.000 | 115.000 | 141.000 | 99.000 | 258.000 | 0.2475 | 0.3395 | 0.4018 | 0.2475 | 0.0344 | 0.1276 | 0.1099 | 0.2863 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2300 |
| predicted_3B | 0.1940 |
| predicted_AB | 9.5440 |
| predicted_AVG | 0.2981 |
| predicted_BB | 0.9060 |
| predicted_H | 2.8450 |
| predicted_HBP | 0.2700 |
| predicted_HR | 0.6070 |
| predicted_OBP | 0.3750 |
| predicted_R | 1.4930 |
| predicted_RBI | 1.2840 |
| predicted_SLG | 0.5535 |
| predicted_SO | 2.5580 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1150 | 0.2300 | 0.1658 | model_form_blend |
| predicted_3B | 0.0370 | 0.1940 | 0.1064 | model_form_blend |
| predicted_AB | 4.2900 | 9.5440 | 6.6110 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2981 | 0.2729 | model_form_blend |
| predicted_BB | 0.4060 | 0.9060 | 0.6269 | model_form_blend |
| predicted_H | 1.0900 | 2.8450 | 1.8653 | model_form_blend |
| predicted_HBP | - | 0.2700 | 0.2700 | form_only |
| predicted_HR | 0.2200 | 0.6070 | 0.3910 | model_form_blend |
| predicted_OBP | 0.3530 | 0.3750 | 0.3627 | model_form_blend |
| predicted_R | 0.5780 | 1.4930 | 0.9822 | model_form_blend |
| predicted_RBI | 0.5400 | 1.2840 | 0.8687 | model_form_blend |
| predicted_SLG | 0.5020 | 0.5535 | 0.5248 | model_form_blend |
| predicted_SO | 1.0570 | 2.5580 | 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 | 244 |
| Season rows before report date | 244 |
| Report year | 2026 |
| Profile rows used | 244 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 1 |
| 2B | 0 |
| 3B | 1 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 1 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 691718 |
| playerID | 691718 |
| playerName | Pete Crow-Armstrong |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.343 |
| sl_xwoba | 0.353 |
| sl_xba | 0.253 |
| sl_xslg | 0.476 |
| sl_sweet_spot_percent | 33.7 |
| sl_barrel_batted_rate | 11.6 |
| sl_hard_hit_percent | 49.7 |
| sl_exit_velocity_avg | 91.8 |
| sl_launch_angle_avg | 20.1 |
| sl_whiff_percent | 28.4 |
| sl_swing_percent | 52.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.202 | 0.000 | 0.000 | Hitting_2B | 0.202 | 0.000 | -0.202 | 0.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 4.050 | 2.000 | 7.000 | Hitting_AB | 3.690 | 4.000 | -1.690 | -2.000 |
| predicted_AVG | 0.241 | 0.000 | 0.286 | Hitting_AVG | 0.239 | 0.250 | -0.239 | -0.250 |
| predicted_BB | 0.779 | 1.000 | 1.000 | Hitting_BB | 0.779 | 0.000 | 0.221 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.970 | 0.000 | 2.000 | Hitting_H | 0.884 | 1.000 | -0.884 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.120 | 0.000 | -0.120 | 0.000 |
| predicted_OBP | 0.348 | 0.250 | 0.375 | Hitting_OBP | 0.382 | 0.250 | -0.132 | 0.000 |
| predicted_R | 0.500 | 1.000 | 1.000 | Hitting_R | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_RBI | 0.500 | 1.000 | 1.000 | Hitting_RBI | 0.616 | 0.000 | 0.384 | 1.000 |
| predicted_SLG | 0.411 | 0.000 | 0.286 | Hitting_SLG | 0.404 | 0.250 | -0.404 | -0.250 |
| predicted_SO | 1.016 | 1.000 | 2.000 | Hitting_SO | 1.016 | 1.000 | -0.016 | 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 | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_R: 0.5000 -> 1.0000 (boost 0.5000, better) |
| Biggest Deboost | predicted_AB: 4.0500 -> 2.0000 (deboost -2.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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.0500 -> 6.6841 (boost 2.6341, 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.3584 -> 0.3715 (boost 0.0131, 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 | 3 | 5 | predicted_AB: 6.6841 -> 7.0000 (boost 0.3159, better) | predicted_2B: 0.2826 -> 0.0000 (deboost -0.2826, worse) | AB rounded to 7 (raw=6.68), rates preserved: AVG=0.256 HR/AB=0.036 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7637 -> 1.0000 (boost 0.2363, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2560 -> 0.2860 (boost 0.0300, better) | predicted_SLG: 0.4233 -> 0.2860 (deboost -0.1373, 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: 7.0000 -> 2.0000 (deboost -5.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2860 -> 0.4233 (boost 0.1373, better) | predicted_AVG: 0.2860 -> 0.2560 (deboost -0.0300, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683737",
"player_name": "Michael Busch",
"position": "1B",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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": 4.05,
"predicted_AVG": 0.241,
"predicted_BB": 0.779,
"predicted_H": 0.97,
"predicted_HR": 0.14,
"predicted_OBP": 0.348,
"predicted_R": 0.5,
"predicted_RBI": 0.5,
"predicted_SLG": 0.411,
"predicted_SO": 1.016
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2826,
"predicted_3B": 0.0531,
"predicted_AB": 6.6841,
"predicted_AVG": 0.2475,
"predicted_BB": 1.2191,
"predicted_H": 1.6722,
"predicted_HBP": 0.15,
"predicted_HR": 0.2348,
"predicted_OBP": 0.3584,
"predicted_R": 0.736,
"predicted_RBI": 0.8644,
"predicted_SLG": 0.4143,
"predicted_SO": 1.9702
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.202,
"after": 0.2826,
"delta": 0.0806,
"percent_delta": 0.399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0531,
"delta": 0.0301,
"percent_delta": 1.3087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.05,
"after": 6.6841,
"delta": 2.6341,
"percent_delta": 0.6504,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2475,
"delta": 0.0065,
"percent_delta": 0.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.779,
"after": 1.2191,
"delta": 0.4401,
"percent_delta": 0.565,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.6722,
"delta": 0.7022,
"percent_delta": 0.7239,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2348,
"delta": 0.0948,
"percent_delta": 0.6771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.348,
"after": 0.3584,
"delta": 0.0104,
"percent_delta": 0.0299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 0.736,
"delta": 0.236,
"percent_delta": 0.472,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.8644,
"delta": 0.3644,
"percent_delta": 0.7288,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.411,
"after": 0.4143,
"delta": 0.0033,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.016,
"after": 1.9702,
"delta": 0.9542,
"percent_delta": 0.9392,
"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.05,
"after": 6.6841,
"delta": 2.6341,
"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": 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.2826,
"predicted_3B": 0.0531,
"predicted_AB": 6.6841,
"predicted_AVG": 0.256,
"predicted_BB": 1.228,
"predicted_H": 1.711,
"predicted_HBP": 0.15,
"predicted_HR": 0.2433,
"predicted_OBP": 0.3715,
"predicted_R": 0.7637,
"predicted_RBI": 0.897,
"predicted_SLG": 0.4233,
"predicted_SO": 1.9558
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2826,
"after": 0.2826,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0531,
"after": 0.0531,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6841,
"after": 6.6841,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2475,
"after": 0.256,
"delta": 0.0085,
"percent_delta": 0.0343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2191,
"after": 1.228,
"delta": 0.0089,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6722,
"after": 1.711,
"delta": 0.0388,
"percent_delta": 0.0232,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.15,
"after": 0.15,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2348,
"after": 0.2433,
"delta": 0.0085,
"percent_delta": 0.0362,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3584,
"after": 0.3715,
"delta": 0.0131,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.736,
"after": 0.7637,
"delta": 0.0277,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8644,
"after": 0.897,
"delta": 0.0326,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4143,
"after": 0.4233,
"delta": 0.009,
"percent_delta": 0.0217,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9702,
"after": 1.9558,
"delta": -0.0144,
"percent_delta": -0.0073,
"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.3584,
"after": 0.3715,
"delta": 0.0131,
"percent_delta": 0.0366,
"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.68), rates preserved: AVG=0.256 HR/AB=0.036",
"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.2826,
"after": 0.0,
"delta": -0.2826,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0531,
"after": 0.0,
"delta": -0.0531,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.6841,
"after": 7.0,
"delta": 0.3159,
"percent_delta": 0.0473,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.228,
"after": 1.0,
"delta": -0.228,
"percent_delta": -0.1857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.711,
"after": 2.0,
"delta": 0.289,
"percent_delta": 0.1689,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2433,
"after": 0.0,
"delta": -0.2433,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.897,
"after": 1.0,
"delta": 0.103,
"percent_delta": 0.1148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9558,
"after": 2.0,
"delta": 0.0442,
"percent_delta": 0.0226,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 6.6841,
"after": 7.0,
"delta": 0.3159,
"percent_delta": 0.0473,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2826,
"after": 0.0,
"delta": -0.2826,
"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.7637,
"after": 1.0,
"delta": 0.2363,
"percent_delta": 0.3094,
"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.7637,
"after": 1.0,
"delta": 0.2363,
"percent_delta": 0.3094,
"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.256,
"after": 0.286,
"delta": 0.03,
"percent_delta": 0.1172,
"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.3715,
"after": 0.375,
"delta": 0.0035,
"percent_delta": 0.0094,
"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.4233,
"after": 0.286,
"delta": -0.1373,
"percent_delta": -0.3244,
"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.256,
"after": 0.286,
"delta": 0.03,
"percent_delta": 0.1172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4233,
"after": 0.286,
"delta": -0.1373,
"percent_delta": -0.3244,
"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": 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": 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": 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": 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": 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": 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": 7.0,
"after": 2.0,
"delta": -5.0,
"percent_delta": -0.7143,
"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.256,
"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.3715,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 1.0,
"predicted_SLG": 0.4233,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.286,
"after": 0.256,
"delta": -0.03,
"percent_delta": -0.105,
"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.3715,
"delta": -0.0035,
"percent_delta": -0.0095,
"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": 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.4233,
"delta": 0.1373,
"percent_delta": 0.4802,
"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.4233,
"delta": 0.1373,
"percent_delta": 0.4802,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.256,
"delta": -0.03,
"percent_delta": -0.105,
"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": 4.05,
"after": 2.0,
"delta": -2.05,
"percent_delta": -0.5062,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.256,
"delta": 0.015,
"percent_delta": 0.0622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.779,
"after": 1.0,
"delta": 0.221,
"percent_delta": 0.2837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 0.0,
"delta": -0.97,
"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.348,
"after": 0.3715,
"delta": 0.0235,
"percent_delta": 0.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"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": 1.016,
"after": 1.0,
"delta": -0.016,
"percent_delta": -0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.05,
"after": 2.0,
"delta": -2.05,
"percent_delta": -0.5062,
"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.202 | - |
| predicted_3B | 0.023 | - |
| predicted_AB | 4.050 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.779 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.348 | - |
| predicted_R | 0.500 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.411 | - |
| predicted_SO | 1.016 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.283 | 0.081 |
| predicted_3B | 0.053 | 0.030 |
| predicted_AB | 6.684 | 2.634 |
| predicted_AVG | 0.247 | 0.007 |
| predicted_BB | 1.219 | 0.440 |
| predicted_H | 1.672 | 0.702 |
| predicted_HBP | 0.150 | - |
| predicted_HR | 0.235 | 0.095 |
| predicted_OBP | 0.358 | 0.010 |
| predicted_R | 0.736 | 0.236 |
| predicted_RBI | 0.864 | 0.364 |
| predicted_SLG | 0.414 | 0.003 |
| predicted_SO | 1.970 | 0.954 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.283 | 0.000 |
| predicted_3B | 0.053 | 0.000 |
| predicted_AB | 6.684 | 0.000 |
| predicted_AVG | 0.256 | 0.009 |
| predicted_BB | 1.228 | 0.009 |
| predicted_H | 1.711 | 0.039 |
| predicted_HBP | 0.150 | 0.000 |
| predicted_HR | 0.243 | 0.008 |
| predicted_OBP | 0.371 | 0.013 |
| predicted_R | 0.764 | 0.028 |
| predicted_RBI | 0.897 | 0.033 |
| predicted_SLG | 0.423 | 0.009 |
| predicted_SO | 1.956 | -0.014 |
AB rounded to 7 (raw=6.68), rates preserved: AVG=0.256 HR/AB=0.036
| 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.283 |
| predicted_3B | 0.000 | -0.053 |
| predicted_AB | 7.000 | 0.316 |
| predicted_AVG | 0.286 | 0.030 |
| predicted_BB | 1.000 | -0.228 |
| predicted_H | 2.000 | 0.289 |
| predicted_HR | 0.000 | -0.243 |
| predicted_OBP | 0.375 | 0.004 |
| predicted_R | 1.000 | 0.236 |
| predicted_RBI | 1.000 | 0.103 |
| predicted_SLG | 0.286 | -0.137 |
| predicted_SO | 2.000 | 0.044 |
Attached 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 | 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 | 1.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 1.000 | 1.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 | 5.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 3.000 | 8.000 | 0.2632 | 0.3636 | 0.4211 | 0.2632 | 0.0526 | 0.0526 | 0.1579 | 0.4210 |
| last_10 | 0.20 | 10 | - | 37.000 | 11.000 | 1.000 | 1.000 | 1.000 | 4.000 | 2.000 | 4.000 | 13.000 | 0.2973 | 0.3571 | 0.4595 | 0.2973 | 0.0270 | 0.1081 | 0.1081 | 0.3513 |
| season | 0.60 | 66 | - | 952.000 | 228.000 | 52.000 | 6.000 | 31.000 | 159.000 | 129.000 | 201.000 | 262.000 | 0.2395 | 0.3816 | 0.4044 | 0.2395 | 0.0326 | 0.1670 | 0.2111 | 0.2752 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3840 |
| predicted_3B | 0.0910 |
| predicted_AB | 9.9990 |
| predicted_AVG | 0.2557 |
| predicted_BB | 1.7730 |
| predicted_H | 2.5560 |
| predicted_HBP | 0.1500 |
| predicted_HR | 0.3540 |
| predicted_OBP | 0.3716 |
| predicted_R | 1.0330 |
| predicted_RBI | 1.3230 |
| predicted_SLG | 0.4185 |
| predicted_SO | 3.1710 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2020 | 0.3840 | 0.2826 | model_form_blend |
| predicted_3B | 0.0230 | 0.0910 | 0.0531 | model_form_blend |
| predicted_AB | 4.0500 | 9.9990 | 6.6841 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2557 | 0.2475 | model_form_blend |
| predicted_BB | 0.7790 | 1.7730 | 1.2191 | model_form_blend |
| predicted_H | 0.9700 | 2.5560 | 1.6722 | model_form_blend |
| predicted_HBP | - | 0.1500 | 0.1500 | form_only |
| predicted_HR | 0.1400 | 0.3540 | 0.2348 | model_form_blend |
| predicted_OBP | 0.3480 | 0.3716 | 0.3584 | model_form_blend |
| predicted_R | 0.5000 | 1.0330 | 0.7360 | model_form_blend |
| predicted_RBI | 0.5000 | 1.3230 | 0.8644 | model_form_blend |
| predicted_SLG | 0.4110 | 0.4185 | 0.4143 | model_form_blend |
| predicted_SO | 1.0160 | 3.1710 | 1.9702 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 258 |
| Season rows before report date | 258 |
| Report year | 2026 |
| Profile rows used | 258 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 1 |
| SF | 1 |
| HBP | 0 |
| season_avg | 0.239 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.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 | 1B |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 683737 |
| playerID | 683737 |
| playerName | Michael Busch |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.4 |
| sl_bb_percent | 14.9 |
| sl_woba | 0.346 |
| sl_xwoba | 0.346 |
| sl_xba | 0.238 |
| sl_xslg | 0.414 |
| sl_sweet_spot_percent | 31.6 |
| sl_barrel_batted_rate | 11.3 |
| sl_hard_hit_percent | 41.8 |
| sl_exit_velocity_avg | 88.4 |
| sl_launch_angle_avg | 15.0 |
| sl_whiff_percent | 26.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.109 | 0.000 | 0.000 | Hitting_2B | 0.109 | 0.000 | -0.109 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.910 | 4.000 | 6.000 | Hitting_AB | 3.854 | 4.000 | 0.146 | 0.000 |
| predicted_AVG | 0.240 | 0.750 | 0.333 | Hitting_AVG | 0.257 | 0.250 | 0.493 | 0.500 |
| predicted_BB | 0.479 | 0.000 | 1.000 | Hitting_BB | 0.479 | 0.000 | -0.479 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.940 | 3.000 | 2.000 | Hitting_H | 0.990 | 1.000 | 2.010 | 2.000 |
| predicted_HR | 0.160 | 1.000 | 0.000 | Hitting_HR | 0.177 | 0.000 | 0.823 | 1.000 |
| predicted_OBP | 0.327 | 0.750 | 0.429 | Hitting_OBP | 0.347 | 0.250 | 0.403 | 0.500 |
| predicted_R | 0.635 | 1.000 | 1.000 | Hitting_R | 0.635 | 0.000 | 0.365 | 1.000 |
| predicted_RBI | 0.440 | 1.000 | 1.000 | Hitting_RBI | 0.474 | 0.000 | 0.526 | 1.000 |
| predicted_SLG | 0.414 | 1.500 | 0.333 | Hitting_SLG | 0.423 | 0.250 | 1.077 | 1.250 |
| predicted_SO | 1.120 | 0.000 | 2.000 | Hitting_SO | 1.120 | 3.000 | -1.120 | -3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 8 |
| Deboosted Metrics | 3 |
| Better Metrics | 9 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_H: 0.9400 -> 3.0000 (boost 2.0600, better) |
| Biggest Deboost | predicted_SO: 1.1200 -> 0.0000 (deboost -1.1200, 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.9100 -> 6.3288 (boost 2.4188, 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.2481 -> 0.2580 (boost 0.0099, 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 | 3 | 5 | predicted_H: 1.6326 -> 2.0000 (boost 0.3674, better) | predicted_AB: 6.3288 -> 6.0000 (deboost -0.3288, worse) | AB rounded to 6 (raw=6.33), rates preserved: AVG=0.258 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.3406 -> 0.4290 (boost 0.0884, better) | predicted_SLG: 0.4292 -> 0.3330 (deboost -0.0962, 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_H: 2.0000 -> 3.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.4292 (boost 0.0962, better) | predicted_OBP: 0.4290 -> 0.3406 (deboost -0.0884, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "673548",
"player_name": "Seiya Suzuki",
"position": "RF",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.109,
"predicted_3B": 0.0,
"predicted_AB": 3.91,
"predicted_AVG": 0.24,
"predicted_BB": 0.479,
"predicted_H": 0.94,
"predicted_HR": 0.16,
"predicted_OBP": 0.327,
"predicted_R": 0.635,
"predicted_RBI": 0.44,
"predicted_SLG": 0.414,
"predicted_SO": 1.12
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1587,
"predicted_3B": 0.0004,
"predicted_AB": 6.3288,
"predicted_AVG": 0.2481,
"predicted_BB": 0.787,
"predicted_H": 1.5956,
"predicted_HBP": 0.099,
"predicted_HR": 0.2973,
"predicted_OBP": 0.3351,
"predicted_R": 0.9778,
"predicted_RBI": 0.7225,
"predicted_SLG": 0.4223,
"predicted_SO": 1.7717
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.109,
"after": 0.1587,
"delta": 0.0497,
"percent_delta": 0.456,
"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.3288,
"delta": 2.4188,
"percent_delta": 0.6186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2481,
"delta": 0.0081,
"percent_delta": 0.0337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.479,
"after": 0.787,
"delta": 0.308,
"percent_delta": 0.643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.5956,
"delta": 0.6556,
"percent_delta": 0.6974,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2973,
"delta": 0.1373,
"percent_delta": 0.8581,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3351,
"delta": 0.0081,
"percent_delta": 0.0248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.635,
"after": 0.9778,
"delta": 0.3428,
"percent_delta": 0.5398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 0.7225,
"delta": 0.2825,
"percent_delta": 0.642,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.4223,
"delta": 0.0083,
"percent_delta": 0.02,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.12,
"after": 1.7717,
"delta": 0.6517,
"percent_delta": 0.5819,
"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.91,
"after": 6.3288,
"delta": 2.4188,
"percent_delta": 0.6186,
"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.1587,
"predicted_3B": 0.0004,
"predicted_AB": 6.3288,
"predicted_AVG": 0.258,
"predicted_BB": 0.7927,
"predicted_H": 1.6326,
"predicted_HBP": 0.099,
"predicted_HR": 0.3081,
"predicted_OBP": 0.3406,
"predicted_R": 1.0147,
"predicted_RBI": 0.7497,
"predicted_SLG": 0.4292,
"predicted_SO": 1.7588
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1587,
"after": 0.1587,
"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.3288,
"after": 6.3288,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2481,
"after": 0.258,
"delta": 0.0099,
"percent_delta": 0.0399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.787,
"after": 0.7927,
"delta": 0.0057,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5956,
"after": 1.6326,
"delta": 0.037,
"percent_delta": 0.0232,
"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.2973,
"after": 0.3081,
"delta": 0.0108,
"percent_delta": 0.0363,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3351,
"after": 0.3406,
"delta": 0.0055,
"percent_delta": 0.0164,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9778,
"after": 1.0147,
"delta": 0.0369,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7225,
"after": 0.7497,
"delta": 0.0272,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4223,
"after": 0.4292,
"delta": 0.0069,
"percent_delta": 0.0163,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7717,
"after": 1.7588,
"delta": -0.0129,
"percent_delta": -0.0073,
"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.2481,
"after": 0.258,
"delta": 0.0099,
"percent_delta": 0.0399,
"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.258 HR/AB=0.049",
"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.1587,
"after": 0.0,
"delta": -0.1587,
"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.3288,
"after": 6.0,
"delta": -0.3288,
"percent_delta": -0.052,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7927,
"after": 1.0,
"delta": 0.2073,
"percent_delta": 0.2615,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6326,
"after": 2.0,
"delta": 0.3674,
"percent_delta": 0.225,
"direction": "boost",
"projection_effect": "better",
"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.3081,
"after": 0.0,
"delta": -0.3081,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7497,
"after": 1.0,
"delta": 0.2503,
"percent_delta": 0.3339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7588,
"after": 2.0,
"delta": 0.2412,
"percent_delta": 0.1371,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.6326,
"after": 2.0,
"delta": 0.3674,
"percent_delta": 0.225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.3288,
"after": 6.0,
"delta": -0.3288,
"percent_delta": -0.052,
"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.0147,
"after": 1.0,
"delta": -0.0147,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.258,
"after": 0.333,
"delta": 0.075,
"percent_delta": 0.2907,
"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.3406,
"after": 0.429,
"delta": 0.0884,
"percent_delta": 0.2595,
"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.4292,
"after": 0.333,
"delta": -0.0962,
"percent_delta": -0.2241,
"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.3406,
"after": 0.429,
"delta": 0.0884,
"percent_delta": 0.2595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4292,
"after": 0.333,
"delta": -0.0962,
"percent_delta": -0.2241,
"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": 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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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": 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_H",
"before": 2.0,
"after": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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.258,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3406,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4292,
"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.258,
"delta": -0.075,
"percent_delta": -0.2253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3406,
"delta": -0.0884,
"percent_delta": -0.2061,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4292,
"delta": 0.0962,
"percent_delta": 0.2889,
"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.4292,
"delta": 0.0962,
"percent_delta": 0.2889,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3406,
"delta": -0.0884,
"percent_delta": -0.2061,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.109,
"after": 0.0,
"delta": -0.109,
"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.24,
"after": 0.258,
"delta": 0.018,
"percent_delta": 0.075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.479,
"after": 0.0,
"delta": -0.479,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 3.0,
"delta": 2.06,
"percent_delta": 2.1915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3406,
"delta": 0.0136,
"percent_delta": 0.0416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.635,
"after": 1.0,
"delta": 0.365,
"percent_delta": 0.5748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.44,
"after": 1.0,
"delta": 0.56,
"percent_delta": 1.2727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.4292,
"delta": 0.0152,
"percent_delta": 0.0367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.12,
"after": 0.0,
"delta": -1.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 8,
"deboosted_metrics": 3,
"better_metrics": 9,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.94,
"after": 3.0,
"delta": 2.06,
"percent_delta": 2.1915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.12,
"after": 0.0,
"delta": -1.12,
"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.109 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.910 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.479 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.327 | - |
| predicted_R | 0.635 | - |
| predicted_RBI | 0.440 | - |
| predicted_SLG | 0.414 | - |
| predicted_SO | 1.120 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.159 | 0.050 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.329 | 2.419 |
| predicted_AVG | 0.248 | 0.008 |
| predicted_BB | 0.787 | 0.308 |
| predicted_H | 1.596 | 0.656 |
| predicted_HBP | 0.099 | - |
| predicted_HR | 0.297 | 0.137 |
| predicted_OBP | 0.335 | 0.008 |
| predicted_R | 0.978 | 0.343 |
| predicted_RBI | 0.723 | 0.283 |
| predicted_SLG | 0.422 | 0.008 |
| predicted_SO | 1.772 | 0.652 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.159 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.329 | 0.000 |
| predicted_AVG | 0.258 | 0.010 |
| predicted_BB | 0.793 | 0.006 |
| predicted_H | 1.633 | 0.037 |
| predicted_HBP | 0.099 | 0.000 |
| predicted_HR | 0.308 | 0.011 |
| predicted_OBP | 0.341 | 0.006 |
| predicted_R | 1.015 | 0.037 |
| predicted_RBI | 0.750 | 0.027 |
| predicted_SLG | 0.429 | 0.007 |
| predicted_SO | 1.759 | -0.013 |
AB rounded to 6 (raw=6.33), rates preserved: AVG=0.258 HR/AB=0.049
| 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.159 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.329 |
| predicted_AVG | 0.333 | 0.075 |
| predicted_BB | 1.000 | 0.207 |
| predicted_H | 2.000 | 0.367 |
| predicted_HR | 0.000 | -0.308 |
| predicted_OBP | 0.429 | 0.088 |
| predicted_R | 1.000 | -0.015 |
| predicted_RBI | 1.000 | 0.250 |
| predicted_SLG | 0.333 | -0.096 |
| predicted_SO | 2.000 | 0.241 |
Attached 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 | 3.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 | -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 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 3.000 | 4.000 | 0.2941 | 0.4000 | 0.4706 | 0.2941 | 0.0588 | 0.1177 | 0.1765 | 0.2353 |
| last_10 | 0.20 | 10 | - | 35.000 | 8.000 | 1.000 | 0.000 | 2.000 | 3.000 | 5.000 | 3.000 | 10.000 | 0.2286 | 0.2895 | 0.4286 | 0.2286 | 0.0571 | 0.0857 | 0.0857 | 0.2857 |
| season | 0.60 | 54 | - | 740.000 | 190.000 | 21.000 | 0.000 | 34.000 | 91.000 | 122.000 | 92.000 | 215.000 | 0.2568 | 0.3475 | 0.4230 | 0.2568 | 0.0459 | 0.1230 | 0.1243 | 0.2905 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2220 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.4070 |
| predicted_AVG | 0.2583 |
| predicted_BB | 1.1790 |
| predicted_H | 2.4300 |
| predicted_HBP | 0.0990 |
| predicted_HR | 0.4720 |
| predicted_OBP | 0.3453 |
| predicted_R | 1.4140 |
| predicted_RBI | 1.0820 |
| predicted_SLG | 0.4328 |
| predicted_SO | 2.6010 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1090 | 0.2220 | 0.1587 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9100 | 9.4070 | 6.3288 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2583 | 0.2481 | model_form_blend |
| predicted_BB | 0.4790 | 1.1790 | 0.7870 | model_form_blend |
| predicted_H | 0.9400 | 2.4300 | 1.5956 | model_form_blend |
| predicted_HBP | - | 0.0990 | 0.0990 | form_only |
| predicted_HR | 0.1600 | 0.4720 | 0.2973 | model_form_blend |
| predicted_OBP | 0.3270 | 0.3453 | 0.3351 | model_form_blend |
| predicted_R | 0.6350 | 1.4140 | 0.9778 | model_form_blend |
| predicted_RBI | 0.4400 | 1.0820 | 0.7225 | model_form_blend |
| predicted_SLG | 0.4140 | 0.4328 | 0.4223 | model_form_blend |
| predicted_SO | 1.1200 | 2.6010 | 1.7717 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 192 |
| Season rows before report date | 192 |
| Report year | 2026 |
| Profile rows used | 192 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.257 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 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 | 3 |
| 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 | RF |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 673548 |
| playerID | 673548 |
| playerName | Seiya Suzuki |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.327 |
| sl_xwoba | 0.326 |
| sl_xba | 0.247 |
| sl_xslg | 0.418 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 8.5 |
| sl_hard_hit_percent | 41.1 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 18.0 |
| sl_whiff_percent | 27.0 |
| sl_swing_percent | 42.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.230 | 1.000 | 0.000 | Hitting_2B | 0.230 | 1.000 | 0.770 | 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 | 4.200 | 4.000 | -1.200 | -1.000 |
| predicted_AVG | 0.233 | 0.667 | 0.286 | Hitting_AVG | 0.256 | 0.250 | 0.411 | 0.417 |
| predicted_BB | 0.521 | 1.000 | 1.000 | Hitting_BB | 0.521 | 0.000 | 0.479 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 0.970 | 2.000 | 2.000 | Hitting_H | 1.075 | 1.000 | 0.925 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.079 | 0.000 | -0.079 | 0.000 |
| predicted_OBP | 0.300 | 0.750 | 0.375 | Hitting_OBP | 0.340 | 0.250 | 0.410 | 0.500 |
| predicted_R | 0.472 | 1.000 | 1.000 | Hitting_R | 0.472 | 0.000 | 0.528 | 1.000 |
| predicted_RBI | 0.390 | 1.000 | 1.000 | Hitting_RBI | 0.611 | 0.000 | 0.389 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.189 | 0.000 | -0.189 | 0.000 |
| predicted_SLG | 0.352 | 1.000 | 0.286 | Hitting_SLG | 0.367 | 0.500 | 0.633 | 0.500 |
| predicted_SO | 0.321 | 0.000 | 0.000 | Hitting_SO | 0.321 | 0.000 | -0.321 | 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 | 8 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_H: 0.9700 -> 2.0000 (boost 1.0300, better) |
| 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 | 8 | 7 | 1 | 6 | 2 | predicted_AB: 4.2000 -> 7.4093 (boost 3.2093, better) | predicted_SLG: 0.3520 -> 0.3393 (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 | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3016 -> 0.3127 (boost 0.0111, better) | predicted_SLG: 0.3393 -> 0.3316 (deboost -0.0077, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_RBI: 0.7165 -> 1.0000 (boost 0.2835, better) | predicted_SO: 0.4283 -> 0.0000 (deboost -0.4283, better) | AB rounded to 7 (raw=7.41), rates preserved: AVG=0.238 HR/AB=0.013 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6876 -> 1.0000 (boost 0.3124, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3127 -> 0.3750 (boost 0.0623, better) | predicted_SLG: 0.3316 -> 0.2860 (deboost -0.0456, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_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.3316 (boost 0.0456, better) | predicted_OBP: 0.3750 -> 0.3127 (deboost -0.0623, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663538",
"player_name": "Nico Hoerner",
"position": "2B",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.23,
"predicted_3B": 0.0,
"predicted_AB": 4.2,
"predicted_AVG": 0.233,
"predicted_BB": 0.521,
"predicted_H": 0.97,
"predicted_HR": 0.06,
"predicted_OBP": 0.3,
"predicted_R": 0.472,
"predicted_RBI": 0.39,
"predicted_SLG": 0.352,
"predicted_SO": 0.321
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4024,
"predicted_3B": 0.0004,
"predicted_AB": 7.4093,
"predicted_AVG": 0.2333,
"predicted_BB": 0.7989,
"predicted_H": 1.724,
"predicted_HBP": 0.069,
"predicted_HR": 0.0932,
"predicted_OBP": 0.3016,
"predicted_R": 0.6626,
"predicted_RBI": 0.6905,
"predicted_SLG": 0.3393,
"predicted_SO": 0.4314
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.23,
"after": 0.4024,
"delta": 0.1724,
"percent_delta": 0.7496,
"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": 7.4093,
"delta": 3.2093,
"percent_delta": 0.7641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2333,
"delta": 0.0003,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.521,
"after": 0.7989,
"delta": 0.2779,
"percent_delta": 0.5334,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.724,
"delta": 0.754,
"percent_delta": 0.7773,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0932,
"delta": 0.0332,
"percent_delta": 0.5533,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.3016,
"delta": 0.0016,
"percent_delta": 0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.6626,
"delta": 0.1906,
"percent_delta": 0.4038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.6905,
"delta": 0.3005,
"percent_delta": 0.7705,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.3393,
"delta": -0.0127,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.321,
"after": 0.4314,
"delta": 0.1104,
"percent_delta": 0.3439,
"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.2,
"after": 7.4093,
"delta": 3.2093,
"percent_delta": 0.7641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.3393,
"delta": -0.0127,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 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.4024,
"predicted_3B": 0.0004,
"predicted_AB": 7.4093,
"predicted_AVG": 0.2381,
"predicted_BB": 0.8047,
"predicted_H": 1.764,
"predicted_HBP": 0.069,
"predicted_HR": 0.0966,
"predicted_OBP": 0.3127,
"predicted_R": 0.6876,
"predicted_RBI": 0.7165,
"predicted_SLG": 0.3316,
"predicted_SO": 0.4283
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4024,
"after": 0.4024,
"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.4093,
"after": 7.4093,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2333,
"after": 0.2381,
"delta": 0.0048,
"percent_delta": 0.0206,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7989,
"after": 0.8047,
"delta": 0.0058,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.724,
"after": 1.764,
"delta": 0.04,
"percent_delta": 0.0232,
"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.0932,
"after": 0.0966,
"delta": 0.0034,
"percent_delta": 0.0365,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3016,
"after": 0.3127,
"delta": 0.0111,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6626,
"after": 0.6876,
"delta": 0.025,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6905,
"after": 0.7165,
"delta": 0.026,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3393,
"after": 0.3316,
"delta": -0.0077,
"percent_delta": -0.0227,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4314,
"after": 0.4283,
"delta": -0.0031,
"percent_delta": -0.0072,
"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.3016,
"after": 0.3127,
"delta": 0.0111,
"percent_delta": 0.0368,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3393,
"after": 0.3316,
"delta": -0.0077,
"percent_delta": -0.0227,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.41), rates preserved: AVG=0.238 HR/AB=0.013",
"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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4024,
"after": 0.0,
"delta": -0.4024,
"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.4093,
"after": 7.0,
"delta": -0.4093,
"percent_delta": -0.0552,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8047,
"after": 1.0,
"delta": 0.1953,
"percent_delta": 0.2427,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.764,
"after": 2.0,
"delta": 0.236,
"percent_delta": 0.1338,
"direction": "boost",
"projection_effect": "better",
"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.0966,
"after": 0.0,
"delta": -0.0966,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7165,
"after": 1.0,
"delta": 0.2835,
"percent_delta": 0.3957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.4283,
"after": 0.0,
"delta": -0.4283,
"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_RBI",
"before": 0.7165,
"after": 1.0,
"delta": 0.2835,
"percent_delta": 0.3957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.4283,
"after": 0.0,
"delta": -0.4283,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 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": 0.6876,
"after": 1.0,
"delta": 0.3124,
"percent_delta": 0.4543,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6876,
"after": 1.0,
"delta": 0.3124,
"percent_delta": 0.4543,
"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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2381,
"after": 0.286,
"delta": 0.0479,
"percent_delta": 0.2012,
"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.3127,
"after": 0.375,
"delta": 0.0623,
"percent_delta": 0.1992,
"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.3316,
"after": 0.286,
"delta": -0.0456,
"percent_delta": -0.1375,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3127,
"after": 0.375,
"delta": 0.0623,
"percent_delta": 0.1992,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3316,
"after": 0.286,
"delta": -0.0456,
"percent_delta": -0.1375,
"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": 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": 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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2381,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3127,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3316,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2381,
"delta": -0.0479,
"percent_delta": -0.1676,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3127,
"delta": -0.0623,
"percent_delta": -0.1661,
"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.3316,
"delta": 0.0456,
"percent_delta": 0.1594,
"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.3316,
"delta": 0.0456,
"percent_delta": 0.1594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3127,
"delta": -0.0623,
"percent_delta": -0.1661,
"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.23,
"after": 1.0,
"delta": 0.77,
"percent_delta": 3.3478,
"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.2,
"after": 3.0,
"delta": -1.2,
"percent_delta": -0.2857,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.233,
"after": 0.2381,
"delta": 0.0051,
"percent_delta": 0.0219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.521,
"after": 1.0,
"delta": 0.479,
"percent_delta": 0.9194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 2.0,
"delta": 1.03,
"percent_delta": 1.0619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.3127,
"delta": 0.0127,
"percent_delta": 0.0423,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 1.0,
"delta": 0.528,
"percent_delta": 1.1186,
"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.352,
"after": 0.3316,
"delta": -0.0204,
"percent_delta": -0.058,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.321,
"after": 0.0,
"delta": -0.321,
"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_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_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": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.230 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.200 | - |
| predicted_AVG | 0.233 | - |
| predicted_BB | 0.521 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.300 | - |
| predicted_R | 0.472 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.352 | - |
| predicted_SO | 0.321 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.172 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.409 | 3.209 |
| predicted_AVG | 0.233 | 0.000 |
| predicted_BB | 0.799 | 0.278 |
| predicted_H | 1.724 | 0.754 |
| predicted_HBP | 0.069 | - |
| predicted_HR | 0.093 | 0.033 |
| predicted_OBP | 0.302 | 0.002 |
| predicted_R | 0.663 | 0.191 |
| predicted_RBI | 0.691 | 0.300 |
| predicted_SLG | 0.339 | -0.013 |
| predicted_SO | 0.431 | 0.110 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 7.409 | 0.000 |
| predicted_AVG | 0.238 | 0.005 |
| predicted_BB | 0.805 | 0.006 |
| predicted_H | 1.764 | 0.040 |
| predicted_HBP | 0.069 | 0.000 |
| predicted_HR | 0.097 | 0.003 |
| predicted_OBP | 0.313 | 0.011 |
| predicted_R | 0.688 | 0.025 |
| predicted_RBI | 0.717 | 0.026 |
| predicted_SLG | 0.332 | -0.008 |
| predicted_SO | 0.428 | -0.003 |
AB rounded to 7 (raw=7.41), rates preserved: AVG=0.238 HR/AB=0.013
| 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 | 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.402 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.409 |
| predicted_AVG | 0.286 | 0.048 |
| predicted_BB | 1.000 | 0.195 |
| predicted_H | 2.000 | 0.236 |
| predicted_HR | 0.000 | -0.097 |
| predicted_OBP | 0.375 | 0.062 |
| predicted_R | 1.000 | 0.312 |
| predicted_RBI | 1.000 | 0.283 |
| predicted_SLG | 0.286 | -0.046 |
| predicted_SO | 0.000 | -0.428 |
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 | -4.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 | 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 | 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 | 0.000 | 0.000 | 1.000 | 0.000 | 0.1667 | 0.2105 | 0.2222 | 0.1667 | 0.0000 | 0.0000 | 0.0556 | 0.0000 |
| last_10 | 0.20 | 10 | - | 39.000 | 9.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 0.000 | 0.2308 | 0.2857 | 0.2821 | 0.2308 | 0.0000 | 0.0256 | 0.0769 | 0.0000 |
| season | 0.60 | 66 | - | 1113.000 | 285.000 | 61.000 | 0.000 | 21.000 | 162.000 | 125.000 | 138.000 | 85.000 | 0.2561 | 0.3401 | 0.3675 | 0.2561 | 0.0189 | 0.1456 | 0.1240 | 0.0764 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6190 |
| predicted_3B | 0.0010 |
| predicted_AB | 11.4400 |
| predicted_AVG | 0.2336 |
| predicted_BB | 1.1480 |
| predicted_H | 2.6710 |
| predicted_HBP | 0.0690 |
| predicted_HR | 0.1350 |
| predicted_OBP | 0.3035 |
| predicted_R | 0.9020 |
| predicted_RBI | 1.0680 |
| predicted_SLG | 0.3234 |
| predicted_SO | 0.5700 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2300 | 0.6190 | 0.4024 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2000 | 11.4400 | 7.4093 | model_form_blend |
| predicted_AVG | 0.2330 | 0.2336 | 0.2333 | model_form_blend |
| predicted_BB | 0.5210 | 1.1480 | 0.7989 | model_form_blend |
| predicted_H | 0.9700 | 2.6710 | 1.7240 | model_form_blend |
| predicted_HBP | - | 0.0690 | 0.0690 | form_only |
| predicted_HR | 0.0600 | 0.1350 | 0.0932 | model_form_blend |
| predicted_OBP | 0.3000 | 0.3035 | 0.3016 | model_form_blend |
| predicted_R | 0.4720 | 0.9020 | 0.6626 | model_form_blend |
| predicted_RBI | 0.3900 | 1.0680 | 0.6905 | model_form_blend |
| predicted_SLG | 0.3520 | 0.3234 | 0.3393 | model_form_blend |
| predicted_SO | 0.3210 | 0.5700 | 0.4314 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 265 |
| Season rows before report date | 265 |
| Report year | 2026 |
| Profile rows used | 265 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| 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 | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 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 | 2B |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 663538 |
| playerID | 663538 |
| playerName | Nico Hoerner |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 6.6 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.307 |
| sl_xwoba | 0.336 |
| sl_xba | 0.296 |
| sl_xslg | 0.378 |
| sl_sweet_spot_percent | 38.0 |
| sl_barrel_batted_rate | 1.2 |
| sl_hard_hit_percent | 28.0 |
| sl_exit_velocity_avg | 86.0 |
| sl_launch_angle_avg | 12.6 |
| sl_whiff_percent | 10.3 |
| 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.095 | 0.000 | 0.000 | Hitting_2B | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.074 | 4.000 | 4.000 | Hitting_AB | 3.054 | 2.000 | 0.946 | 2.000 |
| predicted_AVG | 0.262 | 0.250 | 0.250 | Hitting_AVG | 0.211 | 0.000 | 0.039 | 0.250 |
| predicted_BB | 0.358 | 0.000 | 0.000 | Hitting_BB | 0.362 | 0.000 | -0.362 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.690 | 1.000 | 1.000 | Hitting_H | 0.644 | 0.000 | 0.356 | 1.000 |
| predicted_HR | 0.090 | 1.000 | 0.000 | Hitting_HR | 0.154 | 0.000 | 0.846 | 1.000 |
| predicted_OBP | 0.307 | 0.250 | 0.250 | Hitting_OBP | 0.289 | 0.000 | -0.039 | 0.250 |
| predicted_R | 0.378 | 1.000 | 0.000 | Hitting_R | 0.376 | 0.000 | 0.624 | 1.000 |
| predicted_RBI | 0.430 | 3.000 | 1.000 | Hitting_RBI | 0.510 | 1.000 | 2.490 | 2.000 |
| predicted_SLG | 0.370 | 1.000 | 0.250 | Hitting_SLG | 0.393 | 0.000 | 0.607 | 1.000 |
| predicted_SO | 0.669 | 0.000 | 1.000 | Hitting_SO | 0.664 | 1.000 | -0.664 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.4300 -> 3.0000 (boost 2.5700, better) |
| Biggest Deboost | predicted_SO: 0.6690 -> 0.0000 (deboost -0.6690, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 5 | 2 | 4 | 3 | predicted_AB: 3.0740 -> 4.4203 (boost 1.3463, better) | predicted_AVG: 0.2620 -> 0.2511 (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 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3042 -> 0.3097 (boost 0.0055, better) | predicted_AVG: 0.2511 -> 0.2374 (deboost -0.0137, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 1 | 4 | 1 | 4 | predicted_RBI: 0.7353 -> 1.0000 (boost 0.2647, better) | predicted_BB: 0.4634 -> 0.0000 (deboost -0.4634, worse) | AB rounded to 4 (raw=4.42), rates preserved: AVG=0.237 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4440 -> 0.0000 (deboost -0.4440, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2374 -> 0.2500 (boost 0.0126, better) | predicted_SLG: 0.3580 -> 0.2500 (deboost -0.1080, 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_RBI: 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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3580 (boost 0.1080, better) | predicted_AVG: 0.2500 -> 0.2374 (deboost -0.0126, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694208",
"player_name": "Moisés Ballesteros",
"position": "DH",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.095,
"predicted_3B": 0.0,
"predicted_AB": 3.074,
"predicted_AVG": 0.262,
"predicted_BB": 0.358,
"predicted_H": 0.69,
"predicted_HR": 0.09,
"predicted_OBP": 0.307,
"predicted_R": 0.378,
"predicted_RBI": 0.43,
"predicted_SLG": 0.37,
"predicted_SO": 0.669
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1098,
"predicted_3B": 0.0004,
"predicted_AB": 4.4203,
"predicted_AVG": 0.2511,
"predicted_BB": 0.46,
"predicted_H": 1.0255,
"predicted_HBP": 0.003,
"predicted_HR": 0.136,
"predicted_OBP": 0.3042,
"predicted_R": 0.4279,
"predicted_RBI": 0.7086,
"predicted_SLG": 0.3627,
"predicted_SO": 1.0106
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.095,
"after": 0.1098,
"delta": 0.0148,
"percent_delta": 0.1558,
"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.074,
"after": 4.4203,
"delta": 1.3463,
"percent_delta": 0.438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2511,
"delta": -0.0109,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.358,
"after": 0.46,
"delta": 0.102,
"percent_delta": 0.2849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.0255,
"delta": 0.3355,
"percent_delta": 0.4862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.136,
"delta": 0.046,
"percent_delta": 0.5111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.307,
"after": 0.3042,
"delta": -0.0028,
"percent_delta": -0.0091,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.378,
"after": 0.4279,
"delta": 0.0499,
"percent_delta": 0.132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.7086,
"delta": 0.2786,
"percent_delta": 0.6479,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3627,
"delta": -0.0073,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.669,
"after": 1.0106,
"delta": 0.3416,
"percent_delta": 0.5106,
"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.074,
"after": 4.4203,
"delta": 1.3463,
"percent_delta": 0.438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2511,
"delta": -0.0109,
"percent_delta": -0.0416,
"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": 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.1098,
"predicted_3B": 0.0004,
"predicted_AB": 4.4203,
"predicted_AVG": 0.2374,
"predicted_BB": 0.4634,
"predicted_H": 1.0493,
"predicted_HBP": 0.003,
"predicted_HR": 0.1409,
"predicted_OBP": 0.3097,
"predicted_R": 0.444,
"predicted_RBI": 0.7353,
"predicted_SLG": 0.358,
"predicted_SO": 1.0032
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1098,
"after": 0.1098,
"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.4203,
"after": 4.4203,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2511,
"after": 0.2374,
"delta": -0.0137,
"percent_delta": -0.0546,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.46,
"after": 0.4634,
"delta": 0.0034,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0255,
"after": 1.0493,
"delta": 0.0238,
"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.136,
"after": 0.1409,
"delta": 0.0049,
"percent_delta": 0.036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3042,
"after": 0.3097,
"delta": 0.0055,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4279,
"after": 0.444,
"delta": 0.0161,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7086,
"after": 0.7353,
"delta": 0.0267,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3627,
"after": 0.358,
"delta": -0.0047,
"percent_delta": -0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0106,
"after": 1.0032,
"delta": -0.0074,
"percent_delta": -0.0073,
"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.3042,
"after": 0.3097,
"delta": 0.0055,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2511,
"after": 0.2374,
"delta": -0.0137,
"percent_delta": -0.0546,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.42), rates preserved: AVG=0.237 HR/AB=0.032",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1098,
"after": 0.0,
"delta": -0.1098,
"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.4203,
"after": 4.0,
"delta": -0.4203,
"percent_delta": -0.0951,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4634,
"after": 0.0,
"delta": -0.4634,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0493,
"after": 1.0,
"delta": -0.0493,
"percent_delta": -0.047,
"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.1409,
"after": 0.0,
"delta": -0.1409,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7353,
"after": 1.0,
"delta": 0.2647,
"percent_delta": 0.36,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0032,
"after": 1.0,
"delta": -0.0032,
"percent_delta": -0.0032,
"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.7353,
"after": 1.0,
"delta": 0.2647,
"percent_delta": 0.36,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4634,
"after": 0.0,
"delta": -0.4634,
"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.444,
"after": 0.0,
"delta": -0.444,
"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.444,
"after": 0.0,
"delta": -0.444,
"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.2374,
"after": 0.25,
"delta": 0.0126,
"percent_delta": 0.0531,
"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.3097,
"after": 0.25,
"delta": -0.0597,
"percent_delta": -0.1928,
"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.358,
"after": 0.25,
"delta": -0.108,
"percent_delta": -0.3017,
"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.2374,
"after": 0.25,
"delta": 0.0126,
"percent_delta": 0.0531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.358,
"after": 0.25,
"delta": -0.108,
"percent_delta": -0.3017,
"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": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 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.2374,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3097,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.358,
"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.2374,
"delta": -0.0126,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"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.3097,
"delta": 0.0597,
"percent_delta": 0.2389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.358,
"delta": 0.108,
"percent_delta": 0.4322,
"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.358,
"delta": 0.108,
"percent_delta": 0.4322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2374,
"delta": -0.0126,
"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.095,
"after": 0.0,
"delta": -0.095,
"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.074,
"after": 4.0,
"delta": 0.926,
"percent_delta": 0.3012,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.262,
"after": 0.2374,
"delta": -0.0246,
"percent_delta": -0.0939,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.358,
"after": 0.0,
"delta": -0.358,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.0,
"delta": 0.31,
"percent_delta": 0.4493,
"direction": "boost",
"projection_effect": "better",
"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.307,
"after": 0.3097,
"delta": 0.0027,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.378,
"after": 1.0,
"delta": 0.622,
"percent_delta": 1.6455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 3.0,
"delta": 2.57,
"percent_delta": 5.9767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.358,
"delta": -0.012,
"percent_delta": -0.0324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.669,
"after": 0.0,
"delta": -0.669,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.43,
"after": 3.0,
"delta": 2.57,
"percent_delta": 5.9767,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.669,
"after": 0.0,
"delta": -0.669,
"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.095 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.074 | - |
| predicted_AVG | 0.262 | - |
| predicted_BB | 0.358 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.307 | - |
| predicted_R | 0.378 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.370 | - |
| predicted_SO | 0.669 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | 0.015 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.420 | 1.346 |
| predicted_AVG | 0.251 | -0.011 |
| predicted_BB | 0.460 | 0.102 |
| predicted_H | 1.026 | 0.336 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.136 | 0.046 |
| predicted_OBP | 0.304 | -0.003 |
| predicted_R | 0.428 | 0.050 |
| predicted_RBI | 0.709 | 0.279 |
| predicted_SLG | 0.363 | -0.007 |
| predicted_SO | 1.011 | 0.342 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.110 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.420 | 0.000 |
| predicted_AVG | 0.237 | -0.014 |
| predicted_BB | 0.463 | 0.003 |
| predicted_H | 1.049 | 0.024 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.141 | 0.005 |
| predicted_OBP | 0.310 | 0.005 |
| predicted_R | 0.444 | 0.016 |
| predicted_RBI | 0.735 | 0.027 |
| predicted_SLG | 0.358 | -0.005 |
| predicted_SO | 1.003 | -0.007 |
AB rounded to 4 (raw=4.42), rates preserved: AVG=0.237 HR/AB=0.032
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.110 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.420 |
| predicted_AVG | 0.250 | 0.013 |
| predicted_BB | 0.000 | -0.463 |
| predicted_H | 1.000 | -0.049 |
| predicted_HR | 0.000 | -0.141 |
| predicted_OBP | 0.250 | -0.060 |
| predicted_R | 0.000 | -0.444 |
| predicted_RBI | 1.000 | 0.265 |
| predicted_SLG | 0.250 | -0.108 |
| 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 | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.000 | 1.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 3.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 | - | 12.000 | 4.000 | 0.000 | 0.000 | 0.000 | 3.000 | 0.000 | 1.000 | 3.000 | 0.3333 | 0.3846 | 0.3333 | 0.3333 | 0.0000 | 0.2500 | 0.0833 | 0.2500 |
| last_10 | 0.20 | 9 | - | 24.000 | 5.000 | 0.000 | 0.000 | 0.000 | 3.000 | 0.000 | 1.000 | 7.000 | 0.2083 | 0.2400 | 0.2083 | 0.2083 | 0.0000 | 0.1250 | 0.0417 | 0.2917 |
| season | 0.60 | 53 | - | 455.000 | 96.000 | 14.000 | 0.000 | 23.000 | 75.000 | 56.000 | 53.000 | 99.000 | 0.2110 | 0.2876 | 0.3934 | 0.2110 | 0.0505 | 0.1648 | 0.1165 | 0.2176 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1290 |
| predicted_3B | 0.0010 |
| predicted_AB | 6.1760 |
| predicted_AVG | 0.2368 |
| predicted_BB | 0.5930 |
| predicted_H | 1.4630 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.1960 |
| predicted_OBP | 0.3006 |
| predicted_R | 0.4930 |
| predicted_RBI | 1.0720 |
| predicted_SLG | 0.3532 |
| predicted_SO | 1.4560 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0950 | 0.1290 | 0.1098 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.0740 | 6.1760 | 4.4203 | model_form_blend |
| predicted_AVG | 0.2620 | 0.2368 | 0.2511 | model_form_blend |
| predicted_BB | 0.3580 | 0.5930 | 0.4600 | model_form_blend |
| predicted_H | 0.6900 | 1.4630 | 1.0255 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.0900 | 0.1960 | 0.1360 | model_form_blend |
| predicted_OBP | 0.3070 | 0.3006 | 0.3042 | model_form_blend |
| predicted_R | 0.3780 | 0.4930 | 0.4279 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0720 | 0.7086 | model_form_blend |
| predicted_SLG | 0.3700 | 0.3532 | 0.3627 | model_form_blend |
| predicted_SO | 0.6690 | 1.4560 | 1.0106 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 149 |
| Season rows before report date | 149 |
| Report year | 2026 |
| Profile rows used | 148 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 3 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.211 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | C |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 694208 |
| playerID | 694208 |
| playerName | Moisés Ballesteros |
| pos | DH |
| started | True |
| startingPosition | C |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.5 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.314 |
| sl_xwoba | 0.315 |
| sl_xba | 0.24 |
| sl_xslg | 0.394 |
| sl_sweet_spot_percent | 34.8 |
| sl_barrel_batted_rate | 9.8 |
| sl_hard_hit_percent | 46.4 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 28.4 |
| 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.178 | 0.000 | 0.000 | Hitting_2B | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.650 | 4.000 | 6.000 | Hitting_AB | 3.604 | 1.000 | 0.396 | 3.000 |
| predicted_AVG | 0.257 | 0.250 | 0.333 | Hitting_AVG | 0.311 | 0.000 | -0.061 | 0.250 |
| predicted_BB | 0.363 | 0.000 | 1.000 | Hitting_BB | 0.365 | 1.000 | -0.365 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.770 | 1.000 | 2.000 | Hitting_H | 1.119 | 0.000 | -0.119 | 1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_OBP | 0.326 | 0.250 | 0.429 | Hitting_OBP | 0.389 | 0.500 | -0.139 | -0.250 |
| predicted_R | 0.503 | 1.000 | 1.000 | Hitting_R | 0.497 | 0.000 | 0.503 | 1.000 |
| predicted_RBI | 0.330 | 0.000 | 1.000 | Hitting_RBI | 0.409 | 0.000 | -0.409 | 0.000 |
| predicted_SLG | 0.355 | 0.250 | 0.333 | Hitting_SLG | 0.391 | 0.000 | -0.141 | 0.250 |
| predicted_SO | 0.720 | 1.000 | 1.000 | Hitting_SO | 0.711 | 0.000 | 0.289 | 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_R: 0.5030 -> 1.0000 (boost 0.4970, better) |
| Biggest Deboost | predicted_BB: 0.3630 -> 0.0000 (deboost -0.3630, 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.6500 -> 5.7446 (boost 2.0946, 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.3410 -> 0.3288 (deboost -0.0122, 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.5100 -> 1.0000 (boost 0.4900, better) | predicted_HBP: 0.2170 -> 0.0000 (deboost -0.2170, worse) | AB rounded to 6 (raw=5.74), rates preserved: AVG=0.269 HR/AB=0.011 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7410 -> 1.0000 (boost 0.2590, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3288 -> 0.4290 (boost 0.1002, better) | predicted_SLG: 0.3408 -> 0.3330 (deboost -0.0078, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3408 (boost 0.0078, better) | predicted_OBP: 0.4290 -> 0.3288 (deboost -0.1002, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "608348",
"player_name": "Carson Kelly",
"position": "C",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.178,
"predicted_3B": 0.0,
"predicted_AB": 3.65,
"predicted_AVG": 0.257,
"predicted_BB": 0.363,
"predicted_H": 0.77,
"predicted_HR": 0.06,
"predicted_OBP": 0.326,
"predicted_R": 0.503,
"predicted_RBI": 0.33,
"predicted_SLG": 0.355,
"predicted_SO": 0.72
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.216,
"predicted_3B": 0.0004,
"predicted_AB": 5.7446,
"predicted_AVG": 0.2723,
"predicted_BB": 0.5063,
"predicted_H": 1.5112,
"predicted_HBP": 0.217,
"predicted_HR": 0.0626,
"predicted_OBP": 0.341,
"predicted_R": 0.7141,
"predicted_RBI": 0.5236,
"predicted_SLG": 0.3515,
"predicted_SO": 1.07
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.178,
"after": 0.216,
"delta": 0.038,
"percent_delta": 0.2135,
"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.65,
"after": 5.7446,
"delta": 2.0946,
"percent_delta": 0.5739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2723,
"delta": 0.0153,
"percent_delta": 0.0595,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.363,
"after": 0.5063,
"delta": 0.1433,
"percent_delta": 0.3948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.5112,
"delta": 0.7412,
"percent_delta": 0.9626,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0626,
"delta": 0.0026,
"percent_delta": 0.0433,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.341,
"delta": 0.015,
"percent_delta": 0.046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.503,
"after": 0.7141,
"delta": 0.2111,
"percent_delta": 0.4197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.5236,
"delta": 0.1936,
"percent_delta": 0.5867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3515,
"delta": -0.0035,
"percent_delta": -0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.72,
"after": 1.07,
"delta": 0.35,
"percent_delta": 0.4861,
"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.65,
"after": 5.7446,
"delta": 2.0946,
"percent_delta": 0.5739,
"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": 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.216,
"predicted_3B": 0.0004,
"predicted_AB": 5.7446,
"predicted_AVG": 0.2692,
"predicted_BB": 0.51,
"predicted_H": 1.5463,
"predicted_HBP": 0.217,
"predicted_HR": 0.0649,
"predicted_OBP": 0.3288,
"predicted_R": 0.741,
"predicted_RBI": 0.5433,
"predicted_SLG": 0.3408,
"predicted_SO": 1.0622
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.216,
"after": 0.216,
"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.7446,
"after": 5.7446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2723,
"after": 0.2692,
"delta": -0.0031,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5063,
"after": 0.51,
"delta": 0.0037,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5112,
"after": 1.5463,
"delta": 0.0351,
"percent_delta": 0.0232,
"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.0626,
"after": 0.0649,
"delta": 0.0023,
"percent_delta": 0.0367,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.341,
"after": 0.3288,
"delta": -0.0122,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7141,
"after": 0.741,
"delta": 0.0269,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5236,
"after": 0.5433,
"delta": 0.0197,
"percent_delta": 0.0376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3515,
"after": 0.3408,
"delta": -0.0107,
"percent_delta": -0.0304,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.07,
"after": 1.0622,
"delta": -0.0078,
"percent_delta": -0.0073,
"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.341,
"after": 0.3288,
"delta": -0.0122,
"percent_delta": -0.0358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.74), rates preserved: AVG=0.269 HR/AB=0.011",
"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.216,
"after": 0.0,
"delta": -0.216,
"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.7446,
"after": 6.0,
"delta": 0.2554,
"percent_delta": 0.0445,
"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.5463,
"after": 2.0,
"delta": 0.4537,
"percent_delta": 0.2934,
"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.0649,
"after": 0.0,
"delta": -0.0649,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5433,
"after": 1.0,
"delta": 0.4567,
"percent_delta": 0.8406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0622,
"after": 1.0,
"delta": -0.0622,
"percent_delta": -0.0586,
"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.51,
"after": 1.0,
"delta": 0.49,
"percent_delta": 0.9608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.217,
"after": 0.0,
"delta": -0.217,
"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": 0.741,
"after": 1.0,
"delta": 0.259,
"percent_delta": 0.3495,
"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.741,
"after": 1.0,
"delta": 0.259,
"percent_delta": 0.3495,
"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": 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.2692,
"after": 0.333,
"delta": 0.0638,
"percent_delta": 0.237,
"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.3288,
"after": 0.429,
"delta": 0.1002,
"percent_delta": 0.3047,
"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.3408,
"after": 0.333,
"delta": -0.0078,
"percent_delta": -0.0229,
"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.3288,
"after": 0.429,
"delta": 0.1002,
"percent_delta": 0.3047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3408,
"after": 0.333,
"delta": -0.0078,
"percent_delta": -0.0229,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 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.2692,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3288,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3408,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2692,
"delta": -0.0638,
"percent_delta": -0.1917,
"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.3288,
"delta": -0.1002,
"percent_delta": -0.2337,
"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.3408,
"delta": 0.0078,
"percent_delta": 0.0234,
"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.3408,
"delta": 0.0078,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3288,
"delta": -0.1002,
"percent_delta": -0.2337,
"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.178,
"after": 0.0,
"delta": -0.178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.65,
"after": 4.0,
"delta": 0.35,
"percent_delta": 0.0959,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2692,
"delta": 0.0122,
"percent_delta": 0.0475,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.363,
"after": 0.0,
"delta": -0.363,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.0,
"delta": 0.23,
"percent_delta": 0.2987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.326,
"after": 0.3288,
"delta": 0.0028,
"percent_delta": 0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.503,
"after": 1.0,
"delta": 0.497,
"percent_delta": 0.9881,
"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.355,
"after": 0.3408,
"delta": -0.0142,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.72,
"after": 1.0,
"delta": 0.28,
"percent_delta": 0.3889,
"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_R",
"before": 0.503,
"after": 1.0,
"delta": 0.497,
"percent_delta": 0.9881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.363,
"after": 0.0,
"delta": -0.363,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.650 | - |
| predicted_AVG | 0.257 | - |
| predicted_BB | 0.363 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.326 | - |
| predicted_R | 0.503 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.355 | - |
| predicted_SO | 0.720 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.216 | 0.038 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.745 | 2.095 |
| predicted_AVG | 0.272 | 0.015 |
| predicted_BB | 0.506 | 0.143 |
| predicted_H | 1.511 | 0.741 |
| predicted_HBP | 0.217 | - |
| predicted_HR | 0.063 | 0.003 |
| predicted_OBP | 0.341 | 0.015 |
| predicted_R | 0.714 | 0.211 |
| predicted_RBI | 0.524 | 0.194 |
| predicted_SLG | 0.351 | -0.004 |
| predicted_SO | 1.070 | 0.350 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.216 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.745 | 0.000 |
| predicted_AVG | 0.269 | -0.003 |
| predicted_BB | 0.510 | 0.004 |
| predicted_H | 1.546 | 0.035 |
| predicted_HBP | 0.217 | 0.000 |
| predicted_HR | 0.065 | 0.002 |
| predicted_OBP | 0.329 | -0.012 |
| predicted_R | 0.741 | 0.027 |
| predicted_RBI | 0.543 | 0.020 |
| predicted_SLG | 0.341 | -0.011 |
| predicted_SO | 1.062 | -0.008 |
AB rounded to 6 (raw=5.74), rates preserved: AVG=0.269 HR/AB=0.011
| 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.216 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.255 |
| predicted_AVG | 0.333 | 0.064 |
| predicted_BB | 1.000 | 0.490 |
| predicted_H | 2.000 | 0.454 |
| predicted_HR | 0.000 | -0.065 |
| predicted_OBP | 0.429 | 0.100 |
| predicted_R | 1.000 | 0.259 |
| predicted_RBI | 1.000 | 0.457 |
| predicted_SLG | 0.333 | -0.008 |
| predicted_SO | 1.000 | -0.062 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -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 | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 4.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 2.000 | 0.2857 | 0.3333 | 0.2857 | 0.2857 | 0.0000 | 0.0714 | 0.0714 | 0.1429 |
| last_10 | 0.20 | 9 | - | 33.000 | 8.000 | 0.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 5.000 | 0.2424 | 0.3056 | 0.2424 | 0.2424 | 0.0000 | 0.0303 | 0.0303 | 0.1515 |
| season | 0.60 | 48 | - | 573.000 | 178.000 | 28.000 | 0.000 | 6.000 | 64.000 | 79.000 | 57.000 | 113.000 | 0.3106 | 0.3876 | 0.3909 | 0.3106 | 0.0105 | 0.1117 | 0.0995 | 0.1972 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2650 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.4430 |
| predicted_AVG | 0.2921 |
| predicted_BB | 0.6910 |
| predicted_H | 2.4660 |
| predicted_HBP | 0.2170 |
| predicted_HR | 0.0660 |
| predicted_OBP | 0.3604 |
| predicted_R | 0.9860 |
| predicted_RBI | 0.7730 |
| predicted_SLG | 0.3471 |
| predicted_SO | 1.5210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1780 | 0.2650 | 0.2160 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6500 | 8.4430 | 5.7446 | model_form_blend |
| predicted_AVG | 0.2570 | 0.2921 | 0.2723 | model_form_blend |
| predicted_BB | 0.3630 | 0.6910 | 0.5063 | model_form_blend |
| predicted_H | 0.7700 | 2.4660 | 1.5112 | model_form_blend |
| predicted_HBP | - | 0.2170 | 0.2170 | form_only |
| predicted_HR | 0.0600 | 0.0660 | 0.0626 | model_form_blend |
| predicted_OBP | 0.3260 | 0.3604 | 0.3410 | model_form_blend |
| predicted_R | 0.5030 | 0.9860 | 0.7141 | model_form_blend |
| predicted_RBI | 0.3300 | 0.7730 | 0.5236 | model_form_blend |
| predicted_SLG | 0.3550 | 0.3471 | 0.3515 | model_form_blend |
| predicted_SO | 0.7200 | 1.5210 | 1.0700 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 159 |
| Season rows before report date | 159 |
| 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 | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.311 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 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-C |
| gameID | 20260610_CHC@COL |
| game_type | ph |
| mlbID | 608348 |
| note | Flied out for Ballesteros in the 6th. |
| playerID | 608348 |
| playerName | Carson Kelly |
| pos | C |
| started | False |
| startingPosition | PH |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 16.9 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.328 |
| sl_xwoba | 0.317 |
| sl_xba | 0.253 |
| sl_xslg | 0.378 |
| sl_sweet_spot_percent | 31.0 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 40.3 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 13.2 |
| sl_whiff_percent | 21.9 |
| 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.095 | 0.000 | 0.000 | Hitting_2B | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 3.464 | 4.000 | 6.000 | Hitting_AB | 3.448 | 2.000 | 0.552 | 2.000 |
| predicted_AVG | 0.215 | 0.000 | 0.167 | Hitting_AVG | 0.199 | 0.000 | -0.199 | 0.000 |
| predicted_BB | 0.536 | 0.000 | 1.000 | Hitting_BB | 0.534 | 1.000 | -0.534 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.640 | 0.000 | 1.000 | Hitting_H | 0.686 | 0.000 | -0.686 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.148 | 0.000 | -0.148 | 0.000 |
| predicted_OBP | 0.281 | 0.000 | 0.286 | Hitting_OBP | 0.305 | 0.333 | -0.305 | -0.333 |
| predicted_R | 0.667 | 0.000 | 1.000 | Hitting_R | 0.668 | 0.000 | -0.668 | 0.000 |
| predicted_RBI | 0.340 | 0.000 | 1.000 | Hitting_RBI | 0.529 | 0.000 | -0.529 | 0.000 |
| predicted_SLG | 0.334 | 0.000 | 0.167 | Hitting_SLG | 0.365 | 0.000 | -0.365 | 0.000 |
| predicted_SO | 0.901 | 0.000 | 2.000 | Hitting_SO | 0.897 | 2.000 | -0.897 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.4640 -> 4.0000 (boost 0.5360, better) |
| Biggest Deboost | predicted_SO: 0.9010 -> 0.0000 (deboost -0.9010, 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.4640 -> 5.7464 (boost 2.2824, better) | predicted_AVG: 0.2150 -> 0.1996 (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 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2783 -> 0.2868 (boost 0.0085, better) | predicted_AVG: 0.1996 -> 0.1858 (deboost -0.0138, 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.6327 -> 1.0000 (boost 0.3673, better) | predicted_2B: 0.2475 -> 0.0000 (deboost -0.2475, worse) | AB rounded to 6 (raw=5.75), rates preserved: AVG=0.186 HR/AB=0.026 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3144 -> 0.1670 (deboost -0.1474, 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 | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.1670 -> 0.3144 (boost 0.1474, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621020",
"player_name": "Dansby Swanson",
"position": "SS",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.095,
"predicted_3B": 0.018,
"predicted_AB": 3.464,
"predicted_AVG": 0.215,
"predicted_BB": 0.536,
"predicted_H": 0.64,
"predicted_HR": 0.08,
"predicted_OBP": 0.281,
"predicted_R": 0.667,
"predicted_RBI": 0.34,
"predicted_SLG": 0.334,
"predicted_SO": 0.901
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2475,
"predicted_3B": 0.022,
"predicted_AB": 5.7464,
"predicted_AVG": 0.1996,
"predicted_BB": 0.8079,
"predicted_H": 1.0436,
"predicted_HBP": 0.029,
"predicted_HR": 0.1439,
"predicted_OBP": 0.2783,
"predicted_R": 0.9248,
"predicted_RBI": 0.6097,
"predicted_SLG": 0.3258,
"predicted_SO": 1.6514
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.095,
"after": 0.2475,
"delta": 0.1525,
"percent_delta": 1.6053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.022,
"delta": 0.004,
"percent_delta": 0.2222,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.464,
"after": 5.7464,
"delta": 2.2824,
"percent_delta": 0.6589,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.1996,
"delta": -0.0154,
"percent_delta": -0.0716,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.536,
"after": 0.8079,
"delta": 0.2719,
"percent_delta": 0.5073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0436,
"delta": 0.4036,
"percent_delta": 0.6306,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.1439,
"delta": 0.0639,
"percent_delta": 0.7987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2783,
"delta": -0.0027,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.9248,
"delta": 0.2578,
"percent_delta": 0.3865,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.6097,
"delta": 0.2697,
"percent_delta": 0.7932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.334,
"after": 0.3258,
"delta": -0.0082,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.901,
"after": 1.6514,
"delta": 0.7504,
"percent_delta": 0.8329,
"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.464,
"after": 5.7464,
"delta": 2.2824,
"percent_delta": 0.6589,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.1996,
"delta": -0.0154,
"percent_delta": -0.0716,
"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.2475,
"predicted_3B": 0.022,
"predicted_AB": 5.7464,
"predicted_AVG": 0.1858,
"predicted_BB": 0.8138,
"predicted_H": 1.0678,
"predicted_HBP": 0.029,
"predicted_HR": 0.1491,
"predicted_OBP": 0.2868,
"predicted_R": 0.9597,
"predicted_RBI": 0.6327,
"predicted_SLG": 0.3144,
"predicted_SO": 1.6393
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2475,
"after": 0.2475,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.022,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.7464,
"after": 5.7464,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1996,
"after": 0.1858,
"delta": -0.0138,
"percent_delta": -0.0691,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8079,
"after": 0.8138,
"delta": 0.0059,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0436,
"after": 1.0678,
"delta": 0.0242,
"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.1439,
"after": 0.1491,
"delta": 0.0052,
"percent_delta": 0.0361,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2783,
"after": 0.2868,
"delta": 0.0085,
"percent_delta": 0.0305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9248,
"after": 0.9597,
"delta": 0.0349,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6097,
"after": 0.6327,
"delta": 0.023,
"percent_delta": 0.0377,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3258,
"after": 0.3144,
"delta": -0.0114,
"percent_delta": -0.035,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6514,
"after": 1.6393,
"delta": -0.0121,
"percent_delta": -0.0073,
"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.2783,
"after": 0.2868,
"delta": 0.0085,
"percent_delta": 0.0305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.1996,
"after": 0.1858,
"delta": -0.0138,
"percent_delta": -0.0691,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.75), rates preserved: AVG=0.186 HR/AB=0.026",
"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.2475,
"after": 0.0,
"delta": -0.2475,
"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": 5.7464,
"after": 6.0,
"delta": 0.2536,
"percent_delta": 0.0441,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8138,
"after": 1.0,
"delta": 0.1862,
"percent_delta": 0.2288,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0678,
"after": 1.0,
"delta": -0.0678,
"percent_delta": -0.0635,
"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.1491,
"after": 0.0,
"delta": -0.1491,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6327,
"after": 1.0,
"delta": 0.3673,
"percent_delta": 0.5805,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6393,
"after": 2.0,
"delta": 0.3607,
"percent_delta": 0.22,
"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.6327,
"after": 1.0,
"delta": 0.3673,
"percent_delta": 0.5805,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2475,
"after": 0.0,
"delta": -0.2475,
"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.9597,
"after": 1.0,
"delta": 0.0403,
"percent_delta": 0.042,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.1858,
"after": 0.167,
"delta": -0.0188,
"percent_delta": -0.1012,
"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.2868,
"after": 0.286,
"delta": -0.0008,
"percent_delta": -0.0028,
"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.3144,
"after": 0.167,
"delta": -0.1474,
"percent_delta": -0.4688,
"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.3144,
"after": 0.167,
"delta": -0.1474,
"percent_delta": -0.4688,
"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": 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": 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": 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.1858,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2868,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3144,
"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.167,
"after": 0.1858,
"delta": 0.0188,
"percent_delta": 0.1127,
"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.2868,
"delta": 0.0008,
"percent_delta": 0.0029,
"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.3144,
"delta": 0.1474,
"percent_delta": 0.8826,
"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.167,
"after": 0.3144,
"delta": 0.1474,
"percent_delta": 0.8826,
"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.095,
"after": 0.0,
"delta": -0.095,
"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.464,
"after": 4.0,
"delta": 0.536,
"percent_delta": 0.1547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.215,
"after": 0.1858,
"delta": -0.0292,
"percent_delta": -0.1358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.536,
"after": 0.0,
"delta": -0.536,
"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.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2868,
"delta": 0.0058,
"percent_delta": 0.0206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.667,
"after": 0.0,
"delta": -0.667,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.334,
"after": 0.3144,
"delta": -0.0196,
"percent_delta": -0.0587,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.901,
"after": 0.0,
"delta": -0.901,
"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.464,
"after": 4.0,
"delta": 0.536,
"percent_delta": 0.1547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.901,
"after": 0.0,
"delta": -0.901,
"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.095 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 3.464 | - |
| predicted_AVG | 0.215 | - |
| predicted_BB | 0.536 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.281 | - |
| predicted_R | 0.667 | - |
| predicted_RBI | 0.340 | - |
| predicted_SLG | 0.334 | - |
| predicted_SO | 0.901 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.247 | 0.152 |
| predicted_3B | 0.022 | 0.004 |
| predicted_AB | 5.746 | 2.282 |
| predicted_AVG | 0.200 | -0.015 |
| predicted_BB | 0.808 | 0.272 |
| predicted_H | 1.044 | 0.404 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.144 | 0.064 |
| predicted_OBP | 0.278 | -0.003 |
| predicted_R | 0.925 | 0.258 |
| predicted_RBI | 0.610 | 0.270 |
| predicted_SLG | 0.326 | -0.008 |
| predicted_SO | 1.651 | 0.750 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.247 | 0.000 |
| predicted_3B | 0.022 | 0.000 |
| predicted_AB | 5.746 | 0.000 |
| predicted_AVG | 0.186 | -0.014 |
| predicted_BB | 0.814 | 0.006 |
| predicted_H | 1.068 | 0.024 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.149 | 0.005 |
| predicted_OBP | 0.287 | 0.009 |
| predicted_R | 0.960 | 0.035 |
| predicted_RBI | 0.633 | 0.023 |
| predicted_SLG | 0.314 | -0.011 |
| predicted_SO | 1.639 | -0.012 |
AB rounded to 6 (raw=5.75), rates preserved: AVG=0.186 HR/AB=0.026
| 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.247 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 6.000 | 0.254 |
| predicted_AVG | 0.167 | -0.019 |
| predicted_BB | 1.000 | 0.186 |
| predicted_H | 1.000 | -0.068 |
| predicted_HR | 0.000 | -0.149 |
| predicted_OBP | 0.286 | -0.001 |
| predicted_R | 1.000 | 0.040 |
| predicted_RBI | 1.000 | 0.367 |
| predicted_SLG | 0.167 | -0.147 |
| predicted_SO | 2.000 | 0.361 |
Attached 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 | 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 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 6.000 | 0.1667 | 0.2105 | 0.2778 | 0.1667 | 0.0000 | 0.0556 | 0.0556 | 0.3333 |
| last_10 | 0.20 | 10 | - | 32.000 | 4.000 | 2.000 | 0.000 | 0.000 | 1.000 | 3.000 | 5.000 | 13.000 | 0.1250 | 0.2432 | 0.1875 | 0.1250 | 0.0000 | 0.0312 | 0.1562 | 0.4062 |
| season | 0.60 | 62 | - | 769.000 | 153.000 | 21.000 | 4.000 | 33.000 | 118.000 | 148.000 | 119.000 | 200.000 | 0.1990 | 0.3046 | 0.3654 | 0.1990 | 0.0429 | 0.1535 | 0.1547 | 0.2601 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4410 |
| predicted_3B | 0.0270 |
| predicted_AB | 8.6440 |
| predicted_AVG | 0.1801 |
| predicted_BB | 1.1530 |
| predicted_H | 1.5560 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.2250 |
| predicted_OBP | 0.2748 |
| predicted_R | 1.2520 |
| predicted_RBI | 0.9520 |
| predicted_SLG | 0.3154 |
| predicted_SO | 2.6040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0950 | 0.4410 | 0.2475 | model_form_blend |
| predicted_3B | 0.0180 | 0.0270 | 0.0220 | model_form_blend |
| predicted_AB | 3.4640 | 8.6440 | 5.7464 | model_form_blend |
| predicted_AVG | 0.2150 | 0.1801 | 0.1996 | model_form_blend |
| predicted_BB | 0.5360 | 1.1530 | 0.8079 | model_form_blend |
| predicted_H | 0.6400 | 1.5560 | 1.0436 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.0800 | 0.2250 | 0.1439 | model_form_blend |
| predicted_OBP | 0.2810 | 0.2748 | 0.2783 | model_form_blend |
| predicted_R | 0.6670 | 1.2520 | 0.9248 | model_form_blend |
| predicted_RBI | 0.3400 | 0.9520 | 0.6097 | model_form_blend |
| predicted_SLG | 0.3340 | 0.3154 | 0.3258 | model_form_blend |
| predicted_SO | 0.9010 | 2.6040 | 1.6514 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.199 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 20260610_CHC@COL |
| game_type | full |
| mlbID | 621020 |
| playerID | 621020 |
| playerName | Dansby Swanson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.9 |
| sl_bb_percent | 12.6 |
| sl_woba | 0.277 |
| sl_xwoba | 0.29 |
| sl_xba | 0.195 |
| sl_xslg | 0.342 |
| sl_sweet_spot_percent | 26.9 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 41.0 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 30.5 |
| sl_swing_percent | 44.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 | 5.000 | 5.000 | 5.000 | Pitching_BB | 1.909 | 1.000 | 3.091 | 4.000 |
| predicted_ER | 4.000 | 4.000 | 4.000 | Pitching_ER | 2.909 | 8.000 | 1.091 | -4.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 5.545 | 8.000 | -2.545 | -5.000 |
| predicted_IP | 4.200 | 4.200 | 4.200 | Pitching_InningsPitched | 5.073 | 3.200 | -0.873 | 1.000 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 4.818 | 6.000 | -0.818 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.0000 -> 4.2000 (deboost -0.8000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.0000 -> 4.2000 (deboost -0.8000, worse) | Starter workload capped by recent innings, season ERA/WHIP, and team-form context. |
| 3 | 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": "665795",
"player_name": "Edward Cabrera",
"position": "Starter",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement 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": 4.0,
"predicted_H": 3.0,
"predicted_HR": 1.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": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 5.0,
"predicted_ER": 4.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 4.2,
"predicted_SO": 4.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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 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.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"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": 4.0,
"predicted_H": 3.0,
"predicted_HR": 1.0,
"predicted_IP": 4.2,
"predicted_R": 4.0,
"predicted_SO": 4.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": 4.0,
"after": 4.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": 4.2,
"after": 4.2,
"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": 5.0,
"after": 5.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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 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.0,
"after": 4.2,
"delta": -0.8,
"percent_delta": -0.16,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 5.000 | - |
| predicted_ER | 4.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 4.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 5.000 | 0.000 |
| predicted_ER | 4.000 | 0.000 |
| predicted_H | 3.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 4.200 | -0.800 |
| 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 | 22.100 | 20.000 | 31.000 | 9.000 | 24.000 | 8.000 | 8.0597 | 1.7910 | 0.8955 | 1.3881 | 0.4030 | 1.0746 | 0.3582 |
| last_10 | 0.35 | 10 | 51.200 | 32.000 | 60.000 | 20.000 | 48.000 | 11.000 | 5.5742 | 1.5484 | 0.6193 | 1.1613 | 0.3871 | 0.9290 | 0.2129 |
| season | 0.20 | 11 | 57.200 | 32.000 | 61.000 | 21.000 | 53.000 | 11.000 | 4.9942 | 1.4220 | 0.5549 | 1.0578 | 0.3642 | 0.9191 | 0.1908 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8790 |
| predicted_ER | 3.2190 |
| predicted_ERA | 5.8885 |
| predicted_H | 5.6790 |
| predicted_HR | 1.1430 |
| predicted_IP | 5.0000 |
| predicted_SO | 4.7960 |
| predicted_WHIP | 1.5362 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 5.0000 | 1.8790 | 3.3834 | model_form_blend |
| predicted_ER | 4.0000 | 3.2190 | 3.5955 | model_form_blend |
| predicted_ERA | - | 5.8885 | 5.8885 | form_only |
| predicted_H | 3.0000 | 5.6790 | 4.3876 | model_form_blend |
| predicted_HR | 1.0000 | 1.1430 | 1.0741 | model_form_blend |
| predicted_IP | 5.0000 | 5.0000 | 5.0000 | model_form_blend |
| predicted_SO | 4.0000 | 4.7960 | 4.4123 | model_form_blend |
| predicted_WHIP | - | 1.5362 | 1.5362 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 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 | 4.2 |
| H | 3 |
| R | 4 |
| ER | 4 |
| BB | 5 |
| SO | 4 |
| HR | 1 |
| BF | 22 |
| 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 | 20 |
| Pitching_ER | 8 |
| Pitching_ERA | 4.99 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 4 |
| Pitching_H | 8 |
| Pitching_HBP | 0 |
| Pitching_HR | 3 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 3.2 |
| Pitching_Pitches | 80 |
| Pitching_R | 8 |
| Pitching_SO | 6 |
| Pitching_Strikes | 49 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_SF@CHC |
| game_type | full |
| mlbID | 665795 |
| playerID | 665795 |
| playerName | Edward Cabrera |
| pos | P |
| started | True |
| startingPosition | P |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-05 |
| sl_k_percent | 21.5 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.351 |
| sl_xwoba | 0.336 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 12.9 |
| sl_hard_hit_percent | 40.9 |
| sl_whiff_percent | 27.6 |
| sl_swing_percent | 47.9 |
| sl_avg_best_speed | 81.514540595 |
| sl_avg_hyper_speed | 95.13290131 |
| 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.368 | 0.000 | -0.368 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.684 | 0.000 | -0.684 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.700 | 1.100 | 0.300 | -0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.000 | 2.000 | 0.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | 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": "573204",
"player_name": "Caleb Thielbar",
"position": "Middle Reliever",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement 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 | 3.000 | 4.000 | 2.000 | 6.000 | 2.000 | 5.7857 | 1.2857 | 0.6429 | 0.8571 | 0.4286 | 1.2857 | 0.4286 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 8.000 | 3.000 | 9.000 | 2.000 | 3.8571 | 1.1786 | 0.4286 | 0.8571 | 0.3214 | 0.9643 | 0.2143 |
| season | 0.20 | 18 | 16.100 | 6.000 | 12.000 | 7.000 | 19.000 | 3.000 | 3.3061 | 1.1633 | 0.3674 | 0.7347 | 0.4286 | 1.1633 | 0.1837 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3750 |
| predicted_ER | 0.4970 |
| predicted_ERA | 4.4687 |
| predicted_H | 0.9100 |
| predicted_HR | 0.2050 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0190 |
| predicted_WHIP | 1.2852 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3750 | 0.1475 | model_form_blend |
| predicted_ER | 0.0000 | 0.4970 | 0.1954 | model_form_blend |
| predicted_ERA | - | 4.4687 | 4.4687 | form_only |
| predicted_H | 0.0000 | 0.9100 | 0.3578 | model_form_blend |
| predicted_HR | 0.0000 | 0.2050 | 0.0806 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0190 | 1.0075 | model_form_blend |
| predicted_WHIP | - | 1.2852 | 1.2852 | 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 | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 26 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.86 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 20 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 573204 |
| playerID | 573204 |
| playerName | Caleb Thielbar |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.5 |
| sl_bb_percent | 10.1 |
| sl_woba | 0.312 |
| sl_xwoba | 0.3 |
| sl_sweet_spot_percent | 30.2 |
| sl_barrel_batted_rate | 11.9 |
| sl_hard_hit_percent | 37.2 |
| sl_whiff_percent | 27.7 |
| sl_swing_percent | 52.8 |
| sl_avg_best_speed | 75.920194286 |
| sl_avg_hyper_speed | 94.592444146 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.278 | 1.000 | -0.278 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.278 | 1.000 | -0.278 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.944 | 2.000 | -0.944 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.806 | 0.000 | 0.194 | 1.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.889 | 0.000 | 0.111 | 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": "694037",
"player_name": "Daniel Palencia",
"position": "Middle Reliever",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 4.000 | 0.000 | 4.000 | 0.000 | 1.8000 | 0.8000 | 0.2000 | 0.8000 | 0.0000 | 0.8000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 11.000 | 2.000 | 10.000 | 2.000 | 3.8571 | 1.3929 | 0.4286 | 1.1786 | 0.2143 | 1.0714 | 0.2143 |
| season | 0.20 | 17 | 15.200 | 4.000 | 15.000 | 4.000 | 16.000 | 2.000 | 2.2979 | 1.2128 | 0.2553 | 0.9575 | 0.2553 | 1.0213 | 0.1277 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2740 |
| predicted_ER | 0.4120 |
| predicted_ERA | 3.7035 |
| predicted_H | 0.9610 |
| predicted_HR | 0.1250 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9370 |
| predicted_WHIP | 1.2351 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2740 | 0.1066 | model_form_blend |
| predicted_ER | 0.0000 | 0.4120 | 0.1603 | model_form_blend |
| predicted_ERA | - | 3.7035 | 3.7035 | form_only |
| predicted_H | 0.0000 | 0.9610 | 0.3738 | model_form_blend |
| predicted_HR | 0.0000 | 0.1250 | 0.0486 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9370 | 0.9755 | model_form_blend |
| predicted_WHIP | - | 1.2351 | 1.2351 | 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 | 18 |
| Season rows before report date | 18 |
| Report year | 2026 |
| Profile rows used | 17 |
| 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 | 3 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.87 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 18 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 694037 |
| playerID | 694037 |
| playerName | Daniel Palencia |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.9 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.32 |
| sl_xwoba | 0.308 |
| sl_sweet_spot_percent | 54.3 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 30.4 |
| sl_whiff_percent | 30.9 |
| sl_swing_percent | 51.7 |
| sl_avg_best_speed | 80.245551739 |
| sl_avg_hyper_speed | 93.258805217 |
| 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.226 | 1.000 | 1.774 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.419 | 0.000 | -0.419 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.839 | 1.000 | -0.839 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.755 | 1.000 | 0.245 | 0.000 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 0.484 | 1.000 | 2.516 | 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": "571948",
"player_name": "Hoby Milner",
"position": "Middle Reliever",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 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.000 | 6.000 | 6.000 | 1.000 | 3.000 | 1.000 | 13.5000 | 1.7500 | 1.5000 | 1.5000 | 0.2500 | 0.7500 | 0.2500 |
| last_10 | 0.35 | 10 | 8.200 | 8.000 | 12.000 | 1.000 | 8.000 | 1.000 | 8.3077 | 1.5000 | 0.9231 | 1.3846 | 0.1154 | 0.9231 | 0.1154 |
| season | 0.20 | 30 | 29.000 | 13.000 | 26.000 | 7.000 | 15.000 | 3.000 | 4.0345 | 1.1379 | 0.4483 | 0.8965 | 0.2414 | 0.5172 | 0.1035 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2550 |
| predicted_ER | 0.7430 |
| predicted_ERA | 7.2661 |
| predicted_H | 1.0690 |
| predicted_HR | 0.1460 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7760 |
| predicted_WHIP | 1.4398 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.2550 | 1.2093 | model_form_blend |
| predicted_ER | 0.0000 | 0.7430 | 0.3367 | model_form_blend |
| predicted_ERA | - | 7.2661 | 7.2661 | form_only |
| predicted_H | 0.0000 | 1.0690 | 0.4844 | model_form_blend |
| predicted_HR | 0.0000 | 0.1460 | 0.0662 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 3.0000 | 0.7760 | 1.9923 | model_form_blend |
| predicted_WHIP | - | 1.4398 | 1.4398 | 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 | 30 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| SO | 3 |
| 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 | 0 |
| Pitching_ERA | 4.03 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260609_CHC@COL |
| game_type | full |
| mlbID | 571948 |
| playerID | 571948 |
| playerName | Hoby Milner |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-09 |
| sl_k_percent | 12.4 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.292 |
| sl_xwoba | 0.358 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 36.5 |
| sl_whiff_percent | 17.6 |
| sl_swing_percent | 45.5 |
| sl_avg_best_speed | 78.708475833 |
| sl_avg_hyper_speed | 93.625802632 |
| 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.345 | 0.000 | -0.345 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.310 | 2.000 | -0.310 | -2.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 1.000 | 3.000 | 1.000 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.907 | 1.000 | 0.093 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.207 | 1.000 | 0.793 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "657097",
"player_name": "Jacob Webb",
"position": "Middle Reliever",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement 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": "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": 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": 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": 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": 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 | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 2.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 2.000 | 5.000 | 2.000 | 5.000 | 1.000 | 3.1765 | 1.2353 | 0.3529 | 0.8823 | 0.3529 | 0.8823 | 0.1765 |
| last_10 | 0.35 | 10 | 11.000 | 2.000 | 10.000 | 2.000 | 15.000 | 1.000 | 1.6364 | 1.0909 | 0.1818 | 0.9091 | 0.1818 | 1.3636 | 0.0909 |
| season | 0.20 | 29 | 29.100 | 9.000 | 29.000 | 10.000 | 35.000 | 4.000 | 2.7614 | 1.3295 | 0.3068 | 0.9886 | 0.3409 | 1.1932 | 0.1364 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3250 |
| predicted_ER | 0.3770 |
| predicted_ERA | 3.3974 |
| predicted_H | 0.9350 |
| predicted_HR | 0.1400 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0310 |
| predicted_WHIP | 1.2597 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3250 | 0.1476 | model_form_blend |
| predicted_ER | 0.0000 | 0.3770 | 0.1713 | model_form_blend |
| predicted_ERA | - | 3.3974 | 3.3974 | form_only |
| predicted_H | 2.0000 | 0.9350 | 1.5162 | model_form_blend |
| predicted_HR | 0.0000 | 0.1400 | 0.0636 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.0310 | 1.5598 | model_form_blend |
| predicted_WHIP | - | 1.2597 | 1.2597 | 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 | 2 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| 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 | 2 |
| Pitching_ERA | 2.76 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 12 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | BS |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 657097 |
| playerID | 657097 |
| playerName | Jacob Webb |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.8 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.305 |
| sl_xwoba | 0.312 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 48.1 |
| sl_whiff_percent | 31.5 |
| sl_swing_percent | 52.9 |
| sl_avg_best_speed | 80.58316325 |
| sl_avg_hyper_speed | 95.082536962 |
| 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.458 | 0.000 | 1.542 | 2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.667 | 0.000 | -0.667 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.083 | 2.000 | -0.083 | -1.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.700 | 0.200 | -0.600 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.000 | 1.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "664208",
"player_name": "Phil Maton",
"position": "Middle Reliever",
"team": "CHC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 2.000 | 7.000 | 1.000 | 4.000 | 0.000 | 4.5000 | 2.0000 | 0.5000 | 1.7500 | 0.2500 | 1.0000 | 0.0000 |
| last_10 | 0.35 | 10 | 8.200 | 3.000 | 10.000 | 5.000 | 8.000 | 0.000 | 3.1154 | 1.7308 | 0.3462 | 1.1539 | 0.5769 | 0.9231 | 0.0000 |
| season | 0.20 | 24 | 21.000 | 16.000 | 26.000 | 11.000 | 24.000 | 3.000 | 6.8571 | 1.7619 | 0.7619 | 1.2381 | 0.5238 | 1.1429 | 0.1429 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2210 |
| predicted_ER | 0.2790 |
| predicted_ERA | 4.4254 |
| predicted_H | 0.6680 |
| predicted_HR | 0.0510 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.5480 |
| predicted_WHIP | 1.5667 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.2210 | 1.2544 | model_form_blend |
| predicted_ER | 0.0000 | 0.2790 | 0.1169 | model_form_blend |
| predicted_ERA | - | 4.4254 | 4.4254 | form_only |
| predicted_H | 1.0000 | 0.6680 | 0.8609 | model_form_blend |
| predicted_HR | 0.0000 | 0.0510 | 0.0214 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.5480 | 0.2297 | model_form_blend |
| predicted_WHIP | - | 1.5667 | 1.5667 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 24 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 0.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 2 |
| 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 | 6.86 |
| 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.2 |
| Pitching_Pitches | 12 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 664208 |
| playerID | 664208 |
| playerName | Phil Maton |
| pos | P |
| started | False |
| startingPosition | P |
| team | CHC |
| teamID | 5 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.8 |
| sl_bb_percent | 10.9 |
| sl_woba | 0.397 |
| sl_xwoba | 0.363 |
| sl_sweet_spot_percent | 39.7 |
| sl_barrel_batted_rate | 11.1 |
| sl_hard_hit_percent | 44.4 |
| sl_whiff_percent | 26.1 |
| sl_swing_percent | 45.6 |
| sl_avg_best_speed | 76.860813871 |
| sl_avg_hyper_speed | 94.634327742 |
| Field | Value |
|---|---|
| Pitcher | Ryan Feltner |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.3400 |
| ESPN Rank | 94 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0282 |
| Avg Velo | 89.2102 |
| Avg Spin | 2389.3741 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 5 |
| Pre H | 6 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 4.2188 |
| Season WHIP | 1.1562 |
| Role Avg IP | 4.5710 |
| Recent Avg IP | 4.7330 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"opponent": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"edges": {
"quality_edge": -0.1669,
"offense_edge": 0.0031,
"opponent_offense_edge": 0.0573,
"defense_strength": -0.2102,
"opponent_defense_weakness": 0.0382,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 0.9847,
"run_prevention": 1.0385,
"strikeout": 0.9904
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663372",
"profile": {
"available": true,
"pitcher_id": "663372",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 88.0,
"k_percent": 17.7,
"bb_percent": 7.7,
"woba": 0.322,
"xwoba": 0.367,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 44.8,
"avg_best_speed": 78.1487,
"avg_hyper_speed": 94.5607,
"whiff_percent": 24.3,
"swing_percent": 48.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.9664,
"command_and_miss": -0.3214,
"regression_edge": -1.2857,
"xwoba_edge": -1.4857,
"barrel_edge": -1.1556,
"hard_hit_edge": -0.9143,
"whiff_edge": -0.1857,
"bb_edge": 0.325,
"pitch_design_score": -0.0282
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663372",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 69,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 69,
"pitch_usage": 0.0,
"release_speed": 89.21018122301442,
"release_spin_rate": 2389.3740724285353,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 69,
"pitch_usage": 0.0,
"release_speed": 89.21018122301442,
"release_spin_rate": 2389.3740724285353,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2102,
"release_spin_rate": 2389.3741,
"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.0282,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2014,
"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.34,
"sample_weight": 0.45,
"run_prevention_factor": 1.0289,
"strikeout_factor": 0.9838,
"walk_factor": 0.9883,
"homer_factor": 1.0781,
"woba_minus_xwoba": -0.045,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663372",
"espn_id": 4019484,
"player_name": "Ryan Feltner",
"team": "COL",
"role": "pitcher",
"espn_rank": 94,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 94,
"gp_value": 7.0,
"gp_rank": 425,
"gs_value": 7.0,
"gs_rank": 138,
"qs_value": 2.0,
"qs_rank": 107,
"era_value": 4.2187,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 32.0,
"ip_rank": 188,
"h_value": 27.0,
"h_rank": 213,
"er_value": 15.0,
"er_rank": 189,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 23.0,
"k_rank": 297,
"k_per_9_value": 6.46875,
"k_per_9_rank": 42,
"whip_value": 1.1562,
"whip_rank": null,
"war_value": 0.97,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.013,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.013,
"adjusted": 4
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9947,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0351,
"adjusted": 1
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9927,
"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": 32.0,
"ER": 15,
"H": 27,
"BB": 10,
"SO": 23,
"HR": 5,
"ERA": 4.21875,
"WHIP": 1.15625,
"K9": 6.46875,
"HR9": 1.40625,
"games_pitched": 7,
"quality_starts": 2,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 7,
"error_prone": false
},
"games_count": 7,
"latest_game_date": "2026-06-05T00:00:00"
}{
"available": true,
"pitcher_id": "663372",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 69,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 69,
"pitch_usage": 0.0,
"release_speed": 89.21018122301442,
"release_spin_rate": 2389.3740724285353,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 69,
"pitch_usage": 0.0,
"release_speed": 89.21018122301442,
"release_spin_rate": 2389.3740724285353,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2102,
"release_spin_rate": 2389.3741,
"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.0282,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2014,
"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.7627118644067797,
"last_10": 0.23728813559322032
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5833,
"prior_weight": 0.4167
},
"role": "pitcher",
"player_id": "663372",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 7,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 23.2,
"ER": 11.0,
"R": 12.0,
"H": 19.0,
"BB": 7.0,
"SO": 18.0,
"HR": 4.0,
"BF": 95.0,
"Pitches": 353.0
},
"per_game": {
"IP": 4.2,
"ER": 2.2,
"R": 2.4,
"H": 3.8,
"BB": 1.4,
"SO": 3.6,
"HR": 0.8,
"BF": 19.0,
"Pitches": 70.6
},
"rates": {
"ERA": 4.1831,
"WHIP": 1.0986,
"ER_per_IP": 0.46479,
"H_per_IP": 0.80282,
"BB_per_IP": 0.29577,
"SO_per_IP": 0.76056,
"HR_per_IP": 0.16901
}
},
"last_10": {
"games": 7,
"totals": {
"IP": 32.0,
"ER": 15.0,
"R": 16.0,
"H": 27.0,
"BB": 10.0,
"SO": 23.0,
"HR": 5.0,
"BF": 130.0,
"Pitches": 470.0
},
"per_game": {
"IP": 4.2,
"ER": 2.1429,
"R": 2.2857,
"H": 3.8571,
"BB": 1.4286,
"SO": 3.2857,
"HR": 0.7143,
"BF": 18.5714,
"Pitches": 67.1429
},
"rates": {
"ERA": 4.2188,
"WHIP": 1.1562,
"ER_per_IP": 0.46875,
"H_per_IP": 0.84375,
"BB_per_IP": 0.3125,
"SO_per_IP": 0.71875,
"HR_per_IP": 0.15625
}
},
"season": {
"games": 7,
"totals": {
"IP": 32.0,
"ER": 15.0,
"R": 16.0,
"H": 27.0,
"BB": 10.0,
"SO": 23.0,
"HR": 5.0,
"BF": 130.0,
"Pitches": 470.0
},
"per_game": {
"IP": 4.2,
"ER": 2.1429,
"R": 2.2857,
"H": 3.8571,
"BB": 1.4286,
"SO": 3.2857,
"HR": 0.7143,
"BF": 18.5714,
"Pitches": 67.1429
},
"rates": {
"ERA": 4.2188,
"WHIP": 1.1562,
"ER_per_IP": 0.46875,
"H_per_IP": 0.84375,
"BB_per_IP": 0.3125,
"SO_per_IP": 0.71875,
"HR_per_IP": 0.15625
}
}
},
"weighted_prediction": {
"predicted_IP": 4.2,
"predicted_ER": 2.279,
"predicted_H": 4.2,
"predicted_BB": 1.571,
"predicted_SO": 3.978,
"predicted_HR": 0.747,
"predicted_ERA": 4.2677,
"predicted_WHIP": 1.2008
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5261,
"form_weight": 0.4739,
"form_reliability": 0.5833,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5833,
"prior_weight": 0.4167
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 4.2,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 5.0,
"form": 2.279,
"final": 3.7104,
"source": "model_form_blend"
},
"predicted_H": {
"model": 6.0,
"form": 4.2,
"final": 5.1469,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.571,
"final": 1.7967,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 3.978,
"final": 3.4635,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 2.0,
"form": 0.747,
"final": 1.4061,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2677,
"final": 4.2677,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2008,
"final": 1.2008,
"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 | Antonio Senzatela |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1681 |
| ESPN Rank | 23 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1761 |
| Avg Velo | 92.8592 |
| Avg Spin | 2303.9796 |
| 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.1130 |
| Season WHIP | 1.0174 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"opponent": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"edges": {
"quality_edge": -0.1669,
"offense_edge": 0.0031,
"opponent_offense_edge": 0.0573,
"defense_strength": -0.2102,
"opponent_defense_weakness": 0.0382,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 0.9847,
"run_prevention": 1.0385,
"strikeout": 0.9904
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "622608",
"profile": {
"available": true,
"pitcher_id": "622608",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 111.0,
"k_percent": 21.5,
"bb_percent": 7.4,
"woba": 0.258,
"xwoba": 0.281,
"sweet_spot_percent": 32.4,
"barrel_batted_rate": 5.7,
"hard_hit_percent": 39.0,
"avg_best_speed": 75.2625,
"avg_hyper_speed": 93.9383,
"whiff_percent": 26.5,
"swing_percent": 48.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.737,
"command_and_miss": 0.0479,
"regression_edge": -0.6571,
"xwoba_edge": 0.9714,
"barrel_edge": 0.3556,
"hard_hit_edge": -0.0857,
"whiff_edge": 0.1286,
"bb_edge": 0.4,
"pitch_design_score": 0.1761
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "622608",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 92.85923898658872,
"release_spin_rate": 2303.9795819641,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 92.85923898658872,
"release_spin_rate": 2303.9795819641,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8592,
"release_spin_rate": 2303.9796,
"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.1761,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.2582,
"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.1681,
"sample_weight": 0.45,
"run_prevention_factor": 0.9857,
"strikeout_factor": 0.9992,
"walk_factor": 0.9856,
"homer_factor": 0.9756,
"woba_minus_xwoba": -0.023,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "622608",
"espn_id": 33750,
"player_name": "Antonio Senzatela",
"team": "COL",
"role": "pitcher",
"espn_rank": 23,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 23,
"gp_value": 20.0,
"gp_rank": 163,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.113,
"era_rank": null,
"w_value": 6.0,
"w_rank": 18,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 3.0,
"sv_rank": 43,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 38.1,
"ip_rank": 156,
"h_value": 28.0,
"h_rank": 204,
"er_value": 9.0,
"er_rank": 329,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 32.0,
"k_rank": 196,
"k_per_9_value": 7.5130434,
"k_per_9_rank": 33,
"whip_value": 1.0173,
"whip_rank": null,
"war_value": 1.86,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9936,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9936,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9935,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.989,
"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": 16.0,
"ER": 6,
"H": 16,
"BB": 5,
"SO": 12,
"HR": 3,
"ERA": 3.375,
"WHIP": 1.3125,
"K9": 6.75,
"HR9": 1.6875,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "622608",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 92.85923898658872,
"release_spin_rate": 2303.9795819641,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 92.85923898658872,
"release_spin_rate": 2303.9795819641,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8592,
"release_spin_rate": 2303.9796,
"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.1761,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.2582,
"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.573,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6023,
"prior_weight": 0.3977
},
"role": "pitcher",
"player_id": "622608",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 20,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.1,
"ER": 5.0,
"R": 6.0,
"H": 11.0,
"BB": 3.0,
"SO": 6.0,
"HR": 2.0,
"BF": 31.0,
"Pitches": 118.0
},
"per_game": {
"IP": 1.1,
"ER": 1.0,
"R": 1.2,
"H": 2.2,
"BB": 0.6,
"SO": 1.2,
"HR": 0.4,
"BF": 6.2,
"Pitches": 23.6
},
"rates": {
"ERA": 7.1053,
"WHIP": 2.2105,
"ER_per_IP": 0.78947,
"H_per_IP": 1.73684,
"BB_per_IP": 0.47368,
"SO_per_IP": 0.94737,
"HR_per_IP": 0.31579
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 16.0,
"ER": 6.0,
"R": 7.0,
"H": 16.0,
"BB": 5.0,
"SO": 12.0,
"HR": 3.0,
"BF": 67.0,
"Pitches": 233.0
},
"per_game": {
"IP": 1.2,
"ER": 0.6,
"R": 0.7,
"H": 1.6,
"BB": 0.5,
"SO": 1.2,
"HR": 0.3,
"BF": 6.7,
"Pitches": 23.3
},
"rates": {
"ERA": 3.375,
"WHIP": 1.3125,
"ER_per_IP": 0.375,
"H_per_IP": 1.0,
"BB_per_IP": 0.3125,
"SO_per_IP": 0.75,
"HR_per_IP": 0.1875
}
},
"season": {
"games": 20,
"totals": {
"IP": 38.1,
"ER": 9.0,
"R": 11.0,
"H": 28.0,
"BB": 11.0,
"SO": 32.0,
"HR": 3.0,
"BF": 149.0,
"Pitches": 533.0
},
"per_game": {
"IP": 2.0,
"ER": 0.45,
"R": 0.55,
"H": 1.4,
"BB": 0.55,
"SO": 1.6,
"HR": 0.15,
"BF": 7.45,
"Pitches": 26.65
},
"rates": {
"ERA": 2.113,
"WHIP": 1.0174,
"ER_per_IP": 0.23478,
"H_per_IP": 0.73043,
"BB_per_IP": 0.28696,
"SO_per_IP": 0.83478,
"HR_per_IP": 0.07826
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.764,
"predicted_H": 1.708,
"predicted_BB": 0.555,
"predicted_SO": 1.317,
"predicted_HR": 0.283,
"predicted_ERA": 4.6315,
"predicted_WHIP": 1.5252
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.518,
"form_weight": 0.482,
"form_reliability": 0.6023,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 7.573,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6023,
"prior_weight": 0.3977
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.764,
"final": 0.3682,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.708,
"final": 0.8232,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.555,
"final": 0.2675,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.317,
"final": 1.1528,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.283,
"final": 0.1364,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.6315,
"final": 4.6315,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5252,
"final": 1.5252,
"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 | Juan Mejia |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0582 |
| ESPN Rank | 552 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1.1000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 6.2308 |
| Season WHIP | 1.7473 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"opponent": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"edges": {
"quality_edge": -0.1669,
"offense_edge": 0.0031,
"opponent_offense_edge": 0.0573,
"defense_strength": -0.2102,
"opponent_defense_weakness": 0.0382,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 0.9847,
"run_prevention": 1.0385,
"strikeout": 0.9904
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "675848",
"profile": {
"available": true,
"pitcher_id": "675848",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 108.0,
"k_percent": 24.5,
"bb_percent": 12.6,
"woba": 0.342,
"xwoba": 0.308,
"sweet_spot_percent": 33.0,
"barrel_batted_rate": 3.4,
"hard_hit_percent": 38.6,
"avg_best_speed": 79.4739,
"avg_hyper_speed": 94.6887,
"whiff_percent": 28.9,
"swing_percent": 48.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0107,
"command_and_miss": 0.1007,
"regression_edge": 0.9714,
"xwoba_edge": 0.2,
"barrel_edge": 0.8667,
"hard_hit_edge": -0.0286,
"whiff_edge": 0.4714,
"bb_edge": -0.9,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "675848",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.0582,
"sample_weight": 0.45,
"run_prevention_factor": 0.9951,
"strikeout_factor": 1.0131,
"walk_factor": 1.0324,
"homer_factor": 0.9666,
"woba_minus_xwoba": 0.034,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "675848",
"espn_id": 5185107,
"player_name": "Juan Mejia",
"team": "COL",
"role": "pitcher",
"espn_rank": 552,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 552,
"gp_value": 28.0,
"gp_rank": 62,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.2307,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 5.0,
"l_rank": 26,
"sv_value": 3.0,
"sv_rank": 43,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 30.1,
"ip_rank": 210,
"h_value": 35.0,
"h_rank": 154,
"er_value": 21.0,
"er_rank": 127,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 18.0,
"bb_rank": 123,
"k_value": 35.0,
"k_rank": 176,
"k_per_9_value": 10.384615,
"k_per_9_rank": 22,
"whip_value": 1.7472,
"whip_rank": null,
"war_value": -0.2,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9978,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9978,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0146,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.985,
"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.1,
"ER": 11,
"H": 13,
"BB": 7,
"SO": 9,
"HR": 0,
"ERA": 11.880000000000003,
"WHIP": 2.4000000000000004,
"K9": 9.72,
"HR9": 0.0,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 1,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-10T00:00:00"
}{
"available": false,
"pitcher_id": "675848",
"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.992,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5451,
"prior_weight": 0.4549
},
"role": "pitcher",
"player_id": "675848",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 6.0,
"R": 7.0,
"H": 7.0,
"BB": 3.0,
"SO": 6.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 88.0
},
"per_game": {
"IP": 0.2,
"ER": 1.2,
"R": 1.4,
"H": 1.4,
"BB": 0.6,
"SO": 1.2,
"HR": 0.0,
"BF": 4.4,
"Pitches": 17.6
},
"rates": {
"ERA": 13.5,
"WHIP": 2.5,
"ER_per_IP": 1.5,
"H_per_IP": 1.75,
"BB_per_IP": 0.75,
"SO_per_IP": 1.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 11.0,
"R": 12.0,
"H": 13.0,
"BB": 7.0,
"SO": 9.0,
"HR": 0.0,
"BF": 46.0,
"Pitches": 188.0
},
"per_game": {
"IP": 0.2,
"ER": 1.1,
"R": 1.2,
"H": 1.3,
"BB": 0.7,
"SO": 0.9,
"HR": 0.0,
"BF": 4.6,
"Pitches": 18.8
},
"rates": {
"ERA": 11.88,
"WHIP": 2.4,
"ER_per_IP": 1.32,
"H_per_IP": 1.56,
"BB_per_IP": 0.84,
"SO_per_IP": 1.08,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 30.1,
"ER": 21.0,
"R": 22.0,
"H": 35.0,
"BB": 18.0,
"SO": 35.0,
"HR": 2.0,
"BF": 143.0,
"Pitches": 601.0
},
"per_game": {
"IP": 1.0,
"ER": 0.75,
"R": 0.7857,
"H": 1.25,
"BB": 0.6429,
"SO": 1.25,
"HR": 0.0714,
"BF": 5.1071,
"Pitches": 21.4643
},
"rates": {
"ERA": 6.2308,
"WHIP": 1.7473,
"ER_per_IP": 0.69231,
"H_per_IP": 1.15385,
"BB_per_IP": 0.59341,
"SO_per_IP": 1.15385,
"HR_per_IP": 0.06593
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.783,
"predicted_H": 1.102,
"predicted_BB": 0.491,
"predicted_SO": 0.962,
"predicted_HR": 0.061,
"predicted_ERA": 8.2472,
"predicted_WHIP": 1.8643
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5422,
"form_weight": 0.4578,
"form_reliability": 0.5451,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.992,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5451,
"prior_weight": 0.4549
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.783,
"final": 0.9007,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 1.102,
"final": 1.5889,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.491,
"final": 0.767,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.962,
"final": 0.4404,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.061,
"final": 0.0279,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 8.2472,
"final": 8.2472,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.8643,
"final": 1.8643,
"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 | Seth Halvorsen |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2834 |
| ESPN Rank | 184 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2716 |
| Avg Velo | 94.5634 |
| Avg Spin | 2324.9462 |
| 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.4000 |
| Season WHIP | 1.5333 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "COL",
"games": 77,
"wins": 30,
"losses": 47,
"win_pct": 0.3896,
"runs_scored": 347.0,
"runs_allowed": 438.0,
"run_differential": -91.0,
"run_differential_per_game": -1.1818,
"avg_runs_scored": 4.5065,
"avg_runs_allowed": 5.6883,
"offense_index": 1.0031,
"defense_index": 0.7898,
"current_streak": "W2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.7,
"avg_runs_allowed": 7.6,
"run_differential": -19.0
},
"available": true,
"quality_score": -0.2385
},
"opponent": {
"team": "CHC",
"games": 76,
"wins": 37,
"losses": 39,
"win_pct": 0.4868,
"runs_scored": 361.0,
"runs_allowed": 355.0,
"run_differential": 6.0,
"run_differential_per_game": 0.0789,
"avg_runs_scored": 4.75,
"avg_runs_allowed": 4.6711,
"offense_index": 1.0573,
"defense_index": 0.9618,
"current_streak": "L3",
"recent": {
"games": 10,
"wins": 3,
"losses": 7,
"win_pct": 0.3,
"avg_runs_scored": 3.1,
"avg_runs_allowed": 5.1,
"run_differential": -20.0
},
"available": true,
"quality_score": -0.0716
},
"edges": {
"quality_edge": -0.1669,
"offense_edge": 0.0031,
"opponent_offense_edge": 0.0573,
"defense_strength": -0.2102,
"opponent_defense_weakness": 0.0382,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 0.9847,
"run_prevention": 1.0385,
"strikeout": 0.9904
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "678020",
"profile": {
"available": true,
"pitcher_id": "678020",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 44.0,
"k_percent": 20.6,
"bb_percent": 16.2,
"woba": 0.298,
"xwoba": 0.362,
"sweet_spot_percent": 41.9,
"barrel_batted_rate": 2.3,
"hard_hit_percent": 41.9,
"avg_best_speed": 80.9961,
"avg_hyper_speed": 94.7949,
"whiff_percent": 23.6,
"swing_percent": 45.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.5605,
"command_and_miss": -0.595,
"regression_edge": -1.8286,
"xwoba_edge": -1.3429,
"barrel_edge": 1.1111,
"hard_hit_edge": -0.5,
"whiff_edge": -0.2857,
"bb_edge": -1.8,
"pitch_design_score": 0.2716
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "678020",
"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": 94.5633967190704,
"release_spin_rate": 2324.9462253360675,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 94.5633967190704,
"release_spin_rate": 2324.9462253360675,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5634,
"release_spin_rate": 2324.9462,
"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.2716,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.9399,
"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.2834,
"sample_weight": 0.45,
"run_prevention_factor": 1.0241,
"strikeout_factor": 0.9895,
"walk_factor": 1.0648,
"homer_factor": 0.9871,
"woba_minus_xwoba": -0.064,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "678020",
"espn_id": 5204400,
"player_name": "Seth Halvorsen",
"team": "COL",
"role": "pitcher",
"espn_rank": 184,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 184,
"gp_value": 15.0,
"gp_rank": 215,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.4,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 15.0,
"ip_rank": 423,
"h_value": 12.0,
"h_rank": 438,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 0.0,
"hr_rank": 559,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 14.0,
"k_rank": 408,
"k_per_9_value": 8.400001,
"k_per_9_rank": 26,
"whip_value": 1.5333,
"whip_rank": null,
"war_value": 0.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0108,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0108,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0292,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9942,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9953,
"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": 7,
"SO": 10,
"HR": 0,
"ERA": 2.7,
"WHIP": 1.6,
"K9": 9.0,
"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-09T00:00:00"
}{
"available": true,
"pitcher_id": "678020",
"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": 94.5633967190704,
"release_spin_rate": 2324.9462253360675,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 94.5633967190704,
"release_spin_rate": 2324.9462253360675,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5634,
"release_spin_rate": 2324.9462,
"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.2716,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.9399,
"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.963,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3721,
"prior_weight": 0.6279
},
"role": "pitcher",
"player_id": "678020",
"report_date": "20260611_C",
"season_year": 2026,
"rows_used": 15,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 3.0,
"SO": 4.0,
"HR": 0.0,
"BF": 23.0,
"Pitches": 89.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.6,
"SO": 0.8,
"HR": 0.0,
"BF": 4.6,
"Pitches": 17.8
},
"rates": {
"ERA": 0.0,
"WHIP": 1.0588,
"ER_per_IP": 0.0,
"H_per_IP": 0.52941,
"BB_per_IP": 0.52941,
"SO_per_IP": 0.70588,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.0,
"ER": 3.0,
"R": 3.0,
"H": 9.0,
"BB": 7.0,
"SO": 10.0,
"HR": 0.0,
"BF": 46.0,
"Pitches": 175.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 0.9,
"BB": 0.7,
"SO": 1.0,
"HR": 0.0,
"BF": 4.6,
"Pitches": 17.5
},
"rates": {
"ERA": 2.7,
"WHIP": 1.6,
"ER_per_IP": 0.3,
"H_per_IP": 0.9,
"BB_per_IP": 0.7,
"SO_per_IP": 1.0,
"HR_per_IP": 0.0
}
},
"season": {
"games": 15,
"totals": {
"IP": 15.0,
"ER": 4.0,
"R": 4.0,
"H": 12.0,
"BB": 11.0,
"SO": 14.0,
"HR": 0.0,
"BF": 68.0,
"Pitches": 268.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2667,
"R": 0.2667,
"H": 0.8,
"BB": 0.7333,
"SO": 0.9333,
"HR": 0.0,
"BF": 4.5333,
"Pitches": 17.8667
},
"rates": {
"ERA": 2.4,
"WHIP": 1.5333,
"ER_per_IP": 0.26667,
"H_per_IP": 0.8,
"BB_per_IP": 0.73333,
"SO_per_IP": 0.93333,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.364,
"predicted_H": 0.868,
"predicted_BB": 0.464,
"predicted_SO": 0.905,
"predicted_HR": 0.088,
"predicted_ERA": 3.2769,
"predicted_WHIP": 1.3316
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6153,
"form_weight": 0.3847,
"form_reliability": 0.3721,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.963,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3721,
"prior_weight": 0.6279
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.364,
"final": 0.14,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.868,
"final": 0.3339,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.464,
"final": 0.1785,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.905,
"final": 0.3482,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.088,
"final": 0.0339,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2769,
"final": 3.2769,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3316,
"final": 1.3316,
"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.063 | 0.000 | 0.000 | Hitting_2B | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_3B | 0.031 | 0.000 | 0.000 | Hitting_3B | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_AB | 3.421 | 3.000 | 5.000 | Hitting_AB | 3.379 | 1.000 | -0.379 | 2.000 |
| predicted_AVG | 0.263 | 0.000 | 0.200 | Hitting_AVG | 0.228 | 1.000 | -0.228 | -1.000 |
| predicted_BB | 0.491 | 2.000 | 1.000 | Hitting_BB | 0.491 | 0.000 | 1.509 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_H | 0.840 | 0.000 | 1.000 | Hitting_H | 0.770 | 1.000 | -0.770 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.062 | 0.000 | -0.062 | 0.000 |
| predicted_OBP | 0.342 | 0.400 | 0.333 | Hitting_OBP | 0.328 | 1.000 | 0.072 | -0.600 |
| predicted_R | 0.472 | 0.000 | 1.000 | Hitting_R | 0.466 | 1.000 | -0.466 | -1.000 |
| predicted_RBI | 0.530 | 0.000 | 1.000 | Hitting_RBI | 0.398 | 0.000 | -0.398 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.099 | 0.000 | -0.099 | 0.000 |
| predicted_SLG | 0.383 | 0.000 | 0.200 | Hitting_SLG | 0.320 | 1.000 | -0.320 | -1.000 |
| predicted_SO | 1.063 | 2.000 | 2.000 | Hitting_SO | 1.050 | 0.000 | 0.950 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.4910 -> 2.0000 (boost 1.5090, 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.4210 -> 4.8809 (boost 1.4599, 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.3815 -> 0.3659 (deboost -0.0156, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_SO: 1.6060 -> 2.0000 (boost 0.3940, worse) | predicted_H: 1.3159 -> 1.0000 (deboost -0.3159, worse) | AB rounded to 5 (raw=4.88), rates preserved: AVG=0.270 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8594 -> 1.0000 (boost 0.1406, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3659 -> 0.2000 (deboost -0.1659, 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: 1.0000 -> 2.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.3659 (boost 0.1659, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666397",
"player_name": "Edouard Julien",
"position": "2B",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.063,
"predicted_3B": 0.031,
"predicted_AB": 3.421,
"predicted_AVG": 0.263,
"predicted_BB": 0.491,
"predicted_H": 0.84,
"predicted_HR": 0.07,
"predicted_OBP": 0.342,
"predicted_R": 0.472,
"predicted_RBI": 0.53,
"predicted_SLG": 0.383,
"predicted_SO": 1.063
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1783,
"predicted_3B": 0.0336,
"predicted_AB": 4.8809,
"predicted_AVG": 0.2722,
"predicted_BB": 0.6639,
"predicted_H": 1.3124,
"predicted_HBP": 0.017,
"predicted_HR": 0.0752,
"predicted_OBP": 0.3526,
"predicted_R": 0.8579,
"predicted_RBI": 0.8544,
"predicted_SLG": 0.3815,
"predicted_SO": 1.5982
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.063,
"after": 0.1783,
"delta": 0.1153,
"percent_delta": 1.8302,
"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.421,
"after": 4.8809,
"delta": 1.4599,
"percent_delta": 0.4267,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2722,
"delta": 0.0092,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.491,
"after": 0.6639,
"delta": 0.1729,
"percent_delta": 0.3521,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 1.3124,
"delta": 0.4724,
"percent_delta": 0.5624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0752,
"delta": 0.0052,
"percent_delta": 0.0743,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3526,
"delta": 0.0106,
"percent_delta": 0.031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.8579,
"delta": 0.3859,
"percent_delta": 0.8176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.8544,
"delta": 0.3244,
"percent_delta": 0.6121,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.383,
"after": 0.3815,
"delta": -0.0015,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.063,
"after": 1.5982,
"delta": 0.5352,
"percent_delta": 0.5035,
"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.421,
"after": 4.8809,
"delta": 1.4599,
"percent_delta": 0.4267,
"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.1783,
"predicted_3B": 0.0336,
"predicted_AB": 4.8809,
"predicted_AVG": 0.2696,
"predicted_BB": 0.6606,
"predicted_H": 1.3159,
"predicted_HBP": 0.017,
"predicted_HR": 0.0749,
"predicted_OBP": 0.3567,
"predicted_R": 0.8594,
"predicted_RBI": 0.8559,
"predicted_SLG": 0.3659,
"predicted_SO": 1.606
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1783,
"after": 0.1783,
"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.8809,
"after": 4.8809,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2722,
"after": 0.2696,
"delta": -0.0026,
"percent_delta": -0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6639,
"after": 0.6606,
"delta": -0.0033,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3124,
"after": 1.3159,
"delta": 0.0035,
"percent_delta": 0.0027,
"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.0752,
"after": 0.0749,
"delta": -0.0003,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3526,
"after": 0.3567,
"delta": 0.0041,
"percent_delta": 0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.8579,
"after": 0.8594,
"delta": 0.0015,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8544,
"after": 0.8559,
"delta": 0.0015,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3815,
"after": 0.3659,
"delta": -0.0156,
"percent_delta": -0.0409,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5982,
"after": 1.606,
"delta": 0.0078,
"percent_delta": 0.0049,
"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.3815,
"after": 0.3659,
"delta": -0.0156,
"percent_delta": -0.0409,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.88), rates preserved: AVG=0.270 HR/AB=0.015",
"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.1783,
"after": 0.0,
"delta": -0.1783,
"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.8809,
"after": 5.0,
"delta": 0.1191,
"percent_delta": 0.0244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6606,
"after": 1.0,
"delta": 0.3394,
"percent_delta": 0.5138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3159,
"after": 1.0,
"delta": -0.3159,
"percent_delta": -0.2401,
"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.0749,
"after": 0.0,
"delta": -0.0749,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8559,
"after": 1.0,
"delta": 0.1441,
"percent_delta": 0.1684,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.606,
"after": 2.0,
"delta": 0.394,
"percent_delta": 0.2453,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.606,
"after": 2.0,
"delta": 0.394,
"percent_delta": 0.2453,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3159,
"after": 1.0,
"delta": -0.3159,
"percent_delta": -0.2401,
"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.8594,
"after": 1.0,
"delta": 0.1406,
"percent_delta": 0.1636,
"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.8594,
"after": 1.0,
"delta": 0.1406,
"percent_delta": 0.1636,
"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.2696,
"after": 0.2,
"delta": -0.0696,
"percent_delta": -0.2582,
"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.3567,
"after": 0.333,
"delta": -0.0237,
"percent_delta": -0.0664,
"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.3659,
"after": 0.2,
"delta": -0.1659,
"percent_delta": -0.4534,
"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.3659,
"after": 0.2,
"delta": -0.1659,
"percent_delta": -0.4534,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 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": 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": 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.2696,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3567,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3659,
"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.2696,
"delta": 0.0696,
"percent_delta": 0.3481,
"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.333,
"after": 0.3567,
"delta": 0.0237,
"percent_delta": 0.0711,
"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.3659,
"delta": 0.1659,
"percent_delta": 0.8297,
"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.3659,
"delta": 0.1659,
"percent_delta": 0.8297,
"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.063,
"after": 0.0,
"delta": -0.063,
"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.421,
"after": 3.0,
"delta": -0.421,
"percent_delta": -0.1231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.263,
"after": 0.2696,
"delta": 0.0066,
"percent_delta": 0.0251,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.491,
"after": 2.0,
"delta": 1.509,
"percent_delta": 3.0733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.0,
"delta": -0.84,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.342,
"after": 0.3567,
"delta": 0.0147,
"percent_delta": 0.043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.472,
"after": 0.0,
"delta": -0.472,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.53,
"after": 0.0,
"delta": -0.53,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.383,
"after": 0.3659,
"delta": -0.0171,
"percent_delta": -0.0446,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.063,
"after": 2.0,
"delta": 0.937,
"percent_delta": 0.8815,
"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_BB",
"before": 0.491,
"after": 2.0,
"delta": 1.509,
"percent_delta": 3.0733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_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.063 | - |
| predicted_3B | 0.031 | - |
| predicted_AB | 3.421 | - |
| predicted_AVG | 0.263 | - |
| predicted_BB | 0.491 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.342 | - |
| predicted_R | 0.472 | - |
| predicted_RBI | 0.530 | - |
| predicted_SLG | 0.383 | - |
| predicted_SO | 1.063 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.178 | 0.115 |
| predicted_3B | 0.034 | 0.003 |
| predicted_AB | 4.881 | 1.460 |
| predicted_AVG | 0.272 | 0.009 |
| predicted_BB | 0.664 | 0.173 |
| predicted_H | 1.312 | 0.472 |
| predicted_HBP | 0.017 | - |
| predicted_HR | 0.075 | 0.005 |
| predicted_OBP | 0.353 | 0.011 |
| predicted_R | 0.858 | 0.386 |
| predicted_RBI | 0.854 | 0.324 |
| predicted_SLG | 0.382 | -0.002 |
| predicted_SO | 1.598 | 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.178 | 0.000 |
| predicted_3B | 0.034 | 0.000 |
| predicted_AB | 4.881 | 0.000 |
| predicted_AVG | 0.270 | -0.003 |
| predicted_BB | 0.661 | -0.003 |
| predicted_H | 1.316 | 0.004 |
| predicted_HBP | 0.017 | 0.000 |
| predicted_HR | 0.075 | -0.000 |
| predicted_OBP | 0.357 | 0.004 |
| predicted_R | 0.859 | 0.002 |
| predicted_RBI | 0.856 | 0.001 |
| predicted_SLG | 0.366 | -0.016 |
| predicted_SO | 1.606 | 0.008 |
AB rounded to 5 (raw=4.88), rates preserved: AVG=0.270 HR/AB=0.015
| 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.178 |
| predicted_3B | 0.000 | -0.034 |
| predicted_AB | 5.000 | 0.119 |
| predicted_AVG | 0.200 | -0.070 |
| predicted_BB | 1.000 | 0.339 |
| predicted_H | 1.000 | -0.316 |
| predicted_HR | 0.000 | -0.075 |
| predicted_OBP | 0.333 | -0.024 |
| predicted_R | 1.000 | 0.141 |
| predicted_RBI | 1.000 | 0.144 |
| predicted_SLG | 0.200 | -0.166 |
| predicted_SO | 2.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 | 3.000 | -2.000 |
| BB | 2.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -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 | - | 11.000 | 4.000 | 1.000 | 0.000 | 0.000 | 4.000 | 3.000 | 0.000 | 5.000 | 0.3636 | 0.3636 | 0.4545 | 0.3636 | 0.0000 | 0.3636 | 0.0000 | 0.4546 |
| last_10 | 0.20 | 10 | - | 21.000 | 8.000 | 2.000 | 0.000 | 0.000 | 5.000 | 7.000 | 5.000 | 7.000 | 0.3810 | 0.5000 | 0.4762 | 0.3810 | 0.0000 | 0.2381 | 0.2381 | 0.3333 |
| season | 0.60 | 54 | - | 544.000 | 124.000 | 10.000 | 5.000 | 10.000 | 64.000 | 75.000 | 78.000 | 169.000 | 0.2279 | 0.3269 | 0.3199 | 0.2279 | 0.0184 | 0.1177 | 0.1434 | 0.3107 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3270 |
| predicted_3B | 0.0370 |
| predicted_AB | 6.7650 |
| predicted_AVG | 0.2840 |
| predicted_BB | 0.8870 |
| predicted_H | 1.9220 |
| predicted_HBP | 0.0170 |
| predicted_HR | 0.0820 |
| predicted_OBP | 0.3663 |
| predicted_R | 1.3560 |
| predicted_RBI | 1.2730 |
| predicted_SLG | 0.3795 |
| predicted_SO | 2.2890 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0630 | 0.3270 | 0.1783 | model_form_blend |
| predicted_3B | 0.0310 | 0.0370 | 0.0336 | model_form_blend |
| predicted_AB | 3.4210 | 6.7650 | 4.8809 | model_form_blend |
| predicted_AVG | 0.2630 | 0.2840 | 0.2722 | model_form_blend |
| predicted_BB | 0.4910 | 0.8870 | 0.6639 | model_form_blend |
| predicted_H | 0.8400 | 1.9220 | 1.3124 | model_form_blend |
| predicted_HBP | - | 0.0170 | 0.0170 | form_only |
| predicted_HR | 0.0700 | 0.0820 | 0.0752 | model_form_blend |
| predicted_OBP | 0.3420 | 0.3663 | 0.3526 | model_form_blend |
| predicted_R | 0.4720 | 1.3560 | 0.8579 | model_form_blend |
| predicted_RBI | 0.5300 | 1.2730 | 0.8544 | model_form_blend |
| predicted_SLG | 0.3830 | 0.3795 | 0.3815 | model_form_blend |
| predicted_SO | 1.0630 | 2.2890 | 1.5982 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 161 |
| Season rows before report date | 161 |
| Report year | 2026 |
| Profile rows used | 159 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.228 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 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-2B |
| gameID | 20260610_CHC@COL |
| game_type | ph |
| mlbID | 666397 |
| note | Singled for Karros, K in the 8th. |
| playerID | 666397 |
| playerName | Edouard Julien |
| pos | 2B |
| started | False |
| startingPosition | PH |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.6 |
| sl_bb_percent | 12.2 |
| sl_woba | 0.295 |
| sl_xwoba | 0.341 |
| sl_xba | 0.257 |
| sl_xslg | 0.417 |
| sl_sweet_spot_percent | 44.4 |
| sl_barrel_batted_rate | 7.4 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 91.1 |
| sl_launch_angle_avg | 8.7 |
| sl_whiff_percent | 25.6 |
| 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.197 | 0.000 | 0.000 | Hitting_2B | 0.196 | 0.000 | -0.196 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 3.930 | 3.000 | 6.000 | Hitting_AB | 3.724 | 4.000 | -0.724 | -1.000 |
| predicted_AVG | 0.232 | 0.000 | 0.167 | Hitting_AVG | 0.277 | 0.500 | -0.277 | -0.500 |
| predicted_BB | 0.404 | 2.000 | 1.000 | Hitting_BB | 0.400 | 0.000 | 1.600 | 2.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 | 1.031 | 2.000 | -1.031 | -2.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.138 | 1.000 | -0.138 | -1.000 |
| predicted_OBP | 0.323 | 0.400 | 0.286 | Hitting_OBP | 0.356 | 0.500 | 0.044 | -0.100 |
| predicted_R | 0.475 | 0.000 | 1.000 | Hitting_R | 0.471 | 1.000 | -0.471 | -1.000 |
| predicted_RBI | 0.470 | 0.000 | 1.000 | Hitting_RBI | 0.533 | 2.000 | -0.533 | -2.000 |
| predicted_SLG | 0.389 | 0.000 | 0.167 | Hitting_SLG | 0.450 | 1.250 | -0.450 | -1.250 |
| predicted_SO | 0.623 | 0.000 | 1.000 | Hitting_SO | 0.618 | 1.000 | -0.618 | -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_BB: 0.4040 -> 2.0000 (boost 1.5960, better) |
| Biggest Deboost | predicted_AB: 3.9300 -> 3.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 | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.9300 -> 6.3230 (boost 2.3930, 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.3277 -> 0.3126 (deboost -0.0151, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 3 | 5 | predicted_BB: 0.7606 -> 1.0000 (boost 0.2394, better) | predicted_H: 1.4541 -> 1.0000 (deboost -0.4541, worse) | AB rounded to 6 (raw=6.32), rates preserved: AVG=0.230 HR/AB=0.037 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7890 -> 1.0000 (boost 0.2110, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3895 -> 0.1670 (deboost -0.2225, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 1 | 5 | 2 | 4 | predicted_BB: 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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3895 (boost 0.2225, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681198",
"player_name": "TJ Rumfield",
"position": "1B",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.018,
"predicted_AB": 3.93,
"predicted_AVG": 0.232,
"predicted_BB": 0.404,
"predicted_H": 0.91,
"predicted_HR": 0.13,
"predicted_OBP": 0.323,
"predicted_R": 0.475,
"predicted_RBI": 0.47,
"predicted_SLG": 0.389,
"predicted_SO": 0.623
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.264,
"predicted_3B": 0.022,
"predicted_AB": 6.323,
"predicted_AVG": 0.2303,
"predicted_BB": 0.7643,
"predicted_H": 1.4502,
"predicted_HBP": 0.256,
"predicted_HR": 0.2345,
"predicted_OBP": 0.3277,
"predicted_R": 0.7877,
"predicted_RBI": 0.7792,
"predicted_SLG": 0.389,
"predicted_SO": 1.0667
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.264,
"delta": 0.067,
"percent_delta": 0.3401,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.022,
"delta": 0.004,
"percent_delta": 0.2222,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.93,
"after": 6.323,
"delta": 2.393,
"percent_delta": 0.6089,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.2303,
"delta": -0.0017,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.404,
"after": 0.7643,
"delta": 0.3603,
"percent_delta": 0.8918,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.4502,
"delta": 0.5402,
"percent_delta": 0.5936,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2345,
"delta": 0.1045,
"percent_delta": 0.8038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3277,
"delta": 0.0047,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.475,
"after": 0.7877,
"delta": 0.3127,
"percent_delta": 0.6583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.7792,
"delta": 0.3092,
"percent_delta": 0.6579,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.389,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.623,
"after": 1.0667,
"delta": 0.4437,
"percent_delta": 0.7122,
"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.93,
"after": 6.323,
"delta": 2.393,
"percent_delta": 0.6089,
"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.264,
"predicted_3B": 0.022,
"predicted_AB": 6.323,
"predicted_AVG": 0.23,
"predicted_BB": 0.7606,
"predicted_H": 1.4541,
"predicted_HBP": 0.256,
"predicted_HR": 0.2335,
"predicted_OBP": 0.3126,
"predicted_R": 0.789,
"predicted_RBI": 0.7805,
"predicted_SLG": 0.3895,
"predicted_SO": 1.0719
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.264,
"after": 0.264,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.022,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.323,
"after": 6.323,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2303,
"after": 0.23,
"delta": -0.0003,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7643,
"after": 0.7606,
"delta": -0.0037,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4502,
"after": 1.4541,
"delta": 0.0039,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.256,
"after": 0.256,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2345,
"after": 0.2335,
"delta": -0.001,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3277,
"after": 0.3126,
"delta": -0.0151,
"percent_delta": -0.0461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7877,
"after": 0.789,
"delta": 0.0013,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7792,
"after": 0.7805,
"delta": 0.0013,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3895,
"delta": 0.0005,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0667,
"after": 1.0719,
"delta": 0.0052,
"percent_delta": 0.0049,
"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.3277,
"after": 0.3126,
"delta": -0.0151,
"percent_delta": -0.0461,
"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.230 HR/AB=0.037",
"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.264,
"after": 0.0,
"delta": -0.264,
"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": 6.323,
"after": 6.0,
"delta": -0.323,
"percent_delta": -0.0511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7606,
"after": 1.0,
"delta": 0.2394,
"percent_delta": 0.3148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4541,
"after": 1.0,
"delta": -0.4541,
"percent_delta": -0.3123,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.256,
"after": 0.0,
"delta": -0.256,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2335,
"after": 0.0,
"delta": -0.2335,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7805,
"after": 1.0,
"delta": 0.2195,
"percent_delta": 0.2812,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0719,
"after": 1.0,
"delta": -0.0719,
"percent_delta": -0.0671,
"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.7606,
"after": 1.0,
"delta": 0.2394,
"percent_delta": 0.3148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.4541,
"after": 1.0,
"delta": -0.4541,
"percent_delta": -0.3123,
"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.789,
"after": 1.0,
"delta": 0.211,
"percent_delta": 0.2674,
"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.789,
"after": 1.0,
"delta": 0.211,
"percent_delta": 0.2674,
"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.23,
"after": 0.167,
"delta": -0.063,
"percent_delta": -0.2739,
"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.3126,
"after": 0.286,
"delta": -0.0266,
"percent_delta": -0.0851,
"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.3895,
"after": 0.167,
"delta": -0.2225,
"percent_delta": -0.5712,
"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.3895,
"after": 0.167,
"delta": -0.2225,
"percent_delta": -0.5712,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_BB",
"before": 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": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.23,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3126,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3895,
"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.23,
"delta": 0.063,
"percent_delta": 0.3771,
"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.286,
"after": 0.3126,
"delta": 0.0266,
"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.167,
"after": 0.3895,
"delta": 0.2225,
"percent_delta": 1.3322,
"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.3895,
"delta": 0.2225,
"percent_delta": 1.3322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.197,
"after": 0.0,
"delta": -0.197,
"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.93,
"after": 3.0,
"delta": -0.93,
"percent_delta": -0.2366,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.232,
"after": 0.23,
"delta": -0.002,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.404,
"after": 2.0,
"delta": 1.596,
"percent_delta": 3.9505,
"direction": "boost",
"projection_effect": "better",
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.323,
"after": 0.3126,
"delta": -0.0104,
"percent_delta": -0.0322,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.475,
"after": 0.0,
"delta": -0.475,
"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.389,
"after": 0.3895,
"delta": 0.0005,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.623,
"after": 0.0,
"delta": -0.623,
"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_BB",
"before": 0.404,
"after": 2.0,
"delta": 1.596,
"percent_delta": 3.9505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.93,
"after": 3.0,
"delta": -0.93,
"percent_delta": -0.2366,
"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.018 | - |
| predicted_AB | 3.930 | - |
| predicted_AVG | 0.232 | - |
| predicted_BB | 0.404 | - |
| predicted_H | 0.910 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.323 | - |
| predicted_R | 0.475 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.389 | - |
| predicted_SO | 0.623 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.067 |
| predicted_3B | 0.022 | 0.004 |
| predicted_AB | 6.323 | 2.393 |
| predicted_AVG | 0.230 | -0.002 |
| predicted_BB | 0.764 | 0.360 |
| predicted_H | 1.450 | 0.540 |
| predicted_HBP | 0.256 | - |
| predicted_HR | 0.234 | 0.104 |
| predicted_OBP | 0.328 | 0.005 |
| predicted_R | 0.788 | 0.313 |
| predicted_RBI | 0.779 | 0.309 |
| predicted_SLG | 0.389 | 0.000 |
| predicted_SO | 1.067 | 0.444 |
Step 3: 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.022 | 0.000 |
| predicted_AB | 6.323 | 0.000 |
| predicted_AVG | 0.230 | -0.000 |
| predicted_BB | 0.761 | -0.004 |
| predicted_H | 1.454 | 0.004 |
| predicted_HBP | 0.256 | 0.000 |
| predicted_HR | 0.234 | -0.001 |
| predicted_OBP | 0.313 | -0.015 |
| predicted_R | 0.789 | 0.001 |
| predicted_RBI | 0.780 | 0.001 |
| predicted_SLG | 0.390 | 0.001 |
| predicted_SO | 1.072 | 0.005 |
AB rounded to 6 (raw=6.32), rates preserved: AVG=0.230 HR/AB=0.037
| 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.264 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 6.000 | -0.323 |
| predicted_AVG | 0.167 | -0.063 |
| predicted_BB | 1.000 | 0.239 |
| predicted_H | 1.000 | -0.454 |
| predicted_HR | 0.000 | -0.234 |
| predicted_OBP | 0.286 | -0.027 |
| predicted_R | 1.000 | 0.211 |
| predicted_RBI | 1.000 | 0.220 |
| predicted_SLG | 0.167 | -0.223 |
| predicted_SO | 1.000 | -0.072 |
Attached 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 | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 2.000 | 0.000 | 0.000 | 1.000 | 2.000 | 2.000 | 3.000 | 3.000 | 0.1176 | 0.2857 | 0.2941 | 0.1177 | 0.0588 | 0.1177 | 0.1765 | 0.1765 |
| last_10 | 0.20 | 10 | - | 37.000 | 7.000 | 1.000 | 0.000 | 1.000 | 3.000 | 5.000 | 6.000 | 7.000 | 0.1892 | 0.3182 | 0.2973 | 0.1892 | 0.0270 | 0.0811 | 0.1622 | 0.1892 |
| season | 0.60 | 62 | - | 838.000 | 232.000 | 44.000 | 4.000 | 31.000 | 119.000 | 106.000 | 90.000 | 139.000 | 0.2768 | 0.3559 | 0.4499 | 0.2768 | 0.0370 | 0.1420 | 0.1074 | 0.1659 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3490 |
| predicted_3B | 0.0270 |
| predicted_AB | 9.3560 |
| predicted_AVG | 0.2281 |
| predicted_BB | 1.2210 |
| predicted_H | 2.1350 |
| predicted_HBP | 0.2560 |
| predicted_HR | 0.3670 |
| predicted_OBP | 0.3337 |
| predicted_R | 1.1840 |
| predicted_RBI | 1.1710 |
| predicted_SLG | 0.3889 |
| predicted_SO | 1.6290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1970 | 0.3490 | 0.2640 | model_form_blend |
| predicted_3B | 0.0180 | 0.0270 | 0.0220 | model_form_blend |
| predicted_AB | 3.9300 | 9.3560 | 6.3230 | model_form_blend |
| predicted_AVG | 0.2320 | 0.2281 | 0.2303 | model_form_blend |
| predicted_BB | 0.4040 | 1.2210 | 0.7643 | model_form_blend |
| predicted_H | 0.9100 | 2.1350 | 1.4502 | model_form_blend |
| predicted_HBP | - | 0.2560 | 0.2560 | form_only |
| predicted_HR | 0.1300 | 0.3670 | 0.2345 | model_form_blend |
| predicted_OBP | 0.3230 | 0.3337 | 0.3277 | model_form_blend |
| predicted_R | 0.4750 | 1.1840 | 0.7877 | model_form_blend |
| predicted_RBI | 0.4700 | 1.1710 | 0.7792 | model_form_blend |
| predicted_SLG | 0.3890 | 0.3889 | 0.3890 | model_form_blend |
| predicted_SO | 0.6230 | 1.6290 | 1.0667 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 225 |
| Season rows before report date | 225 |
| 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.277 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 2 |
| 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 | 1B |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 681198 |
| playerID | 681198 |
| playerName | TJ Rumfield |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 15.1 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.345 |
| sl_xwoba | 0.329 |
| sl_xba | 0.254 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 38.9 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 34.7 |
| sl_exit_velocity_avg | 85.1 |
| sl_launch_angle_avg | 13.9 |
| sl_whiff_percent | 19.2 |
| 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.176 | 0.000 | 0.000 | Hitting_2B | 0.176 | 0.000 | -0.176 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.070 | 5.000 | 7.000 | Hitting_AB | 3.950 | 3.000 | 1.050 | 2.000 |
| predicted_AVG | 0.241 | 0.400 | 0.286 | Hitting_AVG | 0.247 | 0.667 | 0.153 | -0.267 |
| predicted_BB | 0.326 | 0.000 | 1.000 | Hitting_BB | 0.326 | 1.000 | -0.326 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.980 | 2.000 | 2.000 | Hitting_H | 0.977 | 2.000 | 1.023 | 0.000 |
| predicted_HR | 0.300 | 1.000 | 1.000 | Hitting_HR | 0.271 | 0.000 | 0.729 | 1.000 |
| predicted_OBP | 0.347 | 0.400 | 0.375 | Hitting_OBP | 0.317 | 0.750 | 0.083 | -0.350 |
| predicted_R | 0.679 | 1.000 | 1.000 | Hitting_R | 0.679 | 0.000 | 0.321 | 1.000 |
| predicted_RBI | 0.720 | 2.000 | 1.000 | Hitting_RBI | 0.452 | 0.000 | 1.548 | 2.000 |
| predicted_SLG | 0.528 | 1.000 | 0.714 | Hitting_SLG | 0.498 | 0.667 | 0.502 | 0.333 |
| predicted_SO | 1.502 | 1.000 | 2.000 | Hitting_SO | 1.502 | 1.000 | -0.502 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 8 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_RBI: 0.7200 -> 2.0000 (boost 1.2800, better) |
| Biggest Deboost | predicted_SO: 1.5020 -> 1.0000 (deboost -0.5020, 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.0700 -> 6.5224 (boost 2.4524, 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.5675 -> 0.5778 (boost 0.0103, better) | predicted_OBP: 0.3536 -> 0.3439 (deboost -0.0097, 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_AB: 6.5224 -> 7.0000 (boost 0.4776, better) | predicted_SO: 2.3282 -> 2.0000 (deboost -0.3282, better) | AB rounded to 7 (raw=6.52), rates preserved: AVG=0.258 HR/AB=0.093 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2348 -> 1.0000 (deboost -0.2348, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.5778 -> 0.7140 (boost 0.1362, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_RBI: 1.0000 -> 2.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 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.7140 -> 0.5778 (deboost -0.1362, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "696100",
"player_name": "Hunter Goodman",
"position": "DH",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.176,
"predicted_3B": 0.0,
"predicted_AB": 4.07,
"predicted_AVG": 0.241,
"predicted_BB": 0.326,
"predicted_H": 0.98,
"predicted_HR": 0.3,
"predicted_OBP": 0.347,
"predicted_R": 0.679,
"predicted_RBI": 0.72,
"predicted_SLG": 0.528,
"predicted_SO": 1.502
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2607,
"predicted_3B": 0.0004,
"predicted_AB": 6.5224,
"predicted_AVG": 0.252,
"predicted_BB": 0.8594,
"predicted_H": 1.6775,
"predicted_HBP": 0.112,
"predicted_HR": 0.611,
"predicted_OBP": 0.3536,
"predicted_R": 1.2327,
"predicted_RBI": 1.2401,
"predicted_SLG": 0.5675,
"predicted_SO": 2.3168
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.2607,
"delta": 0.0847,
"percent_delta": 0.4813,
"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.5224,
"delta": 2.4524,
"percent_delta": 0.6026,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.252,
"delta": 0.011,
"percent_delta": 0.0456,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.326,
"after": 0.8594,
"delta": 0.5334,
"percent_delta": 1.6362,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.6775,
"delta": 0.6975,
"percent_delta": 0.7117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3,
"after": 0.611,
"delta": 0.311,
"percent_delta": 1.0367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3536,
"delta": 0.0066,
"percent_delta": 0.019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.679,
"after": 1.2327,
"delta": 0.5537,
"percent_delta": 0.8155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.72,
"after": 1.2401,
"delta": 0.5201,
"percent_delta": 0.7224,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.528,
"after": 0.5675,
"delta": 0.0395,
"percent_delta": 0.0748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.502,
"after": 2.3168,
"delta": 0.8148,
"percent_delta": 0.5425,
"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.5224,
"delta": 2.4524,
"percent_delta": 0.6026,
"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.2607,
"predicted_3B": 0.0004,
"predicted_AB": 6.5224,
"predicted_AVG": 0.2579,
"predicted_BB": 0.8552,
"predicted_H": 1.682,
"predicted_HBP": 0.112,
"predicted_HR": 0.6084,
"predicted_OBP": 0.3439,
"predicted_R": 1.2348,
"predicted_RBI": 1.2422,
"predicted_SLG": 0.5778,
"predicted_SO": 2.3282
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2607,
"after": 0.2607,
"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.5224,
"after": 6.5224,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2579,
"delta": 0.0059,
"percent_delta": 0.0234,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8594,
"after": 0.8552,
"delta": -0.0042,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6775,
"after": 1.682,
"delta": 0.0045,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.112,
"after": 0.112,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.611,
"after": 0.6084,
"delta": -0.0026,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3536,
"after": 0.3439,
"delta": -0.0097,
"percent_delta": -0.0274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2327,
"after": 1.2348,
"delta": 0.0021,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.2401,
"after": 1.2422,
"delta": 0.0021,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5675,
"after": 0.5778,
"delta": 0.0103,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3168,
"after": 2.3282,
"delta": 0.0114,
"percent_delta": 0.0049,
"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.5675,
"after": 0.5778,
"delta": 0.0103,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3536,
"after": 0.3439,
"delta": -0.0097,
"percent_delta": -0.0274,
"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.258 HR/AB=0.093",
"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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2607,
"after": 0.0,
"delta": -0.2607,
"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.5224,
"after": 7.0,
"delta": 0.4776,
"percent_delta": 0.0732,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8552,
"after": 1.0,
"delta": 0.1448,
"percent_delta": 0.1693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.682,
"after": 2.0,
"delta": 0.318,
"percent_delta": 0.1891,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.112,
"after": 0.0,
"delta": -0.112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.6084,
"after": 1.0,
"delta": 0.3916,
"percent_delta": 0.6437,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2422,
"after": 1.0,
"delta": -0.2422,
"percent_delta": -0.195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.3282,
"after": 2.0,
"delta": -0.3282,
"percent_delta": -0.141,
"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_AB",
"before": 6.5224,
"after": 7.0,
"delta": 0.4776,
"percent_delta": 0.0732,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 2.3282,
"after": 2.0,
"delta": -0.3282,
"percent_delta": -0.141,
"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": 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": 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.2348,
"after": 1.0,
"delta": -0.2348,
"percent_delta": -0.1902,
"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.2348,
"after": 1.0,
"delta": -0.2348,
"percent_delta": -0.1902,
"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": 1.0,
"predicted_OBP": 0.375,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.714,
"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.2579,
"after": 0.286,
"delta": 0.0281,
"percent_delta": 0.109,
"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.3439,
"after": 0.375,
"delta": 0.0311,
"percent_delta": 0.0904,
"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.5778,
"after": 0.714,
"delta": 0.1362,
"percent_delta": 0.2357,
"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.5778,
"after": 0.714,
"delta": 0.1362,
"percent_delta": 0.2357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 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": 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": 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.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": 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_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": 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.2579,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3439,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5778,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2579,
"delta": -0.0281,
"percent_delta": -0.0983,
"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.375,
"after": 0.3439,
"delta": -0.0311,
"percent_delta": -0.0829,
"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.714,
"after": 0.5778,
"delta": -0.1362,
"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": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.714,
"after": 0.5778,
"delta": -0.1362,
"percent_delta": -0.1907,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.176,
"after": 0.0,
"delta": -0.176,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.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": 5.0,
"delta": 0.93,
"percent_delta": 0.2285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2579,
"delta": 0.0169,
"percent_delta": 0.0701,
"direction": "boost",
"projection_effect": "better",
"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.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.347,
"after": 0.3439,
"delta": -0.0031,
"percent_delta": -0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.679,
"after": 1.0,
"delta": 0.321,
"percent_delta": 0.4728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.72,
"after": 2.0,
"delta": 1.28,
"percent_delta": 1.7778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.528,
"after": 0.5778,
"delta": 0.0498,
"percent_delta": 0.0943,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.502,
"after": 1.0,
"delta": -0.502,
"percent_delta": -0.3342,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 7,
"deboosted_metrics": 3,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.72,
"after": 2.0,
"delta": 1.28,
"percent_delta": 1.7778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.502,
"after": 1.0,
"delta": -0.502,
"percent_delta": -0.3342,
"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.176 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.070 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.326 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.300 | - |
| predicted_OBP | 0.347 | - |
| predicted_R | 0.679 | - |
| predicted_RBI | 0.720 | - |
| predicted_SLG | 0.528 | - |
| predicted_SO | 1.502 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.261 | 0.085 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.522 | 2.452 |
| predicted_AVG | 0.252 | 0.011 |
| predicted_BB | 0.859 | 0.533 |
| predicted_H | 1.677 | 0.698 |
| predicted_HBP | 0.112 | - |
| predicted_HR | 0.611 | 0.311 |
| predicted_OBP | 0.354 | 0.007 |
| predicted_R | 1.233 | 0.554 |
| predicted_RBI | 1.240 | 0.520 |
| predicted_SLG | 0.568 | 0.039 |
| predicted_SO | 2.317 | 0.815 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.261 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.522 | 0.000 |
| predicted_AVG | 0.258 | 0.006 |
| predicted_BB | 0.855 | -0.004 |
| predicted_H | 1.682 | 0.004 |
| predicted_HBP | 0.112 | 0.000 |
| predicted_HR | 0.608 | -0.003 |
| predicted_OBP | 0.344 | -0.010 |
| predicted_R | 1.235 | 0.002 |
| predicted_RBI | 1.242 | 0.002 |
| predicted_SLG | 0.578 | 0.010 |
| predicted_SO | 2.328 | 0.011 |
AB rounded to 7 (raw=6.52), rates preserved: AVG=0.258 HR/AB=0.093
| 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 | 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 | 1.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.261 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.478 |
| predicted_AVG | 0.286 | 0.028 |
| predicted_BB | 1.000 | 0.145 |
| predicted_H | 2.000 | 0.318 |
| predicted_HR | 1.000 | 0.392 |
| predicted_OBP | 0.375 | 0.031 |
| predicted_R | 1.000 | -0.235 |
| predicted_RBI | 1.000 | -0.242 |
| predicted_SLG | 0.714 | 0.136 |
| predicted_SO | 2.000 | -0.328 |
Attached 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 | 1.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 | 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 | 0.000 | 0.000 | 3.000 | 6.000 | 4.000 | 5.000 | 5.000 | 0.3125 | 0.4545 | 0.8750 | 0.3125 | 0.1875 | 0.3750 | 0.3125 | 0.3125 |
| last_10 | 0.20 | 10 | - | 36.000 | 10.000 | 2.000 | 0.000 | 5.000 | 10.000 | 9.000 | 9.000 | 11.000 | 0.2778 | 0.4130 | 0.7500 | 0.2778 | 0.1389 | 0.2778 | 0.2500 | 0.3056 |
| season | 0.60 | 62 | - | 873.000 | 216.000 | 39.000 | 0.000 | 60.000 | 100.000 | 150.000 | 72.000 | 332.000 | 0.2474 | 0.3167 | 0.4983 | 0.2474 | 0.0687 | 0.1145 | 0.0825 | 0.3803 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3680 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.6290 |
| predicted_AVG | 0.2660 |
| predicted_BB | 1.5350 |
| predicted_H | 2.5610 |
| predicted_HBP | 0.1120 |
| predicted_HR | 1.0050 |
| predicted_OBP | 0.3620 |
| predicted_R | 1.9340 |
| predicted_RBI | 1.8990 |
| predicted_SLG | 0.6175 |
| predicted_SO | 3.3490 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1760 | 0.3680 | 0.2607 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.0700 | 9.6290 | 6.5224 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2660 | 0.2520 | model_form_blend |
| predicted_BB | 0.3260 | 1.5350 | 0.8594 | model_form_blend |
| predicted_H | 0.9800 | 2.5610 | 1.6775 | model_form_blend |
| predicted_HBP | - | 0.1120 | 0.1120 | form_only |
| predicted_HR | 0.3000 | 1.0050 | 0.6110 | model_form_blend |
| predicted_OBP | 0.3470 | 0.3620 | 0.3536 | model_form_blend |
| predicted_R | 0.6790 | 1.9340 | 1.2327 | model_form_blend |
| predicted_RBI | 0.7200 | 1.8990 | 1.2401 | model_form_blend |
| predicted_SLG | 0.5280 | 0.6175 | 0.5675 | model_form_blend |
| predicted_SO | 1.5020 | 3.3490 | 2.3168 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 221 |
| Season rows before report date | 221 |
| 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 | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| 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 | 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 | 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 | C |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 696100 |
| playerID | 696100 |
| playerName | Hunter Goodman |
| pos | C |
| started | True |
| startingPosition | C |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 33.0 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.366 |
| sl_xwoba | 0.33 |
| sl_xba | 0.232 |
| sl_xslg | 0.456 |
| sl_sweet_spot_percent | 35.8 |
| sl_barrel_batted_rate | 15.6 |
| sl_hard_hit_percent | 47.3 |
| sl_exit_velocity_avg | 91.2 |
| sl_launch_angle_avg | 17.7 |
| sl_whiff_percent | 33.5 |
| 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.189 | 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 | 3.880 | 4.000 | 6.000 | Hitting_AB | 3.646 | 4.000 | 0.354 | 0.000 |
| predicted_AVG | 0.249 | 0.250 | 0.333 | Hitting_AVG | 0.261 | 0.000 | -0.011 | 0.250 |
| predicted_BB | 0.311 | 1.000 | 1.000 | Hitting_BB | 0.309 | 0.000 | 0.691 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.066 | 0.000 | -0.066 | 0.000 |
| predicted_H | 0.960 | 1.000 | 2.000 | Hitting_H | 0.950 | 0.000 | 0.050 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.050 | 0.000 | -0.050 | 0.000 |
| predicted_OBP | 0.343 | 0.400 | 0.429 | Hitting_OBP | 0.320 | 0.000 | 0.080 | 0.400 |
| predicted_R | 0.550 | 1.000 | 1.000 | Hitting_R | 0.547 | 0.000 | 0.453 | 1.000 |
| predicted_RBI | 0.390 | 0.000 | 1.000 | Hitting_RBI | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_SLG | 0.391 | 0.250 | 0.333 | Hitting_SLG | 0.353 | 0.000 | -0.103 | 0.250 |
| predicted_SO | 1.206 | 3.000 | 2.000 | Hitting_SO | 1.199 | 0.000 | 1.801 | 3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 5 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_SO: 1.2060 -> 3.0000 (boost 1.7940, worse) |
| Biggest Deboost | predicted_RBI: 0.3900 -> 0.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 | 8 | 0 | 7 | 1 | predicted_AB: 3.8800 -> 5.9337 (boost 2.0537, 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.2619 -> 0.2677 (boost 0.0058, better) | predicted_OBP: 0.3475 -> 0.3281 (deboost -0.0194, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 5 | 3 | 4 | 4 | predicted_BB: 0.5333 -> 1.0000 (boost 0.4667, better) | predicted_2B: 0.3547 -> 0.0000 (deboost -0.3547, worse) | AB rounded to 6 (raw=5.93), rates preserved: AVG=0.268 HR/AB=0.017 |
| 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.8201 -> 1.0000 (boost 0.1799, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3281 -> 0.4290 (boost 0.1009, better) | predicted_SLG: 0.3796 -> 0.3330 (deboost -0.0466, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 4 | 1 | 3 | 0 | 4 | predicted_SO: 2.0000 -> 3.0000 (boost 1.0000, worse) | 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.3796 (boost 0.0466, better) | predicted_OBP: 0.4290 -> 0.3281 (deboost -0.1009, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "650489",
"player_name": "Willi Castro",
"position": "3B",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.0,
"predicted_AB": 3.88,
"predicted_AVG": 0.249,
"predicted_BB": 0.311,
"predicted_H": 0.96,
"predicted_HR": 0.09,
"predicted_OBP": 0.343,
"predicted_R": 0.55,
"predicted_RBI": 0.39,
"predicted_SLG": 0.391,
"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.3547,
"predicted_3B": 0.0004,
"predicted_AB": 5.9337,
"predicted_AVG": 0.2619,
"predicted_BB": 0.5359,
"predicted_H": 1.5842,
"predicted_HBP": 0.202,
"predicted_HR": 0.1032,
"predicted_OBP": 0.3475,
"predicted_R": 0.8187,
"predicted_RBI": 0.5566,
"predicted_SLG": 0.3892,
"predicted_SO": 1.6238
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.189,
"after": 0.3547,
"delta": 0.1657,
"percent_delta": 0.8767,
"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.88,
"after": 5.9337,
"delta": 2.0537,
"percent_delta": 0.5293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2619,
"delta": 0.0129,
"percent_delta": 0.0518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.311,
"after": 0.5359,
"delta": 0.2249,
"percent_delta": 0.7232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.5842,
"delta": 0.6242,
"percent_delta": 0.6502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1032,
"delta": 0.0132,
"percent_delta": 0.1467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3475,
"delta": 0.0045,
"percent_delta": 0.0131,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 0.8187,
"delta": 0.2687,
"percent_delta": 0.4885,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.5566,
"delta": 0.1666,
"percent_delta": 0.4272,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.391,
"after": 0.3892,
"delta": -0.0018,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.206,
"after": 1.6238,
"delta": 0.4178,
"percent_delta": 0.3464,
"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.88,
"after": 5.9337,
"delta": 2.0537,
"percent_delta": 0.5293,
"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.3547,
"predicted_3B": 0.0004,
"predicted_AB": 5.9337,
"predicted_AVG": 0.2677,
"predicted_BB": 0.5333,
"predicted_H": 1.5885,
"predicted_HBP": 0.202,
"predicted_HR": 0.1028,
"predicted_OBP": 0.3281,
"predicted_R": 0.8201,
"predicted_RBI": 0.5575,
"predicted_SLG": 0.3796,
"predicted_SO": 1.6318
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3547,
"after": 0.3547,
"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.9337,
"after": 5.9337,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2619,
"after": 0.2677,
"delta": 0.0058,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5359,
"after": 0.5333,
"delta": -0.0026,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5842,
"after": 1.5885,
"delta": 0.0043,
"percent_delta": 0.0027,
"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.1032,
"after": 0.1028,
"delta": -0.0004,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3475,
"after": 0.3281,
"delta": -0.0194,
"percent_delta": -0.0558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8187,
"after": 0.8201,
"delta": 0.0014,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5566,
"after": 0.5575,
"delta": 0.0009,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3892,
"after": 0.3796,
"delta": -0.0096,
"percent_delta": -0.0247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6238,
"after": 1.6318,
"delta": 0.008,
"percent_delta": 0.0049,
"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.2619,
"after": 0.2677,
"delta": 0.0058,
"percent_delta": 0.0221,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3475,
"after": 0.3281,
"delta": -0.0194,
"percent_delta": -0.0558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.93), rates preserved: AVG=0.268 HR/AB=0.017",
"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.3547,
"after": 0.0,
"delta": -0.3547,
"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.9337,
"after": 6.0,
"delta": 0.0663,
"percent_delta": 0.0112,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5333,
"after": 1.0,
"delta": 0.4667,
"percent_delta": 0.8751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5885,
"after": 2.0,
"delta": 0.4115,
"percent_delta": 0.259,
"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.1028,
"after": 0.0,
"delta": -0.1028,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5575,
"after": 1.0,
"delta": 0.4425,
"percent_delta": 0.7937,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6318,
"after": 2.0,
"delta": 0.3682,
"percent_delta": 0.2256,
"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.5333,
"after": 1.0,
"delta": 0.4667,
"percent_delta": 0.8751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3547,
"after": 0.0,
"delta": -0.3547,
"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": 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": 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": 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": 0.8201,
"after": 1.0,
"delta": 0.1799,
"percent_delta": 0.2194,
"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.8201,
"after": 1.0,
"delta": 0.1799,
"percent_delta": 0.2194,
"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": 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.2677,
"after": 0.333,
"delta": 0.0653,
"percent_delta": 0.2439,
"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.3281,
"after": 0.429,
"delta": 0.1009,
"percent_delta": 0.3075,
"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.3796,
"after": 0.333,
"delta": -0.0466,
"percent_delta": -0.1228,
"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.3281,
"after": 0.429,
"delta": 0.1009,
"percent_delta": 0.3075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3796,
"after": 0.333,
"delta": -0.0466,
"percent_delta": -0.1228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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": 2.0,
"after": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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": 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.2677,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3281,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3796,
"predicted_SO": 3.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2677,
"delta": -0.0653,
"percent_delta": -0.1961,
"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.3281,
"delta": -0.1009,
"percent_delta": -0.2352,
"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.3796,
"delta": 0.0466,
"percent_delta": 0.1399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3796,
"delta": 0.0466,
"percent_delta": 0.1399,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3281,
"delta": -0.1009,
"percent_delta": -0.2352,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.88,
"after": 4.0,
"delta": 0.12,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2677,
"delta": 0.0187,
"percent_delta": 0.0751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.311,
"after": 1.0,
"delta": 0.689,
"percent_delta": 2.2154,
"direction": "boost",
"projection_effect": "better",
"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.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.343,
"after": 0.3281,
"delta": -0.0149,
"percent_delta": -0.0434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.55,
"after": 1.0,
"delta": 0.45,
"percent_delta": 0.8182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.391,
"after": 0.3796,
"delta": -0.0114,
"percent_delta": -0.0292,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.206,
"after": 3.0,
"delta": 1.794,
"percent_delta": 1.4876,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 5,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.206,
"after": 3.0,
"delta": 1.794,
"percent_delta": 1.4876,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"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.000 | - |
| predicted_AB | 3.880 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.311 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.343 | - |
| predicted_R | 0.550 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.391 | - |
| 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.355 | 0.166 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.934 | 2.054 |
| predicted_AVG | 0.262 | 0.013 |
| predicted_BB | 0.536 | 0.225 |
| predicted_H | 1.584 | 0.624 |
| predicted_HBP | 0.202 | - |
| predicted_HR | 0.103 | 0.013 |
| predicted_OBP | 0.347 | 0.004 |
| predicted_R | 0.819 | 0.269 |
| predicted_RBI | 0.557 | 0.167 |
| predicted_SLG | 0.389 | -0.002 |
| predicted_SO | 1.624 | 0.418 |
Step 3: 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 | 5.934 | 0.000 |
| predicted_AVG | 0.268 | 0.006 |
| predicted_BB | 0.533 | -0.003 |
| predicted_H | 1.589 | 0.004 |
| predicted_HBP | 0.202 | 0.000 |
| predicted_HR | 0.103 | -0.000 |
| predicted_OBP | 0.328 | -0.019 |
| predicted_R | 0.820 | 0.001 |
| predicted_RBI | 0.557 | 0.001 |
| predicted_SLG | 0.380 | -0.010 |
| predicted_SO | 1.632 | 0.008 |
AB rounded to 6 (raw=5.93), rates preserved: AVG=0.268 HR/AB=0.017
| 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 | - |
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 | 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 | 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 | 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 | 6.000 | 0.066 |
| predicted_AVG | 0.333 | 0.065 |
| predicted_BB | 1.000 | 0.467 |
| predicted_H | 2.000 | 0.411 |
| predicted_HR | 0.000 | -0.103 |
| predicted_OBP | 0.429 | 0.101 |
| predicted_R | 1.000 | 0.180 |
| predicted_RBI | 1.000 | 0.443 |
| predicted_SLG | 0.333 | -0.047 |
| predicted_SO | 2.000 | 0.368 |
Attached 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 | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 6.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 0.3158 | 0.4091 | 0.4211 | 0.3158 | 0.0000 | 0.0000 | 0.1053 | 0.1053 |
| last_10 | 0.20 | 10 | - | 40.000 | 12.000 | 3.000 | 0.000 | 1.000 | 4.000 | 5.000 | 5.000 | 7.000 | 0.3000 | 0.4043 | 0.4500 | 0.3000 | 0.0250 | 0.1000 | 0.1250 | 0.1750 |
| season | 0.60 | 55 | - | 660.000 | 172.000 | 34.000 | 0.000 | 9.000 | 75.000 | 99.000 | 56.000 | 217.000 | 0.2606 | 0.3204 | 0.3530 | 0.2606 | 0.0136 | 0.1136 | 0.0848 | 0.3288 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5670 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.5650 |
| predicted_AVG | 0.2784 |
| predicted_BB | 0.8240 |
| predicted_H | 2.3840 |
| predicted_HBP | 0.2020 |
| predicted_HR | 0.1200 |
| predicted_OBP | 0.3533 |
| predicted_R | 1.1630 |
| predicted_RBI | 0.7700 |
| predicted_SLG | 0.3869 |
| predicted_SO | 2.1590 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1890 | 0.5670 | 0.3547 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8800 | 8.5650 | 5.9337 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2784 | 0.2619 | model_form_blend |
| predicted_BB | 0.3110 | 0.8240 | 0.5359 | model_form_blend |
| predicted_H | 0.9600 | 2.3840 | 1.5842 | model_form_blend |
| predicted_HBP | - | 0.2020 | 0.2020 | form_only |
| predicted_HR | 0.0900 | 0.1200 | 0.1032 | model_form_blend |
| predicted_OBP | 0.3430 | 0.3533 | 0.3475 | model_form_blend |
| predicted_R | 0.5500 | 1.1630 | 0.8187 | model_form_blend |
| predicted_RBI | 0.3900 | 0.7700 | 0.5566 | model_form_blend |
| predicted_SLG | 0.3910 | 0.3869 | 0.3892 | model_form_blend |
| predicted_SO | 1.2060 | 2.1590 | 1.6238 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 181 |
| Season rows before report date | 181 |
| Report year | 2026 |
| Profile rows used | 180 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.261 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.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 | 20260610_CHC@COL |
| game_type | full |
| mlbID | 650489 |
| playerID | 650489 |
| playerName | Willi Castro |
| pos | 2B |
| started | True |
| startingPosition | LF |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 26.6 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.319 |
| sl_xwoba | 0.288 |
| sl_xba | 0.222 |
| sl_xslg | 0.346 |
| sl_sweet_spot_percent | 29.4 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 43.4 |
| sl_exit_velocity_avg | 88.4 |
| sl_launch_angle_avg | 18.4 |
| sl_whiff_percent | 29.9 |
| sl_swing_percent | 53.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.311 | 0.000 | 1.000 | Hitting_2B | 0.308 | 0.000 | -0.308 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.640 | 3.000 | 6.000 | Hitting_AB | 3.590 | 3.000 | -0.590 | 0.000 |
| predicted_AVG | 0.254 | 0.000 | 0.333 | Hitting_AVG | 0.326 | 0.000 | -0.326 | 0.000 |
| predicted_BB | 0.352 | 2.000 | 1.000 | Hitting_BB | 0.359 | 1.000 | 1.641 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.041 | 0.000 | -0.041 | 0.000 |
| predicted_H | 0.930 | 0.000 | 2.000 | Hitting_H | 1.169 | 0.000 | -1.169 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.051 | 0.000 | -0.051 | 0.000 |
| predicted_OBP | 0.322 | 0.400 | 0.429 | Hitting_OBP | 0.390 | 0.250 | 0.010 | 0.150 |
| predicted_R | 0.461 | 0.000 | 1.000 | Hitting_R | 0.456 | 1.000 | -0.456 | -1.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.497 | 0.000 | -0.497 | 0.000 |
| predicted_SLG | 0.395 | 0.000 | 0.500 | Hitting_SLG | 0.454 | 0.000 | -0.454 | 0.000 |
| predicted_SO | 0.803 | 0.000 | 1.000 | Hitting_SO | 0.795 | 1.000 | -0.795 | -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_BB: 0.3520 -> 2.0000 (boost 1.6480, better) |
| 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.6400 -> 5.6663 (boost 2.0263, 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.2680 -> 0.2757 (boost 0.0077, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 5 | 2 | 6 | 1 | predicted_2B: 0.5231 -> 1.0000 (boost 0.4769, better) | predicted_HR: 0.0680 -> 0.0000 (deboost -0.0680, worse) | AB rounded to 6 (raw=5.67), rates preserved: AVG=0.276 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7451 -> 1.0000 (boost 0.2549, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.4042 -> 0.5000 (boost 0.0958, better) | - | 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_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 |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5000 -> 0.4042 (deboost -0.0958, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687859",
"player_name": "Troy Johnston",
"position": "RF",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.311,
"predicted_3B": 0.0,
"predicted_AB": 3.64,
"predicted_AVG": 0.254,
"predicted_BB": 0.352,
"predicted_H": 0.93,
"predicted_HR": 0.06,
"predicted_OBP": 0.322,
"predicted_R": 0.461,
"predicted_RBI": 0.43,
"predicted_SLG": 0.395,
"predicted_SO": 0.803
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.5231,
"predicted_3B": 0.0004,
"predicted_AB": 5.6663,
"predicted_AVG": 0.268,
"predicted_BB": 0.5399,
"predicted_H": 1.5579,
"predicted_HBP": 0.023,
"predicted_HR": 0.0683,
"predicted_OBP": 0.3323,
"predicted_R": 0.7438,
"predicted_RBI": 0.6728,
"predicted_SLG": 0.402,
"predicted_SO": 1.0506
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.311,
"after": 0.5231,
"delta": 0.2121,
"percent_delta": 0.682,
"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.64,
"after": 5.6663,
"delta": 2.0263,
"percent_delta": 0.5567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.268,
"delta": 0.014,
"percent_delta": 0.0551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.352,
"after": 0.5399,
"delta": 0.1879,
"percent_delta": 0.5338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 1.5579,
"delta": 0.6279,
"percent_delta": 0.6752,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0683,
"delta": 0.0083,
"percent_delta": 0.1383,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3323,
"delta": 0.0103,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 0.7438,
"delta": 0.2828,
"percent_delta": 0.6134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.6728,
"delta": 0.2428,
"percent_delta": 0.5647,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.395,
"after": 0.402,
"delta": 0.007,
"percent_delta": 0.0177,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.803,
"after": 1.0506,
"delta": 0.2476,
"percent_delta": 0.3083,
"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.64,
"after": 5.6663,
"delta": 2.0263,
"percent_delta": 0.5567,
"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.5231,
"predicted_3B": 0.0004,
"predicted_AB": 5.6663,
"predicted_AVG": 0.2757,
"predicted_BB": 0.5373,
"predicted_H": 1.5621,
"predicted_HBP": 0.023,
"predicted_HR": 0.068,
"predicted_OBP": 0.3384,
"predicted_R": 0.7451,
"predicted_RBI": 0.6739,
"predicted_SLG": 0.4042,
"predicted_SO": 1.0557
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5231,
"after": 0.5231,
"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.6663,
"after": 5.6663,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.268,
"after": 0.2757,
"delta": 0.0077,
"percent_delta": 0.0287,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5399,
"after": 0.5373,
"delta": -0.0026,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5579,
"after": 1.5621,
"delta": 0.0042,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.023,
"after": 0.023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0683,
"after": 0.068,
"delta": -0.0003,
"percent_delta": -0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3323,
"after": 0.3384,
"delta": 0.0061,
"percent_delta": 0.0184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7438,
"after": 0.7451,
"delta": 0.0013,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6728,
"after": 0.6739,
"delta": 0.0011,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.402,
"after": 0.4042,
"delta": 0.0022,
"percent_delta": 0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0506,
"after": 1.0557,
"delta": 0.0051,
"percent_delta": 0.0049,
"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.268,
"after": 0.2757,
"delta": 0.0077,
"percent_delta": 0.0287,
"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.67), rates preserved: AVG=0.276 HR/AB=0.012",
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5231,
"after": 1.0,
"delta": 0.4769,
"percent_delta": 0.9117,
"direction": "boost",
"projection_effect": "better",
"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.6663,
"after": 6.0,
"delta": 0.3337,
"percent_delta": 0.0589,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5373,
"after": 1.0,
"delta": 0.4627,
"percent_delta": 0.8612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5621,
"after": 2.0,
"delta": 0.4379,
"percent_delta": 0.2803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.023,
"after": 0.0,
"delta": -0.023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.068,
"after": 0.0,
"delta": -0.068,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6739,
"after": 1.0,
"delta": 0.3261,
"percent_delta": 0.4839,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0557,
"after": 1.0,
"delta": -0.0557,
"percent_delta": -0.0528,
"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.5231,
"after": 1.0,
"delta": 0.4769,
"percent_delta": 0.9117,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.068,
"after": 0.0,
"delta": -0.068,
"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": 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": 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.7451,
"after": 1.0,
"delta": 0.2549,
"percent_delta": 0.3421,
"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.7451,
"after": 1.0,
"delta": 0.2549,
"percent_delta": 0.3421,
"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": 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": 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.2757,
"after": 0.333,
"delta": 0.0573,
"percent_delta": 0.2078,
"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.3384,
"after": 0.429,
"delta": 0.0906,
"percent_delta": 0.2677,
"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.4042,
"after": 0.5,
"delta": 0.0958,
"percent_delta": 0.237,
"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.4042,
"after": 0.5,
"delta": 0.0958,
"percent_delta": 0.237,
"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": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 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": 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": 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": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"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": 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.2757,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3384,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4042,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2757,
"delta": -0.0573,
"percent_delta": -0.1721,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3384,
"delta": -0.0906,
"percent_delta": -0.2112,
"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.4042,
"delta": -0.0958,
"percent_delta": -0.1917,
"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.5,
"after": 0.4042,
"delta": -0.0958,
"percent_delta": -0.1917,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.311,
"after": 0.0,
"delta": -0.311,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.64,
"after": 3.0,
"delta": -0.64,
"percent_delta": -0.1758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.254,
"after": 0.2757,
"delta": 0.0217,
"percent_delta": 0.0854,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.352,
"after": 2.0,
"delta": 1.648,
"percent_delta": 4.6818,
"direction": "boost",
"projection_effect": "better",
"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.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.3384,
"delta": 0.0164,
"percent_delta": 0.0509,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 0.0,
"delta": -0.461,
"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.395,
"after": 0.4042,
"delta": 0.0092,
"percent_delta": 0.0233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.803,
"after": 0.0,
"delta": -0.803,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.352,
"after": 2.0,
"delta": 1.648,
"percent_delta": 4.6818,
"direction": "boost",
"projection_effect": "better",
"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.311 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.640 | - |
| predicted_AVG | 0.254 | - |
| predicted_BB | 0.352 | - |
| predicted_H | 0.930 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.322 | - |
| predicted_R | 0.461 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.395 | - |
| predicted_SO | 0.803 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.523 | 0.212 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.666 | 2.026 |
| predicted_AVG | 0.268 | 0.014 |
| predicted_BB | 0.540 | 0.188 |
| predicted_H | 1.558 | 0.628 |
| predicted_HBP | 0.023 | - |
| predicted_HR | 0.068 | 0.008 |
| predicted_OBP | 0.332 | 0.010 |
| predicted_R | 0.744 | 0.283 |
| predicted_RBI | 0.673 | 0.243 |
| predicted_SLG | 0.402 | 0.007 |
| predicted_SO | 1.051 | 0.248 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.523 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.666 | 0.000 |
| predicted_AVG | 0.276 | 0.008 |
| predicted_BB | 0.537 | -0.003 |
| predicted_H | 1.562 | 0.004 |
| predicted_HBP | 0.023 | 0.000 |
| predicted_HR | 0.068 | -0.000 |
| predicted_OBP | 0.338 | 0.006 |
| predicted_R | 0.745 | 0.001 |
| predicted_RBI | 0.674 | 0.001 |
| predicted_SLG | 0.404 | 0.002 |
| predicted_SO | 1.056 | 0.005 |
AB rounded to 6 (raw=5.67), rates preserved: AVG=0.276 HR/AB=0.012
| 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 | 1.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 | 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.477 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.334 |
| predicted_AVG | 0.333 | 0.057 |
| predicted_BB | 1.000 | 0.463 |
| predicted_H | 2.000 | 0.438 |
| predicted_HR | 0.000 | -0.068 |
| predicted_OBP | 0.429 | 0.091 |
| predicted_R | 1.000 | 0.255 |
| predicted_RBI | 1.000 | 0.326 |
| predicted_SLG | 0.500 | 0.096 |
| predicted_SO | 1.000 | -0.056 |
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 | 3.000 | -3.000 |
| BB | 2.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 | 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 | 2.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 1.000 | 0.1667 | 0.2381 | 0.2778 | 0.1667 | 0.0000 | 0.0556 | 0.1111 | 0.0556 |
| last_10 | 0.20 | 10 | - | 41.000 | 12.000 | 5.000 | 0.000 | 0.000 | 5.000 | 5.000 | 3.000 | 4.000 | 0.2927 | 0.3333 | 0.4146 | 0.2927 | 0.0000 | 0.1220 | 0.0732 | 0.0976 |
| season | 0.60 | 61 | - | 700.000 | 228.000 | 60.000 | 0.000 | 10.000 | 97.000 | 89.000 | 68.000 | 155.000 | 0.3257 | 0.3873 | 0.4543 | 0.3257 | 0.0143 | 0.1386 | 0.0971 | 0.2214 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7940 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.2550 |
| predicted_AVG | 0.2859 |
| predicted_BB | 0.7800 |
| predicted_H | 2.3600 |
| predicted_HBP | 0.0230 |
| predicted_HR | 0.0790 |
| predicted_OBP | 0.3454 |
| predicted_R | 1.1050 |
| predicted_RBI | 0.9830 |
| predicted_SLG | 0.4110 |
| predicted_SO | 1.3670 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3110 | 0.7940 | 0.5231 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6400 | 8.2550 | 5.6663 | model_form_blend |
| predicted_AVG | 0.2540 | 0.2859 | 0.2680 | model_form_blend |
| predicted_BB | 0.3520 | 0.7800 | 0.5399 | model_form_blend |
| predicted_H | 0.9300 | 2.3600 | 1.5579 | model_form_blend |
| predicted_HBP | - | 0.0230 | 0.0230 | form_only |
| predicted_HR | 0.0600 | 0.0790 | 0.0683 | model_form_blend |
| predicted_OBP | 0.3220 | 0.3454 | 0.3323 | model_form_blend |
| predicted_R | 0.4610 | 1.1050 | 0.7438 | model_form_blend |
| predicted_RBI | 0.4300 | 0.9830 | 0.6728 | model_form_blend |
| predicted_SLG | 0.3950 | 0.4110 | 0.4020 | model_form_blend |
| predicted_SO | 0.8030 | 1.3670 | 1.0506 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 195 |
| Season rows before report date | 195 |
| Report year | 2026 |
| Profile rows used | 193 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.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 | 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 | 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 | 20260610_CHC@COL |
| game_type | full |
| mlbID | 687859 |
| playerID | 687859 |
| playerName | Troy Johnston |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 19.0 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.35 |
| sl_xwoba | 0.325 |
| sl_xba | 0.283 |
| sl_xslg | 0.392 |
| sl_sweet_spot_percent | 43.0 |
| sl_barrel_batted_rate | 2.9 |
| sl_hard_hit_percent | 36.6 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 13.3 |
| sl_whiff_percent | 23.2 |
| sl_swing_percent | 50.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.139 | 0.000 | 0.000 | Hitting_2B | 0.135 | 0.000 | -0.135 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.778 | 3.000 | 3.000 | Hitting_AB | 2.703 | 1.000 | 0.297 | 2.000 |
| predicted_AVG | 0.272 | 0.000 | 0.333 | Hitting_AVG | 0.200 | 1.000 | -0.200 | -1.000 |
| predicted_BB | 0.278 | 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.270 | 0.000 | 1.000 | Hitting_H | 0.541 | 1.000 | -0.541 | -1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.311 | 0.250 | 0.333 | Hitting_OBP | 0.304 | 1.000 | -0.054 | -0.750 |
| predicted_R | 0.194 | 0.000 | 0.000 | Hitting_R | 0.189 | 0.000 | -0.189 | 0.000 |
| predicted_RBI | 0.190 | 0.000 | 0.000 | Hitting_RBI | 0.297 | 1.000 | -0.297 | -1.000 |
| predicted_SLG | 0.356 | 0.000 | 0.333 | Hitting_SLG | 0.250 | 1.000 | -0.250 | -1.000 |
| predicted_SO | 0.500 | 2.000 | 1.000 | Hitting_SO | 0.486 | 0.000 | 1.514 | 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.5000 -> 2.0000 (boost 1.5000, worse) |
| Biggest Deboost | predicted_H: 0.2700 -> 0.0000 (deboost -0.2700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 6 | 1 | 5 | 2 | predicted_AB: 2.7780 -> 3.3338 (boost 0.5558, better) | predicted_SLG: 0.3560 -> 0.3430 (deboost -0.0130, 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.3430 -> 0.2503 (deboost -0.0927, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_H: 0.5914 -> 1.0000 (boost 0.4086, better) | predicted_RBI: 0.3659 -> 0.0000 (deboost -0.3659, worse) | AB rounded to 3 (raw=3.33), rates preserved: AVG=0.177 HR/AB=0.009 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2712 -> 0.0000 (deboost -0.2712, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1774 -> 0.3330 (boost 0.1556, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 2 | 1 | 1 | 2 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1774 (deboost -0.1556, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694514",
"player_name": "Sterlin Thompson",
"position": "LF",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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": 2.778,
"predicted_AVG": 0.272,
"predicted_BB": 0.278,
"predicted_H": 0.27,
"predicted_HR": 0.03,
"predicted_OBP": 0.311,
"predicted_R": 0.194,
"predicted_RBI": 0.19,
"predicted_SLG": 0.356,
"predicted_SO": 0.5
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1511,
"predicted_3B": 0.0012,
"predicted_AB": 3.3338,
"predicted_AVG": 0.2671,
"predicted_BB": 0.3169,
"predicted_H": 0.5898,
"predicted_HBP": 0.136,
"predicted_HR": 0.03,
"predicted_OBP": 0.3228,
"predicted_R": 0.2707,
"predicted_RBI": 0.3653,
"predicted_SLG": 0.343,
"predicted_SO": 0.6718
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.139,
"after": 0.1511,
"delta": 0.0121,
"percent_delta": 0.0871,
"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.778,
"after": 3.3338,
"delta": 0.5558,
"percent_delta": 0.2001,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.2671,
"delta": -0.0049,
"percent_delta": -0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.278,
"after": 0.3169,
"delta": 0.0389,
"percent_delta": 0.1399,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 0.5898,
"delta": 0.3198,
"percent_delta": 1.1844,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.03,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.311,
"after": 0.3228,
"delta": 0.0118,
"percent_delta": 0.0379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.194,
"after": 0.2707,
"delta": 0.0767,
"percent_delta": 0.3954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.3653,
"delta": 0.1753,
"percent_delta": 0.9226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.343,
"delta": -0.013,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5,
"after": 0.6718,
"delta": 0.1718,
"percent_delta": 0.3436,
"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.778,
"after": 3.3338,
"delta": 0.5558,
"percent_delta": 0.2001,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.343,
"delta": -0.013,
"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": 10,
"season": 18
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1511,
"predicted_3B": 0.0012,
"predicted_AB": 3.3338,
"predicted_AVG": 0.1774,
"predicted_BB": 0.3153,
"predicted_H": 0.5914,
"predicted_HBP": 0.136,
"predicted_HR": 0.0299,
"predicted_OBP": 0.2485,
"predicted_R": 0.2712,
"predicted_RBI": 0.3659,
"predicted_SLG": 0.2503,
"predicted_SO": 0.6751
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1511,
"after": 0.1511,
"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.3338,
"after": 3.3338,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2671,
"after": 0.1774,
"delta": -0.0897,
"percent_delta": -0.3358,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3169,
"after": 0.3153,
"delta": -0.0016,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.5898,
"after": 0.5914,
"delta": 0.0016,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.136,
"after": 0.136,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0299,
"delta": -0.0001,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3228,
"after": 0.2485,
"delta": -0.0743,
"percent_delta": -0.2302,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2707,
"after": 0.2712,
"delta": 0.0005,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3653,
"after": 0.3659,
"delta": 0.0006,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.343,
"after": 0.2503,
"delta": -0.0927,
"percent_delta": -0.2703,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6718,
"after": 0.6751,
"delta": 0.0033,
"percent_delta": 0.0049,
"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.343,
"after": 0.2503,
"delta": -0.0927,
"percent_delta": -0.2703,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.33), rates preserved: AVG=0.177 HR/AB=0.009",
"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.1511,
"after": 0.0,
"delta": -0.1511,
"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.3338,
"after": 3.0,
"delta": -0.3338,
"percent_delta": -0.1001,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3153,
"after": 0.0,
"delta": -0.3153,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5914,
"after": 1.0,
"delta": 0.4086,
"percent_delta": 0.6909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.136,
"after": 0.0,
"delta": -0.136,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0299,
"after": 0.0,
"delta": -0.0299,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3659,
"after": 0.0,
"delta": -0.3659,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6751,
"after": 1.0,
"delta": 0.3249,
"percent_delta": 0.4813,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.5914,
"after": 1.0,
"delta": 0.4086,
"percent_delta": 0.6909,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3659,
"after": 0.0,
"delta": -0.3659,
"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.2712,
"after": 0.0,
"delta": -0.2712,
"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.2712,
"after": 0.0,
"delta": -0.2712,
"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.1774,
"after": 0.333,
"delta": 0.1556,
"percent_delta": 0.8771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2485,
"after": 0.333,
"delta": 0.0845,
"percent_delta": 0.34,
"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.2503,
"after": 0.333,
"delta": 0.0827,
"percent_delta": 0.3304,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.1774,
"after": 0.333,
"delta": 0.1556,
"percent_delta": 0.8771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.1774,
"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.2485,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2503,
"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.1774,
"delta": -0.1556,
"percent_delta": -0.4673,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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.2485,
"delta": -0.0845,
"percent_delta": -0.2538,
"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.2503,
"delta": -0.0827,
"percent_delta": -0.2483,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.1774,
"delta": -0.1556,
"percent_delta": -0.4673,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.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": 2.778,
"after": 3.0,
"delta": 0.222,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.272,
"after": 0.1774,
"delta": -0.0946,
"percent_delta": -0.3478,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.278,
"after": 1.0,
"delta": 0.722,
"percent_delta": 2.5971,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"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.311,
"after": 0.2485,
"delta": -0.0625,
"percent_delta": -0.201,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.2503,
"delta": -0.1057,
"percent_delta": -0.2969,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5,
"after": 2.0,
"delta": 1.5,
"percent_delta": 3.0,
"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.5,
"after": 2.0,
"delta": 1.5,
"percent_delta": 3.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.139 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.778 | - |
| predicted_AVG | 0.272 | - |
| predicted_BB | 0.278 | - |
| predicted_H | 0.270 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.311 | - |
| predicted_R | 0.194 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.356 | - |
| predicted_SO | 0.500 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.151 | 0.012 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.334 | 0.556 |
| predicted_AVG | 0.267 | -0.005 |
| predicted_BB | 0.317 | 0.039 |
| predicted_H | 0.590 | 0.320 |
| predicted_HBP | 0.136 | - |
| predicted_HR | 0.030 | 0.000 |
| predicted_OBP | 0.323 | 0.012 |
| predicted_R | 0.271 | 0.077 |
| predicted_RBI | 0.365 | 0.175 |
| predicted_SLG | 0.343 | -0.013 |
| predicted_SO | 0.672 | 0.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.151 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 3.334 | 0.000 |
| predicted_AVG | 0.177 | -0.090 |
| predicted_BB | 0.315 | -0.002 |
| predicted_H | 0.591 | 0.002 |
| predicted_HBP | 0.136 | 0.000 |
| predicted_HR | 0.030 | -0.000 |
| predicted_OBP | 0.248 | -0.074 |
| predicted_R | 0.271 | 0.001 |
| predicted_RBI | 0.366 | 0.001 |
| predicted_SLG | 0.250 | -0.093 |
| predicted_SO | 0.675 | 0.003 |
AB rounded to 3 (raw=3.33), rates preserved: AVG=0.177 HR/AB=0.009
| 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.151 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 3.000 | -0.334 |
| predicted_AVG | 0.333 | 0.156 |
| predicted_BB | 0.000 | -0.315 |
| predicted_H | 1.000 | 0.409 |
| predicted_HR | 0.000 | -0.030 |
| predicted_OBP | 0.333 | 0.085 |
| predicted_R | 0.000 | -0.271 |
| predicted_RBI | 0.000 | -0.366 |
| predicted_SLG | 0.333 | 0.083 |
| predicted_SO | 1.000 | 0.325 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 12.000 | 5.000 | 0.000 | 0.000 | 0.000 | 3.000 | 1.000 | 0.000 | 4.000 | 0.4167 | 0.4167 | 0.4167 | 0.4167 | 0.0000 | 0.2500 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 10 | - | 24.000 | 7.000 | 1.000 | 0.000 | 0.000 | 5.000 | 3.000 | 4.000 | 6.000 | 0.2917 | 0.4138 | 0.3333 | 0.2917 | 0.0000 | 0.2083 | 0.1667 | 0.2500 |
| season | 0.60 | 18 | - | 100.000 | 20.000 | 5.000 | 0.000 | 0.000 | 11.000 | 7.000 | 10.000 | 18.000 | 0.2000 | 0.3043 | 0.2500 | 0.2000 | 0.0000 | 0.1100 | 0.1000 | 0.1800 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1700 |
| predicted_3B | 0.0030 |
| predicted_AB | 4.2050 |
| predicted_AVG | 0.2593 |
| predicted_BB | 0.3780 |
| predicted_H | 1.0910 |
| predicted_HBP | 0.1360 |
| predicted_HR | 0.0300 |
| predicted_OBP | 0.3414 |
| predicted_R | 0.3910 |
| predicted_RBI | 0.6400 |
| predicted_SLG | 0.3225 |
| predicted_SO | 0.9410 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1390 | 0.1700 | 0.1511 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 2.7780 | 4.2050 | 3.3338 | model_form_blend |
| predicted_AVG | 0.2720 | 0.2593 | 0.2671 | model_form_blend |
| predicted_BB | 0.2780 | 0.3780 | 0.3169 | model_form_blend |
| predicted_H | 0.2700 | 1.0910 | 0.5898 | model_form_blend |
| predicted_HBP | - | 0.1360 | 0.1360 | form_only |
| predicted_HR | 0.0300 | 0.0300 | 0.0300 | model_form_blend |
| predicted_OBP | 0.3110 | 0.3414 | 0.3228 | model_form_blend |
| predicted_R | 0.1940 | 0.3910 | 0.2707 | model_form_blend |
| predicted_RBI | 0.1900 | 0.6400 | 0.3653 | model_form_blend |
| predicted_SLG | 0.3560 | 0.3225 | 0.3430 | model_form_blend |
| predicted_SO | 0.5000 | 0.9410 | 0.6718 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 37 |
| Season rows before report date | 37 |
| 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 | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.2 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| 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 | 20260610_CHC@COL |
| game_type | ph |
| mlbID | 694514 |
| note | Singled for Stevens in the 9th. |
| playerID | 694514 |
| playerName | Sterlin Thompson |
| pos | OF |
| started | False |
| startingPosition | PH |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.9 |
| sl_bb_percent | 9.4 |
| sl_woba | 0.294 |
| sl_xwoba | 0.3 |
| sl_xba | 0.233 |
| sl_xslg | 0.314 |
| sl_sweet_spot_percent | 30.6 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 41.7 |
| sl_exit_velocity_avg | 87.3 |
| sl_launch_angle_avg | 7.0 |
| sl_whiff_percent | 23.1 |
| 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.000 | 1.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_3B | 0.500 | 0.000 | 0.000 | Hitting_3B | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_AB | 3.610 | 4.000 | 4.000 | Hitting_AB | 3.500 | 4.000 | 0.500 | 0.000 |
| predicted_AVG | 0.230 | 0.500 | 0.250 | Hitting_AVG | 0.143 | 0.000 | 0.357 | 0.500 |
| predicted_BB | 0.500 | 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.830 | 2.000 | 1.000 | Hitting_H | 0.500 | 0.000 | 1.500 | 2.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.303 | 0.600 | 0.400 | Hitting_OBP | 0.250 | 0.000 | 0.350 | 0.600 |
| predicted_R | 0.000 | 1.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_RBI | 0.400 | 2.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 2.000 | 2.000 |
| predicted_SLG | 0.398 | 0.750 | 0.250 | Hitting_SLG | 0.429 | 0.000 | 0.321 | 0.750 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Hitting_SO | 1.000 | 1.000 | 0.000 | 0.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 | 8 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_RBI: 0.4000 -> 2.0000 (boost 1.6000, better) |
| Biggest Deboost | predicted_3B: 0.5000 -> 0.0000 (deboost -0.5000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 2 | 1 | 1 | 1 | 1 | predicted_R: 0.0000 -> 0.0846 (boost 0.0846, better) | predicted_3B: 0.5000 -> 0.4181 (deboost -0.0819, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.4013 -> 0.5501 (boost 0.1488, 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 | 3 | 3 | predicted_BB: 0.4637 -> 1.0000 (boost 0.5363, better) | predicted_3B: 0.4181 -> 0.0000 (deboost -0.4181, worse) | AB rounded to 4 (raw=3.65), rates preserved: AVG=0.230 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0847 -> 0.0000 (deboost -0.0847, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3168 -> 0.4000 (boost 0.0832, better) | predicted_SLG: 0.5501 -> 0.2500 (deboost -0.3001, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 4 | 0 | 4 | 0 | predicted_RBI: 0.0000 -> 2.0000 (boost 2.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.5501 (boost 0.3001, better) | predicted_OBP: 0.4000 -> 0.3168 (deboost -0.0832, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694249",
"player_name": "Cole Carrigg",
"position": "CF",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.5,
"predicted_AB": 3.61,
"predicted_AVG": 0.23,
"predicted_BB": 0.5,
"predicted_H": 0.83,
"predicted_HR": 0.1,
"predicted_OBP": 0.303,
"predicted_R": 0.0,
"predicted_RBI": 0.4,
"predicted_SLG": 0.398,
"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.032,
"predicted_3B": 0.4181,
"predicted_AB": 3.6494,
"predicted_AVG": 0.2295,
"predicted_BB": 0.466,
"predicted_H": 0.8372,
"predicted_HBP": 0.027,
"predicted_HR": 0.1004,
"predicted_OBP": 0.3024,
"predicted_R": 0.0846,
"predicted_RBI": 0.3985,
"predicted_SLG": 0.4013,
"predicted_SO": 0.9755
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.032,
"delta": 0.032,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.5,
"after": 0.4181,
"delta": -0.0819,
"percent_delta": -0.1638,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.61,
"after": 3.6494,
"delta": 0.0394,
"percent_delta": 0.0109,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2295,
"delta": -0.0005,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 0.466,
"delta": -0.034,
"percent_delta": -0.068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 0.8372,
"delta": 0.0072,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1004,
"delta": 0.0004,
"percent_delta": 0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.3024,
"delta": -0.0006,
"percent_delta": -0.002,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0846,
"delta": 0.0846,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.3985,
"delta": -0.0015,
"percent_delta": -0.0038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.4013,
"delta": 0.0033,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.9755,
"delta": -0.0245,
"percent_delta": -0.0245,
"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_R",
"before": 0.0,
"after": 0.0846,
"delta": 0.0846,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_3B",
"before": 0.5,
"after": 0.4181,
"delta": -0.0819,
"percent_delta": -0.1638,
"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.032,
"predicted_3B": 0.4181,
"predicted_AB": 3.6494,
"predicted_AVG": 0.23,
"predicted_BB": 0.4637,
"predicted_H": 0.8395,
"predicted_HBP": 0.027,
"predicted_HR": 0.1,
"predicted_OBP": 0.3168,
"predicted_R": 0.0847,
"predicted_RBI": 0.3992,
"predicted_SLG": 0.5501,
"predicted_SO": 0.9803
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.032,
"after": 0.032,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.4181,
"after": 0.4181,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6494,
"after": 3.6494,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2295,
"after": 0.23,
"delta": 0.0005,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.466,
"after": 0.4637,
"delta": -0.0023,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8372,
"after": 0.8395,
"delta": 0.0023,
"percent_delta": 0.0027,
"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.1004,
"after": 0.1,
"delta": -0.0004,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3024,
"after": 0.3168,
"delta": 0.0144,
"percent_delta": 0.0476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0846,
"after": 0.0847,
"delta": 0.0001,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3985,
"after": 0.3992,
"delta": 0.0007,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4013,
"after": 0.5501,
"delta": 0.1488,
"percent_delta": 0.3708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9755,
"after": 0.9803,
"delta": 0.0048,
"percent_delta": 0.0049,
"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.4013,
"after": 0.5501,
"delta": 0.1488,
"percent_delta": 0.3708,
"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.65), rates preserved: AVG=0.230 HR/AB=0.027",
"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.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.4181,
"after": 0.0,
"delta": -0.4181,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.6494,
"after": 4.0,
"delta": 0.3506,
"percent_delta": 0.0961,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4637,
"after": 1.0,
"delta": 0.5363,
"percent_delta": 1.1566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8395,
"after": 1.0,
"delta": 0.1605,
"percent_delta": 0.1912,
"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.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3992,
"after": 0.0,
"delta": -0.3992,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9803,
"after": 1.0,
"delta": 0.0197,
"percent_delta": 0.0201,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.4637,
"after": 1.0,
"delta": 0.5363,
"percent_delta": 1.1566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_3B",
"before": 0.4181,
"after": 0.0,
"delta": -0.4181,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0847,
"after": 0.0,
"delta": -0.0847,
"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.0847,
"after": 0.0,
"delta": -0.0847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.25,
"delta": 0.02,
"percent_delta": 0.087,
"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.3168,
"after": 0.4,
"delta": 0.0832,
"percent_delta": 0.2626,
"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.5501,
"after": 0.25,
"delta": -0.3001,
"percent_delta": -0.5455,
"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.3168,
"after": 0.4,
"delta": 0.0832,
"percent_delta": 0.2626,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5501,
"after": 0.25,
"delta": -0.3001,
"percent_delta": -0.5455,
"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": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 4,
"deboosted_metrics": 0,
"better_metrics": 4,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.23,
"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.3168,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5501,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.23,
"delta": -0.02,
"percent_delta": -0.0799,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3168,
"delta": -0.0832,
"percent_delta": -0.2079,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.5501,
"delta": 0.3001,
"percent_delta": 1.2005,
"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.5501,
"delta": 0.3001,
"percent_delta": 1.2005,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3168,
"delta": -0.0832,
"percent_delta": -0.2079,
"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.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.61,
"after": 4.0,
"delta": 0.39,
"percent_delta": 0.108,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.23,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.83,
"after": 2.0,
"delta": 1.17,
"percent_delta": 1.4096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.303,
"after": 0.3168,
"delta": 0.0138,
"percent_delta": 0.0455,
"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.4,
"after": 2.0,
"delta": 1.6,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.5501,
"delta": 0.1521,
"percent_delta": 0.3822,
"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": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 8,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.4,
"after": 2.0,
"delta": 1.6,
"percent_delta": 4.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_3B",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | - |
| predicted_3B | 0.500 | - |
| predicted_AB | 3.610 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.500 | - |
| predicted_H | 0.830 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.303 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.398 | - |
| predicted_SO | 1.000 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.032 | 0.032 |
| predicted_3B | 0.418 | -0.082 |
| predicted_AB | 3.649 | 0.039 |
| predicted_AVG | 0.230 | -0.001 |
| predicted_BB | 0.466 | -0.034 |
| predicted_H | 0.837 | 0.007 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.100 | 0.000 |
| predicted_OBP | 0.302 | -0.001 |
| predicted_R | 0.085 | 0.085 |
| predicted_RBI | 0.399 | -0.002 |
| predicted_SLG | 0.401 | 0.003 |
| predicted_SO | 0.976 | -0.024 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.032 | 0.000 |
| predicted_3B | 0.418 | 0.000 |
| predicted_AB | 3.649 | 0.000 |
| predicted_AVG | 0.230 | 0.001 |
| predicted_BB | 0.464 | -0.002 |
| predicted_H | 0.840 | 0.002 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.100 | -0.000 |
| predicted_OBP | 0.317 | 0.014 |
| predicted_R | 0.085 | 0.000 |
| predicted_RBI | 0.399 | 0.001 |
| predicted_SLG | 0.550 | 0.149 |
| predicted_SO | 0.980 | 0.005 |
AB rounded to 4 (raw=3.65), rates preserved: AVG=0.230 HR/AB=0.027
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.032 |
| predicted_3B | 0.000 | -0.418 |
| predicted_AB | 4.000 | 0.351 |
| predicted_AVG | 0.250 | 0.020 |
| predicted_BB | 1.000 | 0.536 |
| predicted_H | 1.000 | 0.160 |
| predicted_HR | 0.000 | -0.100 |
| predicted_OBP | 0.400 | 0.083 |
| predicted_R | 0.000 | -0.085 |
| predicted_RBI | 0.000 | -0.399 |
| predicted_SLG | 0.250 | -0.300 |
| predicted_SO | 1.000 | 0.020 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 1.000 |
| RBI | 2.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 | 2 | - | 7.000 | 1.000 | 0.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.1429 | 0.2500 | 0.4286 | 0.1429 | 0.0000 | 0.0000 | 0.1429 | 0.2857 |
| last_10 | 0.20 | 2 | - | 7.000 | 1.000 | 0.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.1429 | 0.2500 | 0.4286 | 0.1429 | 0.0000 | 0.0000 | 0.1429 | 0.2857 |
| season | 0.60 | 2 | - | 7.000 | 1.000 | 0.000 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 0.1429 | 0.2500 | 0.4286 | 0.1429 | 0.0000 | 0.0000 | 0.1429 | 0.2857 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1460 |
| predicted_3B | 0.1260 |
| predicted_AB | 3.7900 |
| predicted_AVG | 0.2277 |
| predicted_BB | 0.3450 |
| predicted_H | 0.8630 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.1020 |
| predicted_OBP | 0.3001 |
| predicted_R | 0.3860 |
| predicted_RBI | 0.3930 |
| predicted_SLG | 0.4130 |
| predicted_SO | 0.8880 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1460 | 0.0320 | model_form_blend |
| predicted_3B | 0.5000 | 0.1260 | 0.4181 | model_form_blend |
| predicted_AB | 3.6100 | 3.7900 | 3.6494 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2277 | 0.2295 | model_form_blend |
| predicted_BB | 0.5000 | 0.3450 | 0.4660 | model_form_blend |
| predicted_H | 0.8300 | 0.8630 | 0.8372 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.1000 | 0.1020 | 0.1004 | model_form_blend |
| predicted_OBP | 0.3030 | 0.3001 | 0.3024 | model_form_blend |
| predicted_R | 0.0000 | 0.3860 | 0.0846 | model_form_blend |
| predicted_RBI | 0.4000 | 0.3930 | 0.3985 | model_form_blend |
| predicted_SLG | 0.3980 | 0.4130 | 0.4013 | model_form_blend |
| predicted_SO | 1.0000 | 0.8880 | 0.9755 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 2 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.143 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 20260610_CHC@COL |
| game_type | full |
| mlbID | 694249 |
| playerID | 694249 |
| playerName | Cole Carrigg |
| pos | OF |
| started | True |
| startingPosition | CF |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.289 |
| sl_xwoba | 0.172 |
| sl_xba | 0.088 |
| sl_xslg | 0.136 |
| sl_sweet_spot_percent | 20.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 20.0 |
| sl_exit_velocity_avg | 76.3 |
| sl_launch_angle_avg | 40.0 |
| sl_whiff_percent | 17.6 |
| sl_swing_percent | 56.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.255 | 0.000 | 0.000 | Hitting_2B | 0.252 | 0.000 | -0.252 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.792 | 4.000 | 6.000 | Hitting_AB | 3.757 | 4.000 | 0.243 | 0.000 |
| predicted_AVG | 0.234 | 0.000 | 0.167 | Hitting_AVG | 0.220 | 0.500 | -0.220 | -0.500 |
| predicted_BB | 0.226 | 0.000 | 0.000 | Hitting_BB | 0.224 | 0.000 | -0.224 | 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.827 | 2.000 | -0.827 | -2.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.051 | 0.000 | -0.051 | 0.000 |
| predicted_OBP | 0.283 | 0.000 | 0.167 | Hitting_OBP | 0.266 | 0.500 | -0.266 | -0.500 |
| predicted_R | 0.311 | 0.000 | 1.000 | Hitting_R | 0.313 | 0.000 | -0.313 | 0.000 |
| predicted_RBI | 0.400 | 0.000 | 1.000 | Hitting_RBI | 0.393 | 0.000 | -0.393 | 0.000 |
| predicted_SLG | 0.400 | 0.000 | 0.167 | Hitting_SLG | 0.328 | 0.500 | -0.328 | -0.500 |
| predicted_SO | 1.019 | 1.000 | 2.000 | Hitting_SO | 1.009 | 2.000 | -0.009 | -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 | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.7920 -> 4.0000 (boost 0.2080, 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 | 8 | 1 | 7 | 2 | predicted_AB: 3.7920 -> 6.1798 (boost 2.3878, better) | predicted_OBP: 0.2830 -> 0.2766 (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 | 3 | 0 | 3 | 0 | 3 | - | predicted_OBP: 0.2766 -> 0.2614 (deboost -0.0152, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_RBI: 0.7010 -> 1.0000 (boost 0.2990, better) | predicted_2B: 0.4240 -> 0.0000 (deboost -0.4240, worse) | AB rounded to 6 (raw=6.18), rates preserved: AVG=0.219 HR/AB=0.032 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6180 -> 1.0000 (boost 0.3820, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3849 -> 0.1670 (deboost -0.2179, 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 -> 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.3849 (boost 0.2179, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "678662",
"player_name": "Ezequiel Tovar",
"position": "SS",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.0,
"predicted_AB": 3.792,
"predicted_AVG": 0.234,
"predicted_BB": 0.226,
"predicted_H": 0.77,
"predicted_HR": 0.12,
"predicted_OBP": 0.283,
"predicted_R": 0.311,
"predicted_RBI": 0.4,
"predicted_SLG": 0.4,
"predicted_SO": 1.019
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.424,
"predicted_3B": 0.0004,
"predicted_AB": 6.1798,
"predicted_AVG": 0.2308,
"predicted_BB": 0.355,
"predicted_H": 1.3511,
"predicted_HBP": 0.043,
"predicted_HR": 0.2006,
"predicted_OBP": 0.2766,
"predicted_R": 0.617,
"predicted_RBI": 0.6998,
"predicted_SLG": 0.3978,
"predicted_SO": 1.7546
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.255,
"after": 0.424,
"delta": 0.169,
"percent_delta": 0.6627,
"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.792,
"after": 6.1798,
"delta": 2.3878,
"percent_delta": 0.6297,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2308,
"delta": -0.0032,
"percent_delta": -0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.226,
"after": 0.355,
"delta": 0.129,
"percent_delta": 0.5708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.3511,
"delta": 0.5811,
"percent_delta": 0.7547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.2006,
"delta": 0.0806,
"percent_delta": 0.6717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.283,
"after": 0.2766,
"delta": -0.0064,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.311,
"after": 0.617,
"delta": 0.306,
"percent_delta": 0.9839,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.6998,
"delta": 0.2998,
"percent_delta": 0.7495,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.3978,
"delta": -0.0022,
"percent_delta": -0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.019,
"after": 1.7546,
"delta": 0.7356,
"percent_delta": 0.7219,
"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": 3.792,
"after": 6.1798,
"delta": 2.3878,
"percent_delta": 0.6297,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.283,
"after": 0.2766,
"delta": -0.0064,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 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.424,
"predicted_3B": 0.0004,
"predicted_AB": 6.1798,
"predicted_AVG": 0.2192,
"predicted_BB": 0.3533,
"predicted_H": 1.3547,
"predicted_HBP": 0.043,
"predicted_HR": 0.1998,
"predicted_OBP": 0.2614,
"predicted_R": 0.618,
"predicted_RBI": 0.701,
"predicted_SLG": 0.3849,
"predicted_SO": 1.7632
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.424,
"after": 0.424,
"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.1798,
"after": 6.1798,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2308,
"after": 0.2192,
"delta": -0.0116,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.355,
"after": 0.3533,
"delta": -0.0017,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3511,
"after": 1.3547,
"delta": 0.0036,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.043,
"after": 0.043,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2006,
"after": 0.1998,
"delta": -0.0008,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2766,
"after": 0.2614,
"delta": -0.0152,
"percent_delta": -0.055,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.617,
"after": 0.618,
"delta": 0.001,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6998,
"after": 0.701,
"delta": 0.0012,
"percent_delta": 0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3978,
"after": 0.3849,
"delta": -0.0129,
"percent_delta": -0.0324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7546,
"after": 1.7632,
"delta": 0.0086,
"percent_delta": 0.0049,
"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.2766,
"after": 0.2614,
"delta": -0.0152,
"percent_delta": -0.055,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.18), rates preserved: AVG=0.219 HR/AB=0.032",
"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.424,
"after": 0.0,
"delta": -0.424,
"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.1798,
"after": 6.0,
"delta": -0.1798,
"percent_delta": -0.0291,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3533,
"after": 0.0,
"delta": -0.3533,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3547,
"after": 1.0,
"delta": -0.3547,
"percent_delta": -0.2618,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.043,
"after": 0.0,
"delta": -0.043,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1998,
"after": 0.0,
"delta": -0.1998,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.701,
"after": 1.0,
"delta": 0.299,
"percent_delta": 0.4265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7632,
"after": 2.0,
"delta": 0.2368,
"percent_delta": 0.1343,
"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.701,
"after": 1.0,
"delta": 0.299,
"percent_delta": 0.4265,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.424,
"after": 0.0,
"delta": -0.424,
"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.618,
"after": 1.0,
"delta": 0.382,
"percent_delta": 0.6181,
"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.618,
"after": 1.0,
"delta": 0.382,
"percent_delta": 0.6181,
"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.2192,
"after": 0.167,
"delta": -0.0522,
"percent_delta": -0.2381,
"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.2614,
"after": 0.167,
"delta": -0.0944,
"percent_delta": -0.3611,
"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.3849,
"after": 0.167,
"delta": -0.2179,
"percent_delta": -0.5661,
"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.3849,
"after": 0.167,
"delta": -0.2179,
"percent_delta": -0.5661,
"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": 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": 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.2192,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2614,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3849,
"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.167,
"after": 0.2192,
"delta": 0.0522,
"percent_delta": 0.3127,
"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.2614,
"delta": 0.0944,
"percent_delta": 0.5655,
"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.3849,
"delta": 0.2179,
"percent_delta": 1.305,
"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.3849,
"delta": 0.2179,
"percent_delta": 1.305,
"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.255,
"after": 0.0,
"delta": -0.255,
"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.792,
"after": 4.0,
"delta": 0.208,
"percent_delta": 0.0549,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2192,
"delta": -0.0148,
"percent_delta": -0.0632,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.226,
"after": 0.0,
"delta": -0.226,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"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.283,
"after": 0.2614,
"delta": -0.0216,
"percent_delta": -0.0763,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.311,
"after": 0.0,
"delta": -0.311,
"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.4,
"after": 0.3849,
"delta": -0.0151,
"percent_delta": -0.0378,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.019,
"after": 1.0,
"delta": -0.019,
"percent_delta": -0.0186,
"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_AB",
"before": 3.792,
"after": 4.0,
"delta": 0.208,
"percent_delta": 0.0549,
"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.255 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.792 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.226 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.283 | - |
| predicted_R | 0.311 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.400 | - |
| predicted_SO | 1.019 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.424 | 0.169 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.180 | 2.388 |
| predicted_AVG | 0.231 | -0.003 |
| predicted_BB | 0.355 | 0.129 |
| predicted_H | 1.351 | 0.581 |
| predicted_HBP | 0.043 | - |
| predicted_HR | 0.201 | 0.081 |
| predicted_OBP | 0.277 | -0.006 |
| predicted_R | 0.617 | 0.306 |
| predicted_RBI | 0.700 | 0.300 |
| predicted_SLG | 0.398 | -0.002 |
| predicted_SO | 1.755 | 0.736 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.424 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.180 | 0.000 |
| predicted_AVG | 0.219 | -0.012 |
| predicted_BB | 0.353 | -0.002 |
| predicted_H | 1.355 | 0.004 |
| predicted_HBP | 0.043 | 0.000 |
| predicted_HR | 0.200 | -0.001 |
| predicted_OBP | 0.261 | -0.015 |
| predicted_R | 0.618 | 0.001 |
| predicted_RBI | 0.701 | 0.001 |
| predicted_SLG | 0.385 | -0.013 |
| predicted_SO | 1.763 | 0.009 |
AB rounded to 6 (raw=6.18), rates preserved: AVG=0.219 HR/AB=0.032
| 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.424 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.180 |
| predicted_AVG | 0.167 | -0.052 |
| predicted_BB | 0.000 | -0.353 |
| predicted_H | 1.000 | -0.355 |
| predicted_HR | 0.000 | -0.200 |
| predicted_OBP | 0.167 | -0.094 |
| predicted_R | 1.000 | 0.382 |
| predicted_RBI | 1.000 | 0.299 |
| predicted_SLG | 0.167 | -0.218 |
| predicted_SO | 2.000 | 0.237 |
Attached 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 | 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 | 2.000 | 0.000 | 1.000 | 2.000 | 3.000 | 1.000 | 6.000 | 0.2500 | 0.2857 | 0.5000 | 0.2500 | 0.0500 | 0.1000 | 0.0500 | 0.3000 |
| last_10 | 0.20 | 10 | - | 41.000 | 9.000 | 2.000 | 0.000 | 3.000 | 7.000 | 6.000 | 2.000 | 15.000 | 0.2195 | 0.2500 | 0.4878 | 0.2195 | 0.0732 | 0.1707 | 0.0488 | 0.3659 |
| season | 0.60 | 62 | - | 804.000 | 177.000 | 54.000 | 0.000 | 11.000 | 84.000 | 66.000 | 48.000 | 216.000 | 0.2201 | 0.2664 | 0.3284 | 0.2202 | 0.0137 | 0.1045 | 0.0597 | 0.2687 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6390 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.2160 |
| predicted_AVG | 0.2268 |
| predicted_BB | 0.5190 |
| predicted_H | 2.0900 |
| predicted_HBP | 0.0430 |
| predicted_HR | 0.3030 |
| predicted_OBP | 0.2685 |
| predicted_R | 1.0060 |
| predicted_RBI | 1.0810 |
| predicted_SLG | 0.3951 |
| predicted_SO | 2.6900 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2550 | 0.6390 | 0.4240 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7920 | 9.2160 | 6.1798 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2268 | 0.2308 | model_form_blend |
| predicted_BB | 0.2260 | 0.5190 | 0.3550 | model_form_blend |
| predicted_H | 0.7700 | 2.0900 | 1.3511 | model_form_blend |
| predicted_HBP | - | 0.0430 | 0.0430 | form_only |
| predicted_HR | 0.1200 | 0.3030 | 0.2006 | model_form_blend |
| predicted_OBP | 0.2830 | 0.2685 | 0.2766 | model_form_blend |
| predicted_R | 0.3110 | 1.0060 | 0.6170 | model_form_blend |
| predicted_RBI | 0.4000 | 1.0810 | 0.6998 | model_form_blend |
| predicted_SLG | 0.4000 | 0.3951 | 0.3978 | model_form_blend |
| predicted_SO | 1.0190 | 2.6900 | 1.7546 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 214 |
| Season rows before report date | 214 |
| 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 | 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 | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| 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 | SS |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 678662 |
| playerID | 678662 |
| playerName | Ezequiel Tovar |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.1 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.267 |
| sl_xwoba | 0.302 |
| sl_xba | 0.238 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 8.5 |
| sl_hard_hit_percent | 36.0 |
| sl_exit_velocity_avg | 88.0 |
| sl_launch_angle_avg | 15.6 |
| sl_whiff_percent | 30.1 |
| sl_swing_percent | 61.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.267 | 0.000 | 0.000 | Hitting_2B | 0.256 | 0.000 | -0.256 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.302 | 4.000 | 5.000 | Hitting_AB | 3.156 | 1.000 | 0.844 | 3.000 |
| predicted_AVG | 0.236 | 0.250 | 0.200 | Hitting_AVG | 0.204 | 1.000 | 0.046 | -0.750 |
| predicted_BB | 0.163 | 0.000 | 0.000 | Hitting_BB | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.220 | 1.000 | 1.000 | Hitting_H | 0.644 | 1.000 | 0.356 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.022 | 0.000 | -0.022 | 0.000 |
| predicted_OBP | 0.242 | 0.250 | 0.200 | Hitting_OBP | 0.251 | 1.000 | -0.001 | -0.750 |
| predicted_R | 0.174 | 1.000 | 0.000 | Hitting_R | 0.167 | 0.000 | 0.833 | 1.000 |
| predicted_RBI | 0.120 | 0.000 | 0.000 | Hitting_RBI | 0.356 | 0.000 | -0.356 | 0.000 |
| predicted_SLG | 0.337 | 0.250 | 0.200 | Hitting_SLG | 0.306 | 1.000 | -0.056 | -0.750 |
| predicted_SO | 0.791 | 1.000 | 1.000 | Hitting_SO | 0.756 | 0.000 | 0.244 | 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_R: 0.1740 -> 1.0000 (boost 0.8260, better) |
| Biggest Deboost | predicted_2B: 0.2670 -> 0.0000 (deboost -0.2670, 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.3020 -> 4.9170 (boost 1.6150, 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.2331 -> 0.1668 (deboost -0.0663, 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: 0.8203 -> 1.0000 (boost 0.1797, better) | predicted_RBI: 0.3376 -> 0.0000 (deboost -0.3376, worse) | AB rounded to 5 (raw=4.92), rates preserved: AVG=0.167 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.2558 -> 0.0000 (deboost -0.2558, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.1668 -> 0.2000 (boost 0.0332, better) | predicted_SLG: 0.2693 -> 0.2000 (deboost -0.0693, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_R: 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.2693 (boost 0.0693, better) | predicted_AVG: 0.2000 -> 0.1668 (deboost -0.0332, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664954",
"player_name": "Brett Sullivan",
"position": "C",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.267,
"predicted_3B": 0.0,
"predicted_AB": 3.302,
"predicted_AVG": 0.236,
"predicted_BB": 0.163,
"predicted_H": 0.22,
"predicted_HR": 0.03,
"predicted_OBP": 0.242,
"predicted_R": 0.174,
"predicted_RBI": 0.12,
"predicted_SLG": 0.337,
"predicted_SO": 0.791
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3187,
"predicted_3B": 0.0008,
"predicted_AB": 4.917,
"predicted_AVG": 0.2331,
"predicted_BB": 0.2071,
"predicted_H": 0.8181,
"predicted_HBP": 0.068,
"predicted_HR": 0.0614,
"predicted_OBP": 0.2506,
"predicted_R": 0.2554,
"predicted_RBI": 0.337,
"predicted_SLG": 0.3334,
"predicted_SO": 1.1098
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.267,
"after": 0.3187,
"delta": 0.0517,
"percent_delta": 0.1936,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0008,
"delta": 0.0008,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.302,
"after": 4.917,
"delta": 1.615,
"percent_delta": 0.4891,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2331,
"delta": -0.0029,
"percent_delta": -0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.163,
"after": 0.2071,
"delta": 0.0441,
"percent_delta": 0.2706,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.22,
"after": 0.8181,
"delta": 0.5981,
"percent_delta": 2.7186,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0614,
"delta": 0.0314,
"percent_delta": 1.0467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.242,
"after": 0.2506,
"delta": 0.0086,
"percent_delta": 0.0355,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.174,
"after": 0.2554,
"delta": 0.0814,
"percent_delta": 0.4678,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.12,
"after": 0.337,
"delta": 0.217,
"percent_delta": 1.8083,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.337,
"after": 0.3334,
"delta": -0.0036,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.791,
"after": 1.1098,
"delta": 0.3188,
"percent_delta": 0.403,
"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.302,
"after": 4.917,
"delta": 1.615,
"percent_delta": 0.4891,
"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": 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.3187,
"predicted_3B": 0.0008,
"predicted_AB": 4.917,
"predicted_AVG": 0.1668,
"predicted_BB": 0.2061,
"predicted_H": 0.8203,
"predicted_HBP": 0.068,
"predicted_HR": 0.0611,
"predicted_OBP": 0.2003,
"predicted_R": 0.2558,
"predicted_RBI": 0.3376,
"predicted_SLG": 0.2693,
"predicted_SO": 1.1152
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3187,
"after": 0.3187,
"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.917,
"after": 4.917,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2331,
"after": 0.1668,
"delta": -0.0663,
"percent_delta": -0.2844,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2071,
"after": 0.2061,
"delta": -0.001,
"percent_delta": -0.0048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8181,
"after": 0.8203,
"delta": 0.0022,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.068,
"after": 0.068,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0614,
"after": 0.0611,
"delta": -0.0003,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2506,
"after": 0.2003,
"delta": -0.0503,
"percent_delta": -0.2007,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2554,
"after": 0.2558,
"delta": 0.0004,
"percent_delta": 0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.337,
"after": 0.3376,
"delta": 0.0006,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3334,
"after": 0.2693,
"delta": -0.0641,
"percent_delta": -0.1923,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1098,
"after": 1.1152,
"delta": 0.0054,
"percent_delta": 0.0049,
"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.2331,
"after": 0.1668,
"delta": -0.0663,
"percent_delta": -0.2844,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.92), rates preserved: AVG=0.167 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.3187,
"after": 0.0,
"delta": -0.3187,
"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.917,
"after": 5.0,
"delta": 0.083,
"percent_delta": 0.0169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2061,
"after": 0.0,
"delta": -0.2061,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8203,
"after": 1.0,
"delta": 0.1797,
"percent_delta": 0.2191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.068,
"after": 0.0,
"delta": -0.068,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0611,
"after": 0.0,
"delta": -0.0611,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3376,
"after": 0.0,
"delta": -0.3376,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1152,
"after": 1.0,
"delta": -0.1152,
"percent_delta": -0.1033,
"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": 0.8203,
"after": 1.0,
"delta": 0.1797,
"percent_delta": 0.2191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3376,
"after": 0.0,
"delta": -0.3376,
"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.2558,
"after": 0.0,
"delta": -0.2558,
"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.2558,
"after": 0.0,
"delta": -0.2558,
"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.1668,
"after": 0.2,
"delta": 0.0332,
"percent_delta": 0.199,
"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.2003,
"after": 0.2,
"delta": -0.0003,
"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_SLG",
"before": 0.2693,
"after": 0.2,
"delta": -0.0693,
"percent_delta": -0.2573,
"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.1668,
"after": 0.2,
"delta": 0.0332,
"percent_delta": 0.199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2693,
"after": 0.2,
"delta": -0.0693,
"percent_delta": -0.2573,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"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.1668,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2003,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2693,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.1668,
"delta": -0.0332,
"percent_delta": -0.1658,
"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.2,
"after": 0.2003,
"delta": 0.0003,
"percent_delta": 0.0017,
"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_SLG",
"before": 0.2,
"after": 0.2693,
"delta": 0.0693,
"percent_delta": 0.3464,
"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.2,
"after": 0.2693,
"delta": 0.0693,
"percent_delta": 0.3464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1668,
"delta": -0.0332,
"percent_delta": -0.1658,
"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.267,
"after": 0.0,
"delta": -0.267,
"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.302,
"after": 4.0,
"delta": 0.698,
"percent_delta": 0.2114,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.1668,
"delta": -0.0692,
"percent_delta": -0.2932,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.163,
"after": 0.0,
"delta": -0.163,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.22,
"after": 1.0,
"delta": 0.78,
"percent_delta": 3.5455,
"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.242,
"after": 0.2003,
"delta": -0.0417,
"percent_delta": -0.1723,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.174,
"after": 1.0,
"delta": 0.826,
"percent_delta": 4.7471,
"direction": "boost",
"projection_effect": "better",
"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.337,
"after": 0.2693,
"delta": -0.0677,
"percent_delta": -0.2009,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.791,
"after": 1.0,
"delta": 0.209,
"percent_delta": 0.2642,
"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_R",
"before": 0.174,
"after": 1.0,
"delta": 0.826,
"percent_delta": 4.7471,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.267,
"after": 0.0,
"delta": -0.267,
"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.267 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.302 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.163 | - |
| predicted_H | 0.220 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.242 | - |
| predicted_R | 0.174 | - |
| predicted_RBI | 0.120 | - |
| predicted_SLG | 0.337 | - |
| predicted_SO | 0.791 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.319 | 0.052 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.917 | 1.615 |
| predicted_AVG | 0.233 | -0.003 |
| predicted_BB | 0.207 | 0.044 |
| predicted_H | 0.818 | 0.598 |
| predicted_HBP | 0.068 | - |
| predicted_HR | 0.061 | 0.031 |
| predicted_OBP | 0.251 | 0.009 |
| predicted_R | 0.255 | 0.081 |
| predicted_RBI | 0.337 | 0.217 |
| predicted_SLG | 0.333 | -0.004 |
| predicted_SO | 1.110 | 0.319 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.319 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.917 | 0.000 |
| predicted_AVG | 0.167 | -0.066 |
| predicted_BB | 0.206 | -0.001 |
| predicted_H | 0.820 | 0.002 |
| predicted_HBP | 0.068 | 0.000 |
| predicted_HR | 0.061 | -0.000 |
| predicted_OBP | 0.200 | -0.050 |
| predicted_R | 0.256 | 0.000 |
| predicted_RBI | 0.338 | 0.001 |
| predicted_SLG | 0.269 | -0.064 |
| predicted_SO | 1.115 | 0.005 |
AB rounded to 5 (raw=4.92), rates preserved: AVG=0.167 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.319 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.083 |
| predicted_AVG | 0.200 | 0.033 |
| predicted_BB | 0.000 | -0.206 |
| predicted_H | 1.000 | 0.180 |
| predicted_HR | 0.000 | -0.061 |
| predicted_OBP | 0.200 | -0.000 |
| predicted_R | 0.000 | -0.256 |
| predicted_RBI | 0.000 | -0.338 |
| predicted_SLG | 0.200 | -0.069 |
| predicted_SO | 1.000 | -0.115 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 10.000 | 3.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.3000 | 0.3000 | 0.3000 | 0.3000 | 0.0000 | 0.0000 | 0.0000 | 0.2000 |
| last_10 | 0.20 | 7 | - | 23.000 | 5.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 0.000 | 2.000 | 0.2174 | 0.2174 | 0.4783 | 0.2174 | 0.0870 | 0.0870 | 0.0000 | 0.0870 |
| season | 0.60 | 29 | - | 284.000 | 58.000 | 23.000 | 0.000 | 2.000 | 32.000 | 15.000 | 14.000 | 68.000 | 0.2042 | 0.2484 | 0.3063 | 0.2042 | 0.0070 | 0.1127 | 0.0493 | 0.2394 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3890 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.1120 |
| predicted_AVG | 0.2292 |
| predicted_BB | 0.2670 |
| predicted_H | 1.6310 |
| predicted_HBP | 0.0680 |
| predicted_HR | 0.1040 |
| predicted_OBP | 0.2623 |
| predicted_R | 0.3660 |
| predicted_RBI | 0.6320 |
| predicted_SLG | 0.3284 |
| predicted_SO | 1.5430 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2670 | 0.3890 | 0.3187 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0008 | model_form_blend |
| predicted_AB | 3.3020 | 7.1120 | 4.9170 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2292 | 0.2331 | model_form_blend |
| predicted_BB | 0.1630 | 0.2670 | 0.2071 | model_form_blend |
| predicted_H | 0.2200 | 1.6310 | 0.8181 | model_form_blend |
| predicted_HBP | - | 0.0680 | 0.0680 | form_only |
| predicted_HR | 0.0300 | 0.1040 | 0.0614 | model_form_blend |
| predicted_OBP | 0.2420 | 0.2623 | 0.2506 | model_form_blend |
| predicted_R | 0.1740 | 0.3660 | 0.2554 | model_form_blend |
| predicted_RBI | 0.1200 | 0.6320 | 0.3370 | model_form_blend |
| predicted_SLG | 0.3370 | 0.3284 | 0.3334 | model_form_blend |
| predicted_SO | 0.7910 | 1.5430 | 1.1098 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 90 |
| Season rows before report date | 90 |
| Report year | 2026 |
| Profile rows used | 86 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.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 | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 |
| gameID | 20260610_CHC@COL |
| game_type | ph |
| mlbID | 664954 |
| note | Singled for Fulford in the 9th. |
| playerID | 664954 |
| playerName | Brett Sullivan |
| pos | C |
| started | False |
| startingPosition | PH |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.3 |
| sl_bb_percent | 4.3 |
| sl_woba | 0.248 |
| sl_xwoba | 0.243 |
| sl_xba | 0.208 |
| sl_xslg | 0.283 |
| sl_sweet_spot_percent | 26.1 |
| sl_barrel_batted_rate | 1.4 |
| sl_hard_hit_percent | 26.1 |
| sl_exit_velocity_avg | 86.0 |
| sl_launch_angle_avg | 18.7 |
| sl_whiff_percent | 20.2 |
| sl_swing_percent | 53.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.429 | 2.000 | 0.571 | 0.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 2.143 | 1.000 | 2.857 | 4.000 |
| predicted_H | 6.000 | 6.000 | 6.000 | Pitching_H | 3.857 | 1.000 | 2.143 | 5.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 4.471 | 6.000 | 0.529 | -1.000 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 3.286 | 4.000 | -0.286 | -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": "663372",
"player_name": "Ryan Feltner",
"position": "Starter",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 5.0,
"predicted_H": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 5.0,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 5.0,
"predicted_H": 6.0,
"predicted_HR": 2.0,
"predicted_IP": 5.0,
"predicted_R": 5.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"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 | 5.000 | - |
| predicted_H | 6.000 | - |
| predicted_HR | 2.000 | - |
| predicted_IP | 5.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 | 23.200 | 11.000 | 19.000 | 7.000 | 18.000 | 4.000 | 4.1831 | 1.0986 | 0.4648 | 0.8028 | 0.2958 | 0.7606 | 0.1690 |
| last_10 | 0.35 | 7 | 32.000 | 15.000 | 27.000 | 10.000 | 23.000 | 5.000 | 4.2188 | 1.1562 | 0.4688 | 0.8438 | 0.3125 | 0.7188 | 0.1562 |
| season | 0.20 | 7 | 32.000 | 15.000 | 27.000 | 10.000 | 23.000 | 5.000 | 4.2188 | 1.1562 | 0.4688 | 0.8438 | 0.3125 | 0.7188 | 0.1562 |
| Metric | Value |
|---|---|
| predicted_BB | 1.5710 |
| predicted_ER | 2.2790 |
| predicted_ERA | 4.2677 |
| predicted_H | 4.2000 |
| predicted_HR | 0.7470 |
| predicted_IP | 4.2000 |
| predicted_SO | 3.9780 |
| predicted_WHIP | 1.2008 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.5710 | 1.7967 | model_form_blend |
| predicted_ER | 5.0000 | 2.2790 | 3.7104 | model_form_blend |
| predicted_ERA | - | 4.2677 | 4.2677 | form_only |
| predicted_H | 6.0000 | 4.2000 | 5.1469 | model_form_blend |
| predicted_HR | 2.0000 | 0.7470 | 1.4061 | model_form_blend |
| predicted_IP | 5.0000 | 4.2000 | 5.0000 | model_form_blend |
| predicted_SO | 3.0000 | 3.9780 | 3.4635 | model_form_blend |
| predicted_WHIP | - | 1.2008 | 1.2008 | 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 | 7 |
| Season rows before report date | 7 |
| Report year | 2026 |
| Profile rows used | 7 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.0 |
| H | 6 |
| R | 5 |
| ER | 5 |
| BB | 2 |
| SO | 3 |
| HR | 2 |
| BF | 23 |
| Pitches | 89 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 22 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.22 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 7 |
| Pitching_H | 1 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 81 |
| Pitching_R | 1 |
| Pitching_SO | 4 |
| Pitching_Strikes | 51 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_MIL@COL |
| game_type | full |
| mlbID | 663372 |
| playerID | 663372 |
| playerName | Ryan Feltner |
| pos | P |
| started | True |
| startingPosition | P |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-05 |
| sl_k_percent | 17.7 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.322 |
| sl_xwoba | 0.367 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 12.5 |
| sl_hard_hit_percent | 44.8 |
| sl_whiff_percent | 24.3 |
| sl_swing_percent | 48.9 |
| sl_avg_best_speed | 78.148689792 |
| sl_avg_hyper_speed | 94.560673854 |
| 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.550 | 0.000 | -0.550 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.450 | 1.000 | -0.450 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.400 | 2.000 | -1.400 | -2.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 1.695 | 1.000 | -0.595 | 0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.600 | 1.000 | -0.600 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "622608",
"player_name": "Antonio Senzatela",
"position": "Middle Reliever",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement 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": 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.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 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.100 | 5.000 | 11.000 | 3.000 | 6.000 | 2.000 | 7.1053 | 2.2105 | 0.7895 | 1.7368 | 0.4737 | 0.9474 | 0.3158 |
| last_10 | 0.35 | 10 | 16.000 | 6.000 | 16.000 | 5.000 | 12.000 | 3.000 | 3.3750 | 1.3125 | 0.3750 | 1.0000 | 0.3125 | 0.7500 | 0.1875 |
| season | 0.20 | 20 | 38.100 | 9.000 | 28.000 | 11.000 | 32.000 | 3.000 | 2.1130 | 1.0174 | 0.2348 | 0.7304 | 0.2870 | 0.8348 | 0.0783 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5550 |
| predicted_ER | 0.7640 |
| predicted_ERA | 4.6315 |
| predicted_H | 1.7080 |
| predicted_HR | 0.2830 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.3170 |
| predicted_WHIP | 1.5252 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5550 | 0.2675 | model_form_blend |
| predicted_ER | 0.0000 | 0.7640 | 0.3682 | model_form_blend |
| predicted_ERA | - | 4.6315 | 4.6315 | form_only |
| predicted_H | 0.0000 | 1.7080 | 0.8232 | model_form_blend |
| predicted_HR | 0.0000 | 0.2830 | 0.1364 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 1.0000 | 1.3170 | 1.1528 | model_form_blend |
| predicted_WHIP | - | 1.5252 | 1.5252 | 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.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 4 |
| Pitches | 23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.11 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W, BS |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 622608 |
| playerID | 622608 |
| playerName | Antonio Senzatela |
| pos | P |
| started | False |
| startingPosition | P |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.5 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.258 |
| sl_xwoba | 0.281 |
| sl_sweet_spot_percent | 32.4 |
| sl_barrel_batted_rate | 5.7 |
| sl_hard_hit_percent | 39.0 |
| sl_whiff_percent | 26.5 |
| sl_swing_percent | 48.8 |
| sl_avg_best_speed | 75.262460769 |
| sl_avg_hyper_speed | 93.938295673 |
| 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.643 | 0.000 | 0.357 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.750 | 0.000 | 0.250 | 1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 1.250 | 0.000 | 0.750 | 2.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.925 | 1.000 | 0.175 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.250 | 2.000 | -1.250 | -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": "675848",
"player_name": "Juan Mejia",
"position": "Middle Reliever",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement 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": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"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": 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.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": 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.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 | 1.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.000 | 6.000 | 7.000 | 3.000 | 6.000 | 0.000 | 13.5000 | 2.5000 | 1.5000 | 1.7500 | 0.7500 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 8.100 | 11.000 | 13.000 | 7.000 | 9.000 | 0.000 | 11.8800 | 2.4000 | 1.3200 | 1.5600 | 0.8400 | 1.0800 | 0.0000 |
| season | 0.20 | 28 | 30.100 | 21.000 | 35.000 | 18.000 | 35.000 | 2.000 | 6.2308 | 1.7473 | 0.6923 | 1.1539 | 0.5934 | 1.1539 | 0.0659 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4910 |
| predicted_ER | 0.7830 |
| predicted_ERA | 8.2472 |
| predicted_H | 1.1020 |
| predicted_HR | 0.0610 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9620 |
| predicted_WHIP | 1.8643 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4910 | 0.7670 | model_form_blend |
| predicted_ER | 1.0000 | 0.7830 | 0.9007 | model_form_blend |
| predicted_ERA | - | 8.2472 | 8.2472 | form_only |
| predicted_H | 2.0000 | 1.1020 | 1.5889 | model_form_blend |
| predicted_HR | 0.0000 | 0.0610 | 0.0279 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9620 | 0.4404 | model_form_blend |
| predicted_WHIP | - | 1.8643 | 1.8643 | 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 | 2 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 7 |
| Pitches | 23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 6.23 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_CHC@COL |
| game_type | full |
| mlbID | 675848 |
| playerID | 675848 |
| playerName | Juan Mejia |
| pos | P |
| started | False |
| startingPosition | P |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.5 |
| sl_bb_percent | 12.6 |
| sl_woba | 0.342 |
| sl_xwoba | 0.308 |
| sl_sweet_spot_percent | 33.0 |
| sl_barrel_batted_rate | 3.4 |
| sl_hard_hit_percent | 38.6 |
| sl_whiff_percent | 28.9 |
| sl_swing_percent | 48.9 |
| sl_avg_best_speed | 79.473939545 |
| sl_avg_hyper_speed | 94.688688046 |
| 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.733 | 1.000 | -0.733 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.267 | 0.000 | -0.267 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.800 | 0.000 | -0.800 | 0.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.907 | 1.000 | 0.193 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.933 | 0.000 | -0.933 | 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": "678020",
"player_name": "Seth Halvorsen",
"position": "Middle Reliever",
"team": "COL",
"interpretation": "Boost/deboost is numeric movement 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.200 | 0.000 | 3.000 | 3.000 | 4.000 | 0.000 | 0.0000 | 1.0588 | 0.0000 | 0.5294 | 0.5294 | 0.7059 | 0.0000 |
| last_10 | 0.35 | 10 | 10.000 | 3.000 | 9.000 | 7.000 | 10.000 | 0.000 | 2.7000 | 1.6000 | 0.3000 | 0.9000 | 0.7000 | 1.0000 | 0.0000 |
| season | 0.20 | 15 | 15.000 | 4.000 | 12.000 | 11.000 | 14.000 | 0.000 | 2.4000 | 1.5333 | 0.2667 | 0.8000 | 0.7333 | 0.9333 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4640 |
| predicted_ER | 0.3640 |
| predicted_ERA | 3.2769 |
| predicted_H | 0.8680 |
| predicted_HR | 0.0880 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9050 |
| predicted_WHIP | 1.3316 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4640 | 0.1785 | model_form_blend |
| predicted_ER | 0.0000 | 0.3640 | 0.1400 | model_form_blend |
| predicted_ERA | - | 3.2769 | 3.2769 | form_only |
| predicted_H | 0.0000 | 0.8680 | 0.3339 | model_form_blend |
| predicted_HR | 0.0000 | 0.0880 | 0.0339 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9050 | 0.3482 | model_form_blend |
| predicted_WHIP | - | 1.3316 | 1.3316 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 15 |
| Season rows before report date | 15 |
| Report year | 2026 |
| Profile rows used | 15 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.40 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 1 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260609_CHC@COL |
| game_type | full |
| mlbID | 678020 |
| playerID | 678020 |
| playerName | Seth Halvorsen |
| pos | P |
| started | False |
| startingPosition | P |
| team | COL |
| teamID | 9 |
| game_date | 2026-06-09 |
| sl_k_percent | 20.6 |
| sl_bb_percent | 16.2 |
| sl_woba | 0.298 |
| sl_xwoba | 0.362 |
| sl_sweet_spot_percent | 41.9 |
| sl_barrel_batted_rate | 2.3 |
| sl_hard_hit_percent | 41.9 |
| sl_whiff_percent | 23.6 |
| sl_swing_percent | 45.9 |
| sl_avg_best_speed | 80.996122273 |
| sl_avg_hyper_speed | 94.794909767 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | LAD 6 - 1 PIT | LAD | 0.660 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | LAD 6 - 1 PIT | LAD | - | 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.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 | 6.882 | 2.904 | - | 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 | 6 | 1 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 6 | 1 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 6 | 1 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.4690904207699195,
"base_low_score_probability": 0.41808415398388543,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.051006266786034093,
"confidence": 0.661,
"factors": {
"environmental": 1.02,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.122
},
"prediction": "normal_scoring",
"expected_total_runs": 7,
"pre_simulation_expected_total_runs": 9.6,
"low_score_model_expected_total_runs": 9.6,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 174,
"near_bucket_sample_size": 0,
"medium_bucket_sample_size": 0,
"wide_bucket_sample_size": 0,
"global_sample_size": 174,
"bucket_scope": "global_fallback",
"sparse_bucket": false,
"empirical_hit_rate": 0.5862,
"bayesian_hit_rate": 0.5781,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.9062,
"confidence_cap": 0.78,
"raw_pick_probability": 0.8613,
"calibrated_pick_probability": 0.6722,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "PIT",
"games": 68,
"wins": 35,
"losses": 33,
"win_pct": 0.5147058823529411,
"runs_scored": 345,
"runs_allowed": 323,
"run_differential": 22,
"run_differential_per_game": 0.3235294117647059,
"available": true
},
"away": {
"team": "LAD",
"games": 68,
"wins": 43,
"losses": 25,
"win_pct": 0.6323529411764706,
"runs_scored": 365,
"runs_allowed": 224,
"run_differential": 141,
"run_differential_per_game": 2.073529411764706,
"available": true
},
"run_differential_edge_per_game": -1.75,
"win_pct_edge": -0.1176,
"quality_edge": -1.9265,
"margin_adjustment": -0.8091,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 5.699,
"home_runs": 0.467,
"home_win_probability": 0.08
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "LAD",
"guardrail_predicted_team": "LAD",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "LAD",
"output_opponent_team": "PIT",
"final_score_winner": "LAD",
"pre_simulation_winner": "LAD",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "LAD 6 - 1 PIT",
"winner": "LAD"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "LAD 6 - 1 PIT",
"winner": "LAD"
},
"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": "PIT",
"games": 68,
"wins": 35,
"losses": 33,
"win_pct": 0.5147058823529411,
"runs_scored": 345,
"runs_allowed": 323,
"run_differential": 22,
"run_differential_per_game": 0.3235294117647059,
"available": true
},
"away": {
"team": "LAD",
"games": 68,
"wins": 43,
"losses": 25,
"win_pct": 0.6323529411764706,
"runs_scored": 365,
"runs_allowed": 224,
"run_differential": 141,
"run_differential_per_game": 2.073529411764706,
"available": true
}
}
}{
"applied": true,
"raw_margin": -5.2321,
"final_margin": -4.25,
"margin_cap": 4.25,
"season_quality_edge": 1.9265,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 5.208,
"home_runs": 0.958
}
}{
"applied": true,
"raw_confidence": 0.672238,
"final_confidence": 0.66,
"confidence_cap": 0.66,
"score_gap": 4.25,
"calibration_sample_size": 174,
"calibration_empirical_hit_rate": 0.5862,
"calibration_bayesian_hit_rate": 0.5781,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.9265,
"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": 6,
"home_runs": 1,
"score_text": "LAD 6 - 1 PIT",
"winner": "LAD"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "LAD 6 - 1 PIT",
"winner": "LAD"
},
"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": 6,
"home_runs": 1,
"confidence": 0.66,
"home_win_probability": 0.33999999999999997,
"away_win_probability": 0.66,
"predicted_score_text": "LAD 6 - 1 PIT",
"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": "LAD",
"original_runs": 5,
"run_delta": 0.7031,
"adjusted_runs": 6,
"lineup": {
"players_used": 9,
"total_weight": 54.0,
"quality": 0.5541643119684889,
"contact": 0.7096423396593436,
"power": 0.8099128782694642,
"discipline": 0.1731957680347485,
"xwoba": 0.3583518518518518,
"recent_xwoba": 0.3583518518518518,
"barrel": 11.166666666666666,
"ab_hard_contact": 0.31806708919879645,
"ab_bat_speed": 70.4621518880312,
"ab_strikeout_rate": 0.2350552298302843,
"available_players": 9,
"top_players": [
{
"player_id": "660271",
"player_name": "Shohei Ohtani",
"position": "DH",
"weight": 7.0,
"quality": 1.5030337566438101,
"contact": 1.6081049955810665,
"power": 1.849161152220872,
"discipline": 0.6091453634085211,
"xwoba": 0.413,
"recent_xwoba": 0.413,
"barrel": 15.9,
"ab_hard_contact": 1.252175425369799,
"ab_bat_speed": 73.65034166666666,
"ab_strikeout_rate": 0.221,
"available": 1.0
},
{
"player_id": "571970",
"player_name": "Max Muncy",
"position": "3B",
"weight": 6.0,
"quality": 1.0584047617002315,
"contact": 1.1727674854024945,
"power": 1.7704310427637173,
"discipline": 0.16750647451963238,
"xwoba": 0.393,
"recent_xwoba": 0.393,
"barrel": 17.1,
"ab_hard_contact": 1.0764303790838559,
"ab_bat_speed": 70.70347280092592,
"ab_strikeout_rate": 0.2576388888888889,
"available": 1.0
},
{
"player_id": "518692",
"player_name": "Freddie Freeman",
"position": "1B",
"weight": 7.0,
"quality": 0.984614890867955,
"contact": 1.128848166606707,
"power": 1.0714701813506902,
"discipline": 0.6063871216502793,
"xwoba": 0.375,
"recent_xwoba": 0.375,
"barrel": 11.8,
"ab_hard_contact": 0.7810226746328375,
"ab_bat_speed": 69.57375961538462,
"ab_strikeout_rate": 0.15961538461538463,
"available": 1.0
},
{
"player_id": "681624",
"player_name": "Andy Pages",
"position": "CF",
"weight": 7.0,
"quality": 0.656170919548128,
"contact": 0.8507710790442693,
"power": 0.8340461297511191,
"discipline": -0.17022260195944416,
"xwoba": 0.352,
"recent_xwoba": 0.352,
"barrel": 10.1,
"ab_hard_contact": 0.6969225950223783,
"ab_bat_speed": 71.2382103909465,
"ab_strikeout_rate": 0.20393939393939395,
"available": 1.0
},
{
"player_id": "669899",
"player_name": "Ryan Ward",
"position": "LF",
"weight": 4.0,
"quality": 0.011522726051419527,
"contact": 0.44835011337868536,
"power": 1.2418644829734231,
"discipline": -1.140857142857143,
"xwoba": 0.362,
"recent_xwoba": 0.362,
"barrel": 14.3,
"ab_hard_contact": -1.931853197674418,
"ab_bat_speed": 71.95,
"ab_strikeout_rate": 0.5,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "656605",
"player_name": "Mitch Keller",
"quality": -0.256644163386009,
"contact": -0.08426330116730209,
"command": -0.4770954676067458,
"movement": -0.2134818456292769,
"xwoba": 0.333,
"whiff": 20.9,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "PIT",
"original_runs": 1,
"run_delta": 0.1817,
"adjusted_runs": 1,
"lineup": {
"players_used": 8,
"total_weight": 49.0,
"quality": 0.08486181380766665,
"contact": -0.038854177170894864,
"power": 0.03795729368933537,
"discipline": -0.03529311319115306,
"xwoba": 0.3189591836734694,
"recent_xwoba": 0.3189591836734694,
"barrel": 9.16734693877551,
"ab_hard_contact": -0.13438959754469043,
"ab_bat_speed": 69.73350938251909,
"ab_strikeout_rate": 0.26233321344177946,
"available_players": 8,
"top_players": [
{
"player_id": "664040",
"player_name": "Brandon Lowe",
"position": "2B",
"weight": 7.0,
"quality": 0.5407949408040541,
"contact": 0.5035195384382087,
"power": 0.9491604548682636,
"discipline": -0.1978308270676694,
"xwoba": 0.359,
"recent_xwoba": 0.359,
"barrel": 12.1,
"ab_hard_contact": 0.20911385927002665,
"ab_bat_speed": 70.76913666666667,
"ab_strikeout_rate": 0.25733333333333336,
"available": 1.0
},
{
"player_id": "663968",
"player_name": "Jake Mangum",
"position": "CF",
"weight": 5.0,
"quality": -0.3619463044624203,
"contact": -0.568822793543358,
"power": -1.3029344500062883,
"discipline": -0.02539841539332209,
"xwoba": 0.29,
"recent_xwoba": 0.29,
"barrel": 1.0,
"ab_hard_contact": -1.6042128096495853,
"ab_bat_speed": 63.870827060931894,
"ab_strikeout_rate": 0.23225806451612904,
"available": 1.0
},
{
"player_id": "668804",
"player_name": "Bryan Reynolds",
"position": "LF",
"weight": 6.0,
"quality": 0.5959406762037301,
"contact": 0.7290688980300455,
"power": 0.493797385999216,
"discipline": 0.7394667919799494,
"xwoba": 0.367,
"recent_xwoba": 0.367,
"barrel": 8.9,
"ab_hard_contact": 0.4450905771271693,
"ab_bat_speed": 71.04840029761905,
"ab_strikeout_rate": 0.21160714285714285,
"available": 1.0
},
{
"player_id": "669707",
"player_name": "Jared Triolo",
"position": "SS",
"weight": 5.0,
"quality": -0.24552359162464688,
"contact": -0.6852651724708817,
"power": -1.138149648948475,
"discipline": -0.25206026429710654,
"xwoba": 0.273,
"recent_xwoba": 0.273,
"barrel": 1.3,
"ab_hard_contact": -0.5599453599218928,
"ab_bat_speed": 69.12920454545454,
"ab_strikeout_rate": 0.23484848484848483,
"available": 1.0
},
{
"player_id": "699013",
"player_name": "Esmerlyn Valdez",
"position": "RF",
"weight": 6.0,
"quality": -0.00048718867673828905,
"contact": -0.7804022675736958,
"power": 1.3072553807908827,
"discipline": -0.9625000000000001,
"xwoba": 0.27,
"recent_xwoba": 0.27,
"barrel": 28.6,
"ab_hard_contact": -0.22860666989664097,
"ab_bat_speed": 71.584375,
"ab_strikeout_rate": 0.5166666666666666,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "680736",
"player_name": "Justin Wrobleski",
"quality": -0.15793426148650974,
"contact": 0.2502207164170636,
"command": -0.6508097533210313,
"movement": -0.2636525751631112,
"xwoba": 0.31,
"whiff": 17.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": 6,
"home_runs": 1,
"predicted_score_text": "LAD 6 - 1 PIT",
"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": true,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "LAD 6 - 1 PIT",
"winner": "LAD"
},
"final_simulation_score": {
"away_runs": 6,
"home_runs": 1,
"score_text": "LAD 6 - 1 PIT",
"winner": "LAD"
},
"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 LAD | True | 1.0581 | 1.0581 | 1 | 9 | 0 |
| Home PIT | True | 1.0161 | 1.0181 | 0.8889 | 8 | 1 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Shohei Ohtani | 24 | 1.1405 | 1.8728 | neutral | 0.4130 | 0.2970 | 0.5500 | 15.90 | 52.50 | 93.40 | 12.90 | 28.50 | 22.80 | 15 | 0.2857 |
| SS | Mookie Betts | 220 | 1.0252 | 0.3363 | positive_batter_regression | 0.3260 | 0.2620 | 0.4260 | 8.80 | 35.10 | 90 | 19.90 | 13.80 | 11.90 | 7.70 | 1.6286 |
| 1B | Freddie Freeman | 45 | 1.0973 | 1.2978 | neutral | 0.3750 | 0.2800 | 0.4980 | 11.80 | 46.30 | 91 | 11.70 | 22.70 | 16.50 | 11.60 | 0.1429 |
| 3B | Max Muncy | 14 | 1.1085 | 1.4466 | neutral | 0.3930 | 0.2760 | 0.5540 | 17.10 | 49.30 | 91 | 12.80 | 27.80 | 24.90 | 12 | 0.2857 |
| CF | Andy Pages | 2 | 1.0688 | 0.9170 | neutral | 0.3520 | 0.2820 | 0.4870 | 10.10 | 46.60 | 89.70 | 16.50 | 23.30 | 18.90 | 6.40 | -0.3714 |
| RF | Kyle Tucker | 145 | 1.0224 | 0.2991 | neutral | 0.3270 | 0.2500 | 0.3790 | 5.40 | 39.50 | 89 | 16.10 | 23.90 | 19.60 | 12.70 | 0.1143 |
| LF | Ryan Ward | 251 | 1.0358 | 0.4768 | negative_batter_regression | 0.3620 | 0.2730 | 0.5590 | 14.30 | 38.10 | 89.90 | 13.60 | 26.10 | 29 | 3.20 | -0.8571 |
| C | Dalton Rushing | 113 | 1.0254 | 0.3380 | neutral | 0.3590 | 0.2730 | 0.4700 | 10.10 | 40.50 | 88.30 | 15.90 | 30.50 | 24.60 | 8.20 | -0.7429 |
| 2B | Alex Freeland | 125 | 0.9987 | -0.0175 | neutral | 0.3050 | 0.2270 | 0.3590 | 7.50 | 38.70 | 89.10 | 9.10 | 27.30 | 26 | 11.30 | -0.2000 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3B | Nick Gonzales | 129 | 1.0242 | 0.3225 | neutral | 0.3350 | 0.3000 | 0.4040 | 3.20 | 38.50 | 85.60 | 6.40 | 23.20 | 17.60 | 6.40 | 0.2286 |
| 2B | Brandon Lowe | 26 | 1.0730 | 0.9732 | neutral | 0.3590 | 0.2560 | 0.4910 | 12.10 | 44.50 | 90 | 16.90 | 34.10 | 24.40 | 10.70 | -0.2286 |
| LF | Bryan Reynolds | 61 | 1.0681 | 0.9080 | neutral | 0.3670 | 0.2590 | 0.4370 | 8.90 | 44.10 | 90.80 | 5.40 | 28.50 | 21.50 | 15.70 | 0 |
| DH | Marcell Ozuna | 546 | 1.0204 | 0.2719 | positive_batter_regression | 0.3080 | 0.2270 | 0.3950 | 8.20 | 39.20 | 89.60 | 21.90 | 30.40 | 29.10 | 9.20 | 1.2571 |
| RF | Esmerlyn Valdez | 329 | 0.9992 | -0.0109 | negative_batter_regression | 0.2700 | 0.1290 | 0.3920 | 28.60 | 71.40 | 94.80 | 12.50 | 45.50 | 50 | 11.10 | -1.0857 |
| 1B | Spencer Horwitz | 78 | 1.0030 | 0.0393 | negative_batter_regression | 0.3340 | 0.2330 | 0.3860 | 8 | 33.70 | 86.30 | 16.40 | 14 | 12.50 | 13.80 | -1.2857 |
| CF | Jake Mangum | 183 | 0.9778 | -0.2960 | neutral | 0.2900 | 0.2630 | 0.3290 | 1 | 26 | 84 | 2.70 | 19 | 17.90 | 6.40 | -0.7143 |
| SS | Jared Triolo | 479 | 0.9789 | -0.2816 | neutral | 0.2730 | 0.2370 | 0.2950 | 1.30 | 33.80 | 87 | 7.20 | 25.10 | 24.80 | 7.70 | 0.3429 |
{
"home": {
"applied": true,
"offense_factor": 1.0161,
"raw_average_factor": 1.0181,
"team_espn_average_rank": 228.88,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "3B",
"player_id": "693304",
"player_name": "Nick Gonzales",
"offense_factor": 1.0242,
"quality_score": 0.3225,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693304",
"espn_id": 4311634,
"player_name": "Nick Gonzales",
"team": "PIT",
"role": "batter",
"espn_rank": 129,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 129,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 230.0,
"ab_rank": 93,
"r_value": 35.0,
"r_rank": 58,
"h_value": 69.0,
"h_rank": 28,
"avg_value": 0.3,
"avg_rank": 15.0,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 86.0,
"tb_rank": 1317,
"bb_value": 16.0,
"bb_rank": 181,
"so_value": 44.0,
"so_rank": 149,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.352,
"obp_rank": "51",
"slg_value": 0.373913,
"slg_rank": "119",
"ops_value": 0.725913,
"ops_rank": 170.0,
"war_value": 0.98,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 197.0,
"k_percent": 17.6,
"bb_percent": 6.4,
"woba": 0.327,
"xwoba": 0.335,
"xba": 0.3,
"xslg": 0.404,
"sweet_spot_percent": 32.6,
"barrel_batted_rate": 3.2,
"hard_hit_percent": 38.5,
"exit_velocity_avg": 85.6,
"launch_angle_avg": 6.4,
"whiff_percent": 23.2,
"swing_percent": 53.2
},
"components": {
"expected_quality": 0.3816,
"regression_edge": 0.2286,
"xwoba_edge": 0.8857,
"xba_edge": 1.7714,
"xslg_edge": 0.4286,
"barrel_edge": -0.8222,
"hard_hit_edge": 0.0,
"exit_velocity_edge": -1.28,
"sweet_spot_edge": -0.1167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "664040",
"player_name": "Brandon Lowe",
"offense_factor": 1.073,
"quality_score": 0.9732,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "664040",
"espn_id": 39961,
"player_name": "Brandon Lowe",
"team": "PIT",
"role": "batter",
"espn_rank": 26,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 26,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 237.0,
"ab_rank": 74,
"r_value": 41.0,
"r_rank": 31,
"h_value": 59.0,
"h_rank": 79,
"avg_value": 0.2489451,
"avg_rank": 85.0,
"2b_value": 16.0,
"2b_rank": 14,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 15.0,
"hr_rank": 16,
"rbi_value": 43.0,
"rbi_rank": 15,
"tb_value": 122.0,
"tb_rank": 269,
"bb_value": 29.0,
"bb_rank": 53,
"so_value": 66.0,
"so_rank": 43,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3333333,
"obp_rank": "82",
"slg_value": 0.5147679,
"slg_rank": "25",
"ops_value": 0.8481012,
"ops_rank": 107.0,
"war_value": 2.43,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 219.0,
"k_percent": 24.4,
"bb_percent": 10.7,
"woba": 0.367,
"xwoba": 0.359,
"xba": 0.256,
"xslg": 0.491,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 44.5,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 16.9,
"whiff_percent": 34.1,
"swing_percent": 48.5
},
"components": {
"expected_quality": 1.174,
"regression_edge": -0.2286,
"xwoba_edge": 1.5714,
"xba_edge": 0.5143,
"xslg_edge": 1.6714,
"barrel_edge": 1.1556,
"hard_hit_edge": 0.8571,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "668804",
"player_name": "Bryan Reynolds",
"offense_factor": 1.0681,
"quality_score": 0.908,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668804",
"espn_id": 38980,
"player_name": "Bryan Reynolds",
"team": "PIT",
"role": "batter",
"espn_rank": 61,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 61,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 240.0,
"ab_rank": 64,
"r_value": 44.0,
"r_rank": 15,
"h_value": 64.0,
"h_rank": 47,
"avg_value": 0.2666666,
"avg_rank": 56.0,
"2b_value": 14.0,
"2b_rank": 31,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 40.0,
"rbi_rank": 28,
"tb_value": 103.0,
"tb_rank": 422,
"bb_value": 46.0,
"bb_rank": 6,
"so_value": 63.0,
"so_rank": 52,
"sb_value": 5.0,
"sb_rank": 84,
"obp_value": 0.3924914,
"obp_rank": "9",
"slg_value": 0.4291666,
"slg_rank": "77",
"ops_value": 0.821658,
"ops_rank": 68.0,
"war_value": 1.68,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 236.0,
"k_percent": 21.5,
"bb_percent": 15.7,
"woba": 0.367,
"xwoba": 0.367,
"xba": 0.259,
"xslg": 0.437,
"sweet_spot_percent": 33.5,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 44.1,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 5.4,
"whiff_percent": 28.5,
"swing_percent": 43.6
},
"components": {
"expected_quality": 1.0558,
"regression_edge": 0.0,
"xwoba_edge": 1.8,
"xba_edge": 0.6,
"xslg_edge": 0.9,
"barrel_edge": 0.4444,
"hard_hit_edge": 0.8,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": 0.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "542303",
"player_name": "Marcell Ozuna",
"offense_factor": 1.0204,
"quality_score": 0.2719,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "542303",
"espn_id": 31668,
"player_name": "Marcell Ozuna",
"team": "PIT",
"role": "batter",
"espn_rank": 546,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 546,
"gp_value": 50.0,
"gp_rank": 212,
"ab_value": 185.0,
"ab_rank": 161,
"r_value": 15.0,
"r_rank": 254,
"h_value": 36.0,
"h_rank": 215,
"avg_value": 0.1945945,
"avg_rank": 162.0,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 23.0,
"rbi_rank": 157,
"tb_value": 56.0,
"tb_rank": 1319,
"bb_value": 19.0,
"bb_rank": 144,
"so_value": 60.0,
"so_rank": 63,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.276699,
"obp_rank": "154",
"slg_value": 0.3027027,
"slg_rank": "164",
"ops_value": 0.5794017,
"ops_rank": 10.0,
"war_value": -0.86,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 188.0,
"k_percent": 29.1,
"bb_percent": 9.2,
"woba": 0.264,
"xwoba": 0.308,
"xba": 0.227,
"xslg": 0.395,
"sweet_spot_percent": 39.2,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 39.2,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 21.9,
"whiff_percent": 30.4,
"swing_percent": 41.8
},
"components": {
"expected_quality": 0.1654,
"regression_edge": 1.2571,
"xwoba_edge": 0.1143,
"xba_edge": -0.3143,
"xslg_edge": 0.3,
"barrel_edge": 0.2889,
"hard_hit_edge": 0.1,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.9833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "699013",
"player_name": "Esmerlyn Valdez",
"offense_factor": 0.9992,
"quality_score": -0.0109,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "699013",
"espn_id": 5137200,
"player_name": "Esmerlyn Valdez",
"team": "PIT",
"role": "batter",
"espn_rank": 329,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 329,
"gp_value": 5.0,
"gp_rank": 514,
"ab_value": 16.0,
"ab_rank": 496,
"r_value": 2.0,
"r_rank": 461,
"h_value": 2.0,
"h_rank": 500,
"avg_value": 0.125,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 5.0,
"rbi_rank": 390,
"tb_value": 8.0,
"tb_rank": 2184,
"bb_value": 2.0,
"bb_rank": 436,
"so_value": 9.0,
"so_rank": 438,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2222222,
"obp_rank": "-",
"slg_value": 0.5,
"slg_rank": "-",
"ops_value": 0.7222222,
"ops_rank": null,
"war_value": 0.02,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 14.0,
"k_percent": 50.0,
"bb_percent": 11.1,
"woba": 0.308,
"xwoba": 0.27,
"xba": 0.129,
"xslg": 0.392,
"sweet_spot_percent": 42.9,
"barrel_batted_rate": 28.6,
"hard_hit_percent": 71.4,
"exit_velocity_avg": 94.8,
"launch_angle_avg": 12.5,
"whiff_percent": 45.5,
"swing_percent": 44.0
},
"components": {
"expected_quality": 0.1487,
"regression_edge": -1.0857,
"xwoba_edge": -0.9714,
"xba_edge": -2.5,
"xslg_edge": 0.2571,
"barrel_edge": 2.5,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.4,
"sweet_spot_edge": 1.6,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "687462",
"player_name": "Spencer Horwitz",
"offense_factor": 1.003,
"quality_score": 0.0393,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "687462",
"espn_id": 4228472,
"player_name": "Spencer Horwitz",
"team": "PIT",
"role": "batter",
"espn_rank": 78,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 78,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 201.0,
"ab_rank": 134,
"r_value": 27.0,
"r_rank": 122,
"h_value": 58.0,
"h_rank": 84,
"avg_value": 0.2885572,
"avg_rank": 21.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 29.0,
"rbi_rank": 100,
"tb_value": 95.0,
"tb_rank": 590,
"bb_value": 33.0,
"bb_rank": 37,
"so_value": 30.0,
"so_rank": 250,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3875,
"obp_rank": "15",
"slg_value": 0.4726368,
"slg_rank": "40",
"ops_value": 0.8601368,
"ops_rank": 55.0,
"war_value": 1.46,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 187.0,
"k_percent": 12.5,
"bb_percent": 13.8,
"woba": 0.379,
"xwoba": 0.334,
"xba": 0.233,
"xslg": 0.386,
"sweet_spot_percent": 28.0,
"barrel_batted_rate": 8.0,
"hard_hit_percent": 33.7,
"exit_velocity_avg": 86.3,
"launch_angle_avg": 16.4,
"whiff_percent": 14.0,
"swing_percent": 41.0
},
"components": {
"expected_quality": 0.2631,
"regression_edge": -1.2857,
"xwoba_edge": 0.8571,
"xba_edge": -0.1429,
"xslg_edge": 0.1714,
"barrel_edge": 0.2444,
"hard_hit_edge": -0.6857,
"exit_velocity_edge": -1.0,
"sweet_spot_edge": -0.8833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "663968",
"player_name": "Jake Mangum",
"offense_factor": 0.9778,
"quality_score": -0.296,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663968",
"espn_id": 42664,
"player_name": "Jake Mangum",
"team": "PIT",
"role": "batter",
"espn_rank": 183,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 183,
"gp_value": 48.0,
"gp_rank": 227,
"ab_value": 125.0,
"ab_rank": 257,
"r_value": 18.0,
"r_rank": 217,
"h_value": 37.0,
"h_rank": 204,
"avg_value": 0.296,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 9.0,
"rbi_rank": 317,
"tb_value": 44.0,
"tb_rank": 1882,
"bb_value": 9.0,
"bb_rank": 286,
"so_value": 25.0,
"so_rank": 296,
"sb_value": 11.0,
"sb_rank": 21,
"obp_value": 0.3503649,
"obp_rank": "-",
"slg_value": 0.352,
"slg_rank": "-",
"ops_value": 0.7023649,
"ops_rank": null,
"war_value": 0.58,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 97.0,
"k_percent": 17.9,
"bb_percent": 6.4,
"woba": 0.315,
"xwoba": 0.29,
"xba": 0.263,
"xslg": 0.329,
"sweet_spot_percent": 26.0,
"barrel_batted_rate": 1.0,
"hard_hit_percent": 26.0,
"exit_velocity_avg": 84.0,
"launch_angle_avg": 2.7,
"whiff_percent": 19.0,
"swing_percent": 60.1
},
"components": {
"expected_quality": -0.6486,
"regression_edge": -0.7143,
"xwoba_edge": -0.4,
"xba_edge": 0.7143,
"xslg_edge": -0.6429,
"barrel_edge": -1.3111,
"hard_hit_edge": -1.7857,
"exit_velocity_edge": -1.92,
"sweet_spot_edge": -1.2167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "669707",
"player_name": "Jared Triolo",
"offense_factor": 0.9789,
"quality_score": -0.2816,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669707",
"espn_id": 42933,
"player_name": "Jared Triolo",
"team": "PIT",
"role": "batter",
"espn_rank": 479,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 479,
"gp_value": 36.0,
"gp_rank": 314,
"ab_value": 105.0,
"ab_rank": 293,
"r_value": 10.0,
"r_rank": 324,
"h_value": 24.0,
"h_rank": 286,
"avg_value": 0.2285714,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 6.0,
"rbi_rank": 372,
"tb_value": 28.0,
"tb_rank": 2207,
"bb_value": 9.0,
"bb_rank": 286,
"so_value": 29.0,
"so_rank": 261,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.2956521,
"obp_rank": "-",
"slg_value": 0.2666666,
"slg_rank": "-",
"ops_value": 0.5623187,
"ops_rank": null,
"war_value": -0.34,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 72.0,
"k_percent": 24.8,
"bb_percent": 7.7,
"woba": 0.261,
"xwoba": 0.273,
"xba": 0.237,
"xslg": 0.295,
"sweet_spot_percent": 31.2,
"barrel_batted_rate": 1.3,
"hard_hit_percent": 33.8,
"exit_velocity_avg": 87.0,
"launch_angle_avg": 7.2,
"whiff_percent": 25.1,
"swing_percent": 42.1
},
"components": {
"expected_quality": -0.7836,
"regression_edge": 0.3429,
"xwoba_edge": -0.8857,
"xba_edge": -0.0286,
"xslg_edge": -1.1286,
"barrel_edge": -1.2444,
"hard_hit_edge": -0.6714,
"exit_velocity_edge": -0.72,
"sweet_spot_edge": -0.35,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0581,
"raw_average_factor": 1.0581,
"team_espn_average_rank": 104.33,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "660271",
"player_name": "Shohei Ohtani",
"offense_factor": 1.1405,
"quality_score": 1.8728,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "660271",
"espn_id": 39832,
"player_name": "Shohei Ohtani",
"team": "LAD",
"role": "batter",
"espn_rank": 24,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 24,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 241.0,
"ab_rank": 59,
"r_value": 46.0,
"r_rank": 8,
"h_value": 72.0,
"h_rank": 17,
"avg_value": 0.2987551,
"avg_rank": 16.0,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 12.0,
"hr_rank": 38,
"rbi_value": 39.0,
"rbi_rank": 31,
"tb_value": 127.0,
"tb_rank": 176,
"bb_value": 44.0,
"bb_rank": 8,
"so_value": 67.0,
"so_rank": 40,
"sb_value": 6.0,
"sb_rank": 70,
"obp_value": 0.4129692,
"obp_rank": "3",
"slg_value": 0.5269709,
"slg_rank": "16",
"ops_value": 0.9399401,
"ops_rank": 19.0,
"war_value": 2.44,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 229.0,
"k_percent": 22.8,
"bb_percent": 15.0,
"woba": 0.403,
"xwoba": 0.413,
"xba": 0.297,
"xslg": 0.55,
"sweet_spot_percent": 42.9,
"barrel_batted_rate": 15.9,
"hard_hit_percent": 52.5,
"exit_velocity_avg": 93.4,
"launch_angle_avg": 12.9,
"whiff_percent": 28.5,
"swing_percent": 44.1
},
"components": {
"expected_quality": 2.1312,
"regression_edge": 0.2857,
"xwoba_edge": 2.5,
"xba_edge": 1.6857,
"xslg_edge": 2.5,
"barrel_edge": 2.0,
"hard_hit_edge": 2.0,
"exit_velocity_edge": 1.84,
"sweet_spot_edge": 1.6,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "605141",
"player_name": "Mookie Betts",
"offense_factor": 1.0252,
"quality_score": 0.3363,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "605141",
"espn_id": 33039,
"player_name": "Mookie Betts",
"team": "LAD",
"role": "batter",
"espn_rank": 220,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 220,
"gp_value": 33.0,
"gp_rank": 325,
"ab_value": 130.0,
"ab_rank": 247,
"r_value": 18.0,
"r_rank": 217,
"h_value": 24.0,
"h_rank": 286,
"avg_value": 0.1846153,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 46.0,
"tb_rank": 1343,
"bb_value": 11.0,
"bb_rank": 252,
"so_value": 17.0,
"so_rank": 367,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2517482,
"obp_rank": "-",
"slg_value": 0.3538461,
"slg_rank": "-",
"ops_value": 0.6055943,
"ops_rank": null,
"war_value": 0.37,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 90.0,
"k_percent": 11.9,
"bb_percent": 7.7,
"woba": 0.269,
"xwoba": 0.326,
"xba": 0.262,
"xslg": 0.426,
"sweet_spot_percent": 41.2,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 35.1,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 19.9,
"whiff_percent": 13.8,
"swing_percent": 41.7
},
"components": {
"expected_quality": 0.6038,
"regression_edge": 1.6286,
"xwoba_edge": 0.6286,
"xba_edge": 0.6857,
"xslg_edge": 0.7429,
"barrel_edge": 0.4222,
"hard_hit_edge": -0.4857,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 1.3167,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "1B",
"player_id": "518692",
"player_name": "Freddie Freeman",
"offense_factor": 1.0973,
"quality_score": 1.2978,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "518692",
"espn_id": 30193,
"player_name": "Freddie Freeman",
"team": "LAD",
"role": "batter",
"espn_rank": 45,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 45,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 247.0,
"ab_rank": 39,
"r_value": 37.0,
"r_rank": 52,
"h_value": 70.0,
"h_rank": 25,
"avg_value": 0.2834008,
"avg_rank": 27.0,
"2b_value": 17.0,
"2b_rank": 8,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 10.0,
"hr_rank": 54,
"rbi_value": 36.0,
"rbi_rank": 47,
"tb_value": 119.0,
"tb_rank": 323,
"bb_value": 33.0,
"bb_rank": 37,
"so_value": 47.0,
"so_rank": 130,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3661971,
"obp_rank": "35",
"slg_value": 0.4817813,
"slg_rank": "36",
"ops_value": 0.8479784,
"ops_rank": 1.0,
"war_value": 1.89,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 16.5,
"bb_percent": 11.6,
"woba": 0.37,
"xwoba": 0.375,
"xba": 0.28,
"xslg": 0.498,
"sweet_spot_percent": 35.5,
"barrel_batted_rate": 11.8,
"hard_hit_percent": 46.3,
"exit_velocity_avg": 91.0,
"launch_angle_avg": 11.7,
"whiff_percent": 22.7,
"swing_percent": 49.2
},
"components": {
"expected_quality": 1.4858,
"regression_edge": 0.1429,
"xwoba_edge": 2.0286,
"xba_edge": 1.2,
"xslg_edge": 1.7714,
"barrel_edge": 1.0889,
"hard_hit_edge": 1.1143,
"exit_velocity_edge": 0.88,
"sweet_spot_edge": 0.3667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "571970",
"player_name": "Max Muncy",
"offense_factor": 1.1085,
"quality_score": 1.4466,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "571970",
"espn_id": 33303,
"player_name": "Max Muncy",
"team": "LAD",
"role": "batter",
"espn_rank": 14,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 14,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 204.0,
"ab_rank": 129,
"r_value": 44.0,
"r_rank": 15,
"h_value": 55.0,
"h_rank": 98,
"avg_value": 0.2696078,
"avg_rank": 52.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 14.0,
"hr_rank": 23,
"rbi_value": 24.0,
"rbi_rank": 151,
"tb_value": 106.0,
"tb_rank": 665,
"bb_value": 28.0,
"bb_rank": 58,
"so_value": 58.0,
"so_rank": 71,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.360515,
"obp_rank": "38",
"slg_value": 0.5196078,
"slg_rank": "19",
"ops_value": 0.8801228,
"ops_rank": 57.0,
"war_value": 2.75,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 189.0,
"k_percent": 24.9,
"bb_percent": 12.0,
"woba": 0.383,
"xwoba": 0.393,
"xba": 0.276,
"xslg": 0.554,
"sweet_spot_percent": 34.9,
"barrel_batted_rate": 17.1,
"hard_hit_percent": 49.3,
"exit_velocity_avg": 91.0,
"launch_angle_avg": 12.8,
"whiff_percent": 27.8,
"swing_percent": 43.9
},
"components": {
"expected_quality": 1.9115,
"regression_edge": 0.2857,
"xwoba_edge": 2.5,
"xba_edge": 1.0857,
"xslg_edge": 2.5,
"barrel_edge": 2.2667,
"hard_hit_edge": 1.5429,
"exit_velocity_edge": 0.88,
"sweet_spot_edge": 0.2667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "681624",
"player_name": "Andy Pages",
"offense_factor": 1.0688,
"quality_score": 0.917,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681624",
"espn_id": 42468,
"player_name": "Andy Pages",
"team": "LAD",
"role": "batter",
"espn_rank": 2,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 2,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 256.0,
"ab_rank": 23,
"r_value": 40.0,
"r_rank": 38,
"h_value": 72.0,
"h_rank": 17,
"avg_value": 0.28125,
"avg_rank": 32.0,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 15.0,
"hr_rank": 16,
"rbi_value": 56.0,
"rbi_rank": 1,
"tb_value": 134.0,
"tb_rank": 212,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 53.0,
"so_rank": 95,
"sb_value": 7.0,
"sb_rank": 57,
"obp_value": 0.3274021,
"obp_rank": "93",
"slg_value": 0.5234375,
"slg_rank": "18",
"ops_value": 0.8508396,
"ops_rank": 75.0,
"war_value": 3.7,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 224.0,
"k_percent": 18.9,
"bb_percent": 6.4,
"woba": 0.365,
"xwoba": 0.352,
"xba": 0.282,
"xslg": 0.487,
"sweet_spot_percent": 36.5,
"barrel_batted_rate": 10.1,
"hard_hit_percent": 46.6,
"exit_velocity_avg": 89.7,
"launch_angle_avg": 16.5,
"whiff_percent": 23.3,
"swing_percent": 49.5
},
"components": {
"expected_quality": 1.1267,
"regression_edge": -0.3714,
"xwoba_edge": 1.3714,
"xba_edge": 1.2571,
"xslg_edge": 1.6143,
"barrel_edge": 0.7111,
"hard_hit_edge": 1.1571,
"exit_velocity_edge": 0.36,
"sweet_spot_edge": 0.5333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "663656",
"player_name": "Kyle Tucker",
"offense_factor": 1.0224,
"quality_score": 0.2991,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663656",
"espn_id": 34967,
"player_name": "Kyle Tucker",
"team": "LAD",
"role": "batter",
"espn_rank": 145,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 145,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 236.0,
"ab_rank": 75,
"r_value": 40.0,
"r_rank": 38,
"h_value": 56.0,
"h_rank": 91,
"avg_value": 0.2372881,
"avg_rank": 110.0,
"2b_value": 16.0,
"2b_rank": 14,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 32.0,
"rbi_rank": 73,
"tb_value": 91.0,
"tb_rank": 623,
"bb_value": 35.0,
"bb_rank": 29,
"so_value": 54.0,
"so_rank": 90,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.3345454,
"obp_rank": "78",
"slg_value": 0.3855932,
"slg_rank": "112",
"ops_value": 0.7201386,
"ops_rank": 190.0,
"war_value": 0.85,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 19.6,
"bb_percent": 12.7,
"woba": 0.323,
"xwoba": 0.327,
"xba": 0.25,
"xslg": 0.379,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 39.5,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 16.1,
"whiff_percent": 23.9,
"swing_percent": 48.7
},
"components": {
"expected_quality": 0.3292,
"regression_edge": 0.1143,
"xwoba_edge": 0.6571,
"xba_edge": 0.3429,
"xslg_edge": 0.0714,
"barrel_edge": -0.3333,
"hard_hit_edge": 0.1429,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": 0.4833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "669899",
"player_name": "Ryan Ward",
"offense_factor": 1.0358,
"quality_score": 0.4768,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669899",
"espn_id": 4091943,
"player_name": "Ryan Ward",
"team": "LAD",
"role": "batter",
"espn_rank": 251,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 251,
"gp_value": 9.0,
"gp_rank": 480,
"ab_value": 30.0,
"ab_rank": 445,
"r_value": 6.0,
"r_rank": 387,
"h_value": 8.0,
"h_rank": 423,
"avg_value": 0.2666666,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 374,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 11.0,
"rbi_rank": 290,
"tb_value": 19.0,
"tb_rank": 1832,
"bb_value": 1.0,
"bb_rank": 462,
"so_value": 9.0,
"so_rank": 438,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2903225,
"obp_rank": "-",
"slg_value": 0.6333333,
"slg_rank": "-",
"ops_value": 0.9236558,
"ops_rank": null,
"war_value": 0.24,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 6.0,
"k_percent": 29.0,
"bb_percent": 3.2,
"woba": 0.392,
"xwoba": 0.362,
"xba": 0.273,
"xslg": 0.559,
"sweet_spot_percent": 42.9,
"barrel_batted_rate": 14.3,
"hard_hit_percent": 38.1,
"exit_velocity_avg": 89.9,
"launch_angle_avg": 13.6,
"whiff_percent": 26.1,
"swing_percent": 54.3
},
"components": {
"expected_quality": 1.3716,
"regression_edge": -0.8571,
"xwoba_edge": 1.6571,
"xba_edge": 1.0,
"xslg_edge": 2.5,
"barrel_edge": 1.6444,
"hard_hit_edge": -0.0571,
"exit_velocity_edge": 0.44,
"sweet_spot_edge": 1.6,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "687221",
"player_name": "Dalton Rushing",
"offense_factor": 1.0254,
"quality_score": 0.338,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "687221",
"espn_id": 4619839,
"player_name": "Dalton Rushing",
"team": "LAD",
"role": "batter",
"espn_rank": 113,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 113,
"gp_value": 37.0,
"gp_rank": 304,
"ab_value": 109.0,
"ab_rank": 288,
"r_value": 19.0,
"r_rank": 202,
"h_value": 30.0,
"h_rank": 249,
"avg_value": 0.2752293,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 21.0,
"rbi_rank": 178,
"tb_value": 58.0,
"tb_rank": 1147,
"bb_value": 10.0,
"bb_rank": 268,
"so_value": 30.0,
"so_rank": 250,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.352459,
"obp_rank": "-",
"slg_value": 0.53211,
"slg_rank": "-",
"ops_value": 0.884569,
"ops_rank": null,
"war_value": 1.11,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 92.0,
"k_percent": 24.6,
"bb_percent": 8.2,
"woba": 0.385,
"xwoba": 0.359,
"xba": 0.273,
"xslg": 0.47,
"sweet_spot_percent": 36.7,
"barrel_batted_rate": 10.1,
"hard_hit_percent": 40.5,
"exit_velocity_avg": 88.3,
"launch_angle_avg": 15.9,
"whiff_percent": 30.5,
"swing_percent": 51.3
},
"components": {
"expected_quality": 0.9944,
"regression_edge": -0.7429,
"xwoba_edge": 1.5714,
"xba_edge": 1.0,
"xslg_edge": 1.3714,
"barrel_edge": 0.7111,
"hard_hit_edge": 0.2857,
"exit_velocity_edge": -0.2,
"sweet_spot_edge": 0.5667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "690976",
"player_name": "Alex Freeland",
"offense_factor": 0.9987,
"quality_score": -0.0175,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "690976",
"espn_id": 4727589,
"player_name": "Alex Freeland",
"team": "LAD",
"role": "batter",
"espn_rank": 125,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 125,
"gp_value": 45.0,
"gp_rank": 247,
"ab_value": 128.0,
"ab_rank": 252,
"r_value": 17.0,
"r_rank": 227,
"h_value": 31.0,
"h_rank": 242,
"avg_value": 0.2421875,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 14.0,
"rbi_rank": 256,
"tb_value": 45.0,
"tb_rank": 1523,
"bb_value": 17.0,
"bb_rank": 171,
"so_value": 39.0,
"so_rank": 179,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3333333,
"obp_rank": "-",
"slg_value": 0.3515625,
"slg_rank": "-",
"ops_value": 0.6848958,
"ops_rank": null,
"war_value": 1.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 113.0,
"k_percent": 26.0,
"bb_percent": 11.3,
"woba": 0.312,
"xwoba": 0.305,
"xba": 0.227,
"xslg": 0.359,
"sweet_spot_percent": 35.5,
"barrel_batted_rate": 7.5,
"hard_hit_percent": 38.7,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 9.1,
"whiff_percent": 27.3,
"swing_percent": 39.4
},
"components": {
"expected_quality": -0.007,
"regression_edge": -0.2,
"xwoba_edge": 0.0286,
"xba_edge": -0.3143,
"xslg_edge": -0.2143,
"barrel_edge": 0.1333,
"hard_hit_edge": 0.0286,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": 0.3667,
"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 LAD | True | 34 | -0.2180 | 0.9080 | 1.0185 | 0.9222 | 0.9292 | 1.0125 | negative_pitcher_regression | 0.3100 | 0.2550 | 16.10 | 5.10 | 17.20 | 7 | 42.50 | |
| Home PIT | True | 176 | -0.3154 | 1 | 1.0268 | 0.9463 | 0.9700 | 1.0100 | negative_pitcher_regression | 0.3330 | 0.3010 | 18 | 7.50 | 20.90 | 6.80 | 39 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away LAD | True | None | 96 | 89.47 | 2366 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0138 | |
| Home PIT | True | None | 87 | 88.94 | 2363 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0436 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0268 |
| home_runs_vs_away_pitcher | 1.0168 |
| home_pitcher_quality_edge | -0.0974 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "656605",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 256.0,
"k_percent": 18.0,
"bb_percent": 7.5,
"woba": 0.301,
"xwoba": 0.333,
"sweet_spot_percent": 37.7,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 39.0,
"avg_best_speed": 76.2984,
"avg_hyper_speed": 94.0155,
"whiff_percent": 20.9,
"swing_percent": 48.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1791,
"command_and_miss": -0.4621,
"regression_edge": -0.9143,
"xwoba_edge": -0.5143,
"barrel_edge": 0.1111,
"hard_hit_edge": -0.0857,
"whiff_edge": -0.6714,
"bb_edge": 0.375,
"pitch_design_score": -0.0436
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656605",
"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": 88.93561542247289,
"release_spin_rate": 2363.1930330122427,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 88.93561542247289,
"release_spin_rate": 2363.1930330122427,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9356,
"release_spin_rate": 2363.193,
"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.0436,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3113,
"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.3154,
"sample_weight": 1.0,
"run_prevention_factor": 1.0268,
"strikeout_factor": 0.9463,
"walk_factor": 0.97,
"homer_factor": 1.01,
"woba_minus_xwoba": -0.032,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656605",
"espn_id": 33722,
"player_name": "Mitch Keller",
"team": "PIT",
"role": "pitcher",
"espn_rank": 176,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 176,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 7.0,
"qs_rank": 20,
"era_value": 4.8082,
"era_rank": 60.0,
"w_value": 5.0,
"w_rank": 30,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 73.0,
"ip_rank": 42,
"h_value": 67.0,
"h_rank": 40,
"er_value": 39.0,
"er_rank": 17,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 23.0,
"bb_rank": 62,
"k_value": 55.0,
"k_rank": 83,
"k_per_9_value": 6.7808223,
"k_per_9_rank": 53,
"whip_value": 1.2328,
"whip_rank": 39.0,
"war_value": 0.49,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "680736",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 227.0,
"k_percent": 16.1,
"bb_percent": 5.1,
"woba": 0.255,
"xwoba": 0.31,
"sweet_spot_percent": 36.9,
"barrel_batted_rate": 7.0,
"hard_hit_percent": 42.5,
"avg_best_speed": 79.5405,
"avg_hyper_speed": 94.3426,
"whiff_percent": 17.2,
"swing_percent": 49.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.1554,
"command_and_miss": -0.6493,
"regression_edge": -1.5714,
"xwoba_edge": 0.1429,
"barrel_edge": 0.0667,
"hard_hit_edge": -0.5857,
"whiff_edge": -1.2,
"bb_edge": 0.975,
"pitch_design_score": -0.0138
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680736",
"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": 89.46644617136575,
"release_spin_rate": 2365.64267585064,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.46644617136575,
"release_spin_rate": 2365.64267585064,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4664,
"release_spin_rate": 2365.6427,
"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.0138,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0989,
"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.218,
"sample_weight": 0.908,
"run_prevention_factor": 1.0185,
"strikeout_factor": 0.9222,
"walk_factor": 0.9292,
"homer_factor": 1.0125,
"woba_minus_xwoba": -0.055,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "680736",
"espn_id": 4417203,
"player_name": "Justin Wrobleski",
"team": "LAD",
"role": "pitcher",
"espn_rank": 34,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 34,
"gp_value": 11.0,
"gp_rank": 359,
"gs_value": 10.0,
"gs_rank": 104,
"qs_value": 7.0,
"qs_rank": 20,
"era_value": 2.6213,
"era_rank": 9.0,
"w_value": 7.0,
"w_rank": 7,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 68.2,
"ip_rank": 62,
"h_value": 55.0,
"h_rank": 97,
"er_value": 20.0,
"er_rank": 135,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 44.0,
"k_rank": 125,
"k_per_9_value": 5.76699,
"k_per_9_rank": 54,
"whip_value": 1.0048,
"whip_rank": 11.0,
"war_value": 1.71,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0268,
"home_runs_vs_away_pitcher": 1.0168,
"home_pitcher_quality_edge": -0.0974
},
"score_before": {
"away_runs": 5.1172,
"home_runs": 0.8177
},
"score_after": {
"away_runs": 5.2544,
"home_runs": 0.8314,
"home_win_probability": 0.1223
},
"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 LAD | 19-40 | 0.322 | 1.50 | 2.70 | -72 | cold | strong | |
| Home PIT | 18-40 | 0.310 | 1.70 | 3.70 | -118 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away LAD | 43-25 | 0.632 | 141 | 2.074 | True |
| Home PIT | 35-33 | 0.515 | 22 | 0.324 | True |
| Signal | - | - | -1.750 | -1.927 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target LAD | - | - | 6 | - | - | - | - |
| Game target PIT | - | - | 1 | - | - | - | - |
| Player finalized LAD | 54 | 14 | 9 | 0 | 10 | 6 | 12 |
| Player finalized PIT | 53 | 12 | 7 | 0 | 6 | 5 | 15 |
| Player model fractional LAD | 52.57 | 14.02 | 9.68 | 2.43 | 8.93 | 6.08 | 11.85 |
| Player model fractional PIT | 51.93 | 11.43 | 6.49 | 1.62 | 6.40 | 5.85 | 13.85 |
| Simulation box LAD | 37 | 10 | 6 | 2 | 6 | 5 | 8 |
| Simulation box PIT | 30 | 3 | 1 | 0 | 1 | 5 | 10 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away LAD | Starter | Justin Wrobleski | 6.20 | 1 | 6 | 2 | 4 | 3.58 | 1.10 | True |
| Away LAD | Middle Reliever | Kyle Hurt | 1 | 0 | 2 | 0 | 0 | 7.57 | 1.71 | True |
| Away LAD | Middle Reliever | Tanner Scott | 1 | 0 | 1 | 0 | 0 | 5.89 | 1.40 | True |
| Away LAD | Middle Reliever | Alex Vesia | 0.10 | 0 | 1 | 1 | 0 | 4.30 | 1.33 | True |
| Away LAD | Middle Reliever | Blake Treinen | 0 | 0 | 0 | 0 | 1 | 3.97 | 1.35 | True |
| Home PIT | Starter | Mitch Keller | 5.10 | 5 | 5 | 4 | 3 | 6.14 | 1.39 | True |
| Home PIT | Middle Reliever | Dennis Santana | 1 | 0 | 0 | 1 | 1 | 4.47 | 1.54 | True |
| Home PIT | Middle Reliever | Evan Sisk | 1 | 0 | 1 | 0 | 0 | 2.35 | 1.18 | True |
| Home PIT | Middle Reliever | Gregory Soto | 1 | 0 | 1 | 1 | 0 | 3.98 | 1.02 | True |
| Home PIT | Middle Reliever | Carmen Mlodzinski | 0.20 | 1 | 1 | 2 | 1 | 3.96 | 1.34 | True |
| Home PIT | Middle Reliever | Mason Montgomery | 0 | 0 | 0 | 2 | 0 | 5.42 | 1.50 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | LAD | batter | 3B | Max Muncy | better | 11 | 8 | 3 | 9 | 2 | predicted_RBI | 3.5500 | boost | better |
| home | PIT | batter | SS | Jared Triolo | worse | 11 | 2 | 9 | 1 | 10 | predicted_SO | 2.1650 | boost | worse |
| away | LAD | batter | DH | Shohei Ohtani | worse | 11 | 4 | 7 | 3 | 8 | predicted_SO | 1.9310 | boost | worse |
| home | PIT | batter | RF | Esmerlyn Valdez | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_SO | -1.8890 | deboost | better |
| home | PIT | batter | 1B | Spencer Horwitz | worse | 11 | 5 | 6 | 4 | 7 | predicted_SO | 1.5180 | boost | worse |
| away | LAD | batter | 1B | Freddie Freeman | worse | 11 | 4 | 7 | 5 | 6 | predicted_BB | 1.4180 | boost | better |
| home | PIT | batter | 3B | Nick Gonzales | worse | 11 | 2 | 9 | 1 | 10 | predicted_AB | -1.3200 | deboost | worse |
| home | PIT | batter | DH | Marcell Ozuna | worse | 11 | 3 | 8 | 4 | 7 | predicted_SO | -1.3060 | deboost | better |
| away | LAD | batter | LF | Ryan Ward | better | 11 | 5 | 6 | 6 | 5 | predicted_H | 1.1600 | boost | better |
| away | LAD | batter | RF | Kyle Tucker | better | 11 | 7 | 4 | 8 | 3 | predicted_AB | 1.1510 | boost | better |
| away | LAD | batter | C | Dalton Rushing | boosted | 10 | 6 | 4 | 5 | 5 | predicted_SO | 1.0200 | boost | worse |
| home | PIT | batter | LF | Bryan Reynolds | worse | 7 | 3 | 4 | 2 | 5 | predicted_SO | 1.0160 | boost | worse |
| away | LAD | batter | 2B | Alex Freeland | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_SO | -1.0080 | deboost | better |
| away | LAD | pitcher | Starter | Justin Wrobleski | neutral | 2 | 1 | 1 | 1 | 1 | predicted_SO | 1.0000 | boost | better |
| away | LAD | pitcher | Middle Reliever | Blake Treinen | worse | 2 | 0 | 2 | 0 | 2 | predicted_SO | -1.0000 | deboost | worse |
| home | PIT | batter | 2B | Brandon Lowe | worse | 9 | 0 | 9 | 1 | 8 | predicted_H | -0.9700 | deboost | worse |
| home | PIT | batter | C | Rafael Flores Jr. | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -0.8480 | deboost | better |
| away | LAD | batter | SS | Mookie Betts | worse | 11 | 4 | 7 | 3 | 8 | predicted_BB | 0.7750 | boost | better |
| home | PIT | batter | CF | Jake Mangum | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -0.7750 | deboost | better |
| away | LAD | batter | CF | Andy Pages | boosted | 10 | 6 | 4 | 5 | 5 | predicted_2B | 0.7680 | boost | better |
| home | PIT | pitcher | Middle Reliever | Carmen Mlodzinski | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | LAD | pitcher | Middle Reliever | Alex Vesia | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| home | PIT | pitcher | Starter | Mitch Keller | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
| home | PIT | pitcher | Middle Reliever | Mason Montgomery | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.1000 | deboost | worse |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Justin Wrobleski |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.2180 |
| ESPN Rank | 34 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0138 |
| Avg Velo | 89.4664 |
| Avg Spin | 2365.6427 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6.2000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 4 |
| Pre SO | 6 |
| Season ERA | 2.6214 |
| Season WHIP | 1.0049 |
| Role Avg IP | 6.4670 |
| Recent Avg IP | 6.5330 |
| Last Start IP | 6 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"opponent": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"edges": {
"quality_edge": 0.3668,
"offense_edge": 0.2007,
"opponent_offense_edge": 0.0954,
"defense_strength": 0.3399,
"opponent_defense_weakness": 0.0533,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0211,
"run_prevention": 0.9629,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "680736",
"profile": {
"available": true,
"pitcher_id": "680736",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 227.0,
"k_percent": 16.1,
"bb_percent": 5.1,
"woba": 0.255,
"xwoba": 0.31,
"sweet_spot_percent": 36.9,
"barrel_batted_rate": 7.0,
"hard_hit_percent": 42.5,
"avg_best_speed": 79.5405,
"avg_hyper_speed": 94.3426,
"whiff_percent": 17.2,
"swing_percent": 49.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.1554,
"command_and_miss": -0.6493,
"regression_edge": -1.5714,
"xwoba_edge": 0.1429,
"barrel_edge": 0.0667,
"hard_hit_edge": -0.5857,
"whiff_edge": -1.2,
"bb_edge": 0.975,
"pitch_design_score": -0.0138
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680736",
"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": 89.46644617136575,
"release_spin_rate": 2365.64267585064,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.46644617136575,
"release_spin_rate": 2365.64267585064,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4664,
"release_spin_rate": 2365.6427,
"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.0138,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0989,
"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.218,
"sample_weight": 0.908,
"run_prevention_factor": 1.0185,
"strikeout_factor": 0.9222,
"walk_factor": 0.9292,
"homer_factor": 1.0125,
"woba_minus_xwoba": -0.055,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "680736",
"espn_id": 4417203,
"player_name": "Justin Wrobleski",
"team": "LAD",
"role": "pitcher",
"espn_rank": 34,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 34,
"gp_value": 11.0,
"gp_rank": 359,
"gs_value": 10.0,
"gs_rank": 104,
"qs_value": 7.0,
"qs_rank": 20,
"era_value": 2.6213,
"era_rank": 9.0,
"w_value": 7.0,
"w_rank": 7,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 68.2,
"ip_rank": 62,
"h_value": 55.0,
"h_rank": 97,
"er_value": 20.0,
"er_rank": 135,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 44.0,
"k_rank": 125,
"k_per_9_value": 5.76699,
"k_per_9_rank": 54,
"whip_value": 1.0048,
"whip_rank": 11.0,
"war_value": 1.71,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0168,
"adjusted": 3
},
"predicted_H": {
"original": 6.0,
"factor": 1.0168,
"adjusted": 6
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9357,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0113,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9294,
"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": 64.2,
"ER": 17,
"H": 51,
"BB": 13,
"SO": 42,
"HR": 4,
"ERA": 2.3659793814432994,
"WHIP": 0.9896907216494847,
"K9": 5.845360824742269,
"HR9": 0.5567010309278352,
"games_pitched": 10,
"quality_starts": 7,
"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-04T00:00:00"
}{
"available": true,
"pitcher_id": "680736",
"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": 89.46644617136575,
"release_spin_rate": 2365.64267585064,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.46644617136575,
"release_spin_rate": 2365.64267585064,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4664,
"release_spin_rate": 2365.6427,
"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.0138,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0989,
"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": "680736",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 11,
"reference_playing_time": 6.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 32.2,
"ER": 15.0,
"R": 15.0,
"H": 29.0,
"BB": 4.0,
"SO": 29.0,
"HR": 4.0,
"BF": 131.0,
"Pitches": 475.0
},
"per_game": {
"IP": 6.2,
"ER": 3.0,
"R": 3.0,
"H": 5.8,
"BB": 0.8,
"SO": 5.8,
"HR": 0.8,
"BF": 26.2,
"Pitches": 95.0
},
"rates": {
"ERA": 4.1327,
"WHIP": 1.0102,
"ER_per_IP": 0.45918,
"H_per_IP": 0.88776,
"BB_per_IP": 0.12245,
"SO_per_IP": 0.88776,
"HR_per_IP": 0.12245
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 64.2,
"ER": 17.0,
"R": 17.0,
"H": 51.0,
"BB": 13.0,
"SO": 42.0,
"HR": 4.0,
"BF": 257.0,
"Pitches": 932.0
},
"per_game": {
"IP": 6.1,
"ER": 1.7,
"R": 1.7,
"H": 5.1,
"BB": 1.3,
"SO": 4.2,
"HR": 0.4,
"BF": 25.7,
"Pitches": 93.2
},
"rates": {
"ERA": 2.366,
"WHIP": 0.9897,
"ER_per_IP": 0.26289,
"H_per_IP": 0.78866,
"BB_per_IP": 0.20103,
"SO_per_IP": 0.64948,
"HR_per_IP": 0.06186
}
},
"season": {
"games": 11,
"totals": {
"IP": 68.2,
"ER": 20.0,
"R": 20.0,
"H": 55.0,
"BB": 14.0,
"SO": 44.0,
"HR": 4.0,
"BF": 274.0,
"Pitches": 992.0
},
"per_game": {
"IP": 6.1,
"ER": 1.8182,
"R": 1.8182,
"H": 5.0,
"BB": 1.2727,
"SO": 4.0,
"HR": 0.3636,
"BF": 24.9091,
"Pitches": 90.1818
},
"rates": {
"ERA": 2.6214,
"WHIP": 1.0049,
"ER_per_IP": 0.29126,
"H_per_IP": 0.80097,
"BB_per_IP": 0.20388,
"SO_per_IP": 0.64078,
"HR_per_IP": 0.05825
}
}
},
"weighted_prediction": {
"predicted_IP": 6.2,
"predicted_ER": 2.598,
"predicted_H": 5.72,
"predicted_BB": 1.494,
"predicted_SO": 5.308,
"predicted_HR": 0.685,
"predicted_ERA": 3.5753,
"predicted_WHIP": 1.1029
}
}{
"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.2,
"form": 6.2,
"final": 6.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.598,
"final": 1.8277,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 5.72,
"final": 3.9268,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 4.0,
"form": 1.494,
"final": 2.702,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 5.308,
"final": 5.1595,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.685,
"final": 0.3548,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5753,
"final": 3.5753,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1029,
"final": 1.1029,
"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 | Kyle Hurt |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2638 |
| ESPN Rank | 405 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1893 |
| Avg Velo | 93.0942 |
| Avg Spin | 1837.4415 |
| 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 | 4.2188 |
| Season WHIP | 1.2188 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"opponent": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"edges": {
"quality_edge": 0.3668,
"offense_edge": 0.2007,
"opponent_offense_edge": 0.0954,
"defense_strength": 0.3399,
"opponent_defense_weakness": 0.0533,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0211,
"run_prevention": 0.9629,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669165",
"profile": {
"available": true,
"pitcher_id": "669165",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 58.0,
"k_percent": 30.7,
"bb_percent": 10.2,
"woba": 0.296,
"xwoba": 0.281,
"sweet_spot_percent": 35.3,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 37.3,
"avg_best_speed": 79.8584,
"avg_hyper_speed": 94.2564,
"whiff_percent": 38.7,
"swing_percent": 53.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.4281,
"command_and_miss": 1.1093,
"regression_edge": 0.4286,
"xwoba_edge": 0.9714,
"barrel_edge": 0.3111,
"hard_hit_edge": 0.1571,
"whiff_edge": 1.8714,
"bb_edge": -0.3,
"pitch_design_score": 0.1893
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669165",
"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": 93.09421005722862,
"release_spin_rate": 1837.4414920782906,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 93.09421005722862,
"release_spin_rate": 1837.4414920782906,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0942,
"release_spin_rate": 1837.4415,
"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.1893,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.3522,
"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.2638,
"sample_weight": 0.45,
"run_prevention_factor": 0.9776,
"strikeout_factor": 1.0543,
"walk_factor": 1.0108,
"homer_factor": 0.9729,
"woba_minus_xwoba": 0.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669165",
"espn_id": 4306800,
"player_name": "Kyle Hurt",
"team": "LAD",
"role": "pitcher",
"espn_rank": 405,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 405,
"gp_value": 22.0,
"gp_rank": 141,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.2187,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 5.0,
"hld_rank": 79,
"ip_value": 21.1,
"ip_rank": 341,
"h_value": 17.0,
"h_rank": 363,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 9.0,
"bb_rank": 315,
"k_value": 27.0,
"k_rank": 255,
"k_per_9_value": 11.390625,
"k_per_9_rank": 20,
"whip_value": 1.2187,
"whip_rank": null,
"war_value": 0.0,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9899,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9899,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0049,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9878,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0244,
"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": 9,
"H": 11,
"BB": 7,
"SO": 11,
"HR": 2,
"ERA": 8.678571428571429,
"WHIP": 1.9285714285714288,
"K9": 10.607142857142858,
"HR9": 1.9285714285714288,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "669165",
"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": 93.09421005722862,
"release_spin_rate": 1837.4414920782906,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 93.09421005722862,
"release_spin_rate": 1837.4414920782906,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0942,
"release_spin_rate": 1837.4415,
"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.1893,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.3522,
"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.214,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4574,
"prior_weight": 0.5426
},
"role": "pitcher",
"player_id": "669165",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 22,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 8.0,
"R": 8.0,
"H": 7.0,
"BB": 5.0,
"SO": 7.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 92.0
},
"per_game": {
"IP": 1.0,
"ER": 1.6,
"R": 1.6,
"H": 1.4,
"BB": 1.0,
"SO": 1.4,
"HR": 0.2,
"BF": 4.8,
"Pitches": 18.4
},
"rates": {
"ERA": 16.6154,
"WHIP": 2.7692,
"ER_per_IP": 1.84615,
"H_per_IP": 1.61538,
"BB_per_IP": 1.15385,
"SO_per_IP": 1.61538,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 9.0,
"R": 9.0,
"H": 11.0,
"BB": 7.0,
"SO": 11.0,
"HR": 2.0,
"BF": 43.0,
"Pitches": 151.0
},
"per_game": {
"IP": 1.0,
"ER": 0.9,
"R": 0.9,
"H": 1.1,
"BB": 0.7,
"SO": 1.1,
"HR": 0.2,
"BF": 4.3,
"Pitches": 15.1
},
"rates": {
"ERA": 8.6786,
"WHIP": 1.9286,
"ER_per_IP": 0.96429,
"H_per_IP": 1.17857,
"BB_per_IP": 0.75,
"SO_per_IP": 1.17857,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 22,
"totals": {
"IP": 21.1,
"ER": 10.0,
"R": 10.0,
"H": 17.0,
"BB": 9.0,
"SO": 27.0,
"HR": 2.0,
"BF": 88.0,
"Pitches": 305.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4545,
"R": 0.4545,
"H": 0.7727,
"BB": 0.4091,
"SO": 1.2273,
"HR": 0.0909,
"BF": 4.0,
"Pitches": 13.8636
},
"rates": {
"ERA": 4.2188,
"WHIP": 1.2188,
"ER_per_IP": 0.46875,
"H_per_IP": 0.79688,
"BB_per_IP": 0.42188,
"SO_per_IP": 1.26562,
"HR_per_IP": 0.09375
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.841,
"predicted_H": 1.115,
"predicted_BB": 0.594,
"predicted_SO": 1.145,
"predicted_HR": 0.167,
"predicted_ERA": 7.5688,
"predicted_WHIP": 1.7091
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5792,
"form_weight": 0.4208,
"form_reliability": 0.4574,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.214,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4574,
"prior_weight": 0.5426
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.841,
"final": 0.3539,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.115,
"final": 0.4691,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.594,
"final": 0.2499,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 1.145,
"final": 1.6403,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.167,
"final": 0.0703,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 7.5688,
"final": 7.5688,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.7091,
"final": 1.7091,
"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 | Tanner Scott |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2836 |
| ESPN Rank | 167 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.6024 |
| Season WHIP | 0.7952 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"opponent": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"edges": {
"quality_edge": 0.3668,
"offense_edge": 0.2007,
"opponent_offense_edge": 0.0954,
"defense_strength": 0.3399,
"opponent_defense_weakness": 0.0533,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0211,
"run_prevention": 0.9629,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656945",
"profile": {
"available": true,
"pitcher_id": "656945",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 81.0,
"k_percent": 30.8,
"bb_percent": 2.9,
"woba": 0.237,
"xwoba": 0.279,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 29.0,
"avg_best_speed": 79.6485,
"avg_hyper_speed": 93.0071,
"whiff_percent": 32.8,
"swing_percent": 57.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.7891,
"command_and_miss": 1.1857,
"regression_edge": -1.2,
"xwoba_edge": 1.0286,
"barrel_edge": -0.3111,
"hard_hit_edge": 1.3429,
"whiff_edge": 1.0286,
"bb_edge": 1.525,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656945",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2836,
"sample_weight": 0.45,
"run_prevention_factor": 0.9759,
"strikeout_factor": 1.0393,
"walk_factor": 0.9451,
"homer_factor": 0.9731,
"woba_minus_xwoba": -0.042,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656945",
"espn_id": 35135,
"player_name": "Tanner Scott",
"team": "LAD",
"role": "pitcher",
"espn_rank": 167,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 167,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.6024,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 6.0,
"sv_rank": 21,
"hld_value": 5.0,
"hld_rank": 79,
"ip_value": 27.2,
"ip_rank": 256,
"h_value": 19.0,
"h_rank": 317,
"er_value": 8.0,
"er_rank": 367,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 3.0,
"bb_rank": 525,
"k_value": 32.0,
"k_rank": 196,
"k_per_9_value": 10.409638,
"k_per_9_rank": 20,
"whip_value": 0.7951,
"whip_rank": null,
"war_value": 0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9892,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9892,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9753,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9879,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0177,
"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": 1,
"SO": 14,
"HR": 2,
"ERA": 4.821428571428571,
"WHIP": 1.1785714285714286,
"K9": 13.5,
"HR9": 1.9285714285714284,
"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-09T00:00:00"
}{
"available": false,
"pitcher_id": "656945",
"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.466,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5222,
"prior_weight": 0.4778
},
"role": "pitcher",
"player_id": "656945",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 5.0,
"R": 5.0,
"H": 8.0,
"BB": 0.0,
"SO": 4.0,
"HR": 2.0,
"BF": 20.0,
"Pitches": 76.0
},
"per_game": {
"IP": 0.2,
"ER": 1.0,
"R": 1.0,
"H": 1.6,
"BB": 0.0,
"SO": 0.8,
"HR": 0.4,
"BF": 4.0,
"Pitches": 15.2
},
"rates": {
"ERA": 11.25,
"WHIP": 2.0,
"ER_per_IP": 1.25,
"H_per_IP": 2.0,
"BB_per_IP": 0.0,
"SO_per_IP": 1.0,
"HR_per_IP": 0.5
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 5.0,
"R": 5.0,
"H": 10.0,
"BB": 1.0,
"SO": 14.0,
"HR": 2.0,
"BF": 39.0,
"Pitches": 164.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 1.0,
"BB": 0.1,
"SO": 1.4,
"HR": 0.2,
"BF": 3.9,
"Pitches": 16.4
},
"rates": {
"ERA": 4.8214,
"WHIP": 1.1786,
"ER_per_IP": 0.53571,
"H_per_IP": 1.07143,
"BB_per_IP": 0.10714,
"SO_per_IP": 1.5,
"HR_per_IP": 0.21429
}
},
"season": {
"games": 30,
"totals": {
"IP": 27.2,
"ER": 8.0,
"R": 8.0,
"H": 19.0,
"BB": 3.0,
"SO": 32.0,
"HR": 4.0,
"BF": 104.0,
"Pitches": 402.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2667,
"R": 0.2667,
"H": 0.6333,
"BB": 0.1,
"SO": 1.0667,
"HR": 0.1333,
"BF": 3.4667,
"Pitches": 13.4
},
"rates": {
"ERA": 2.6024,
"WHIP": 0.7952,
"ER_per_IP": 0.28916,
"H_per_IP": 0.68675,
"BB_per_IP": 0.10843,
"SO_per_IP": 1.15663,
"HR_per_IP": 0.14458
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.603,
"predicted_H": 1.102,
"predicted_BB": 0.189,
"predicted_SO": 0.993,
"predicted_HR": 0.22,
"predicted_ERA": 5.8867,
"predicted_WHIP": 1.4014
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5519,
"form_weight": 0.4481,
"form_reliability": 0.5222,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.466,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5222,
"prior_weight": 0.4778
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.603,
"final": 0.2702,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.102,
"final": 0.4938,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.189,
"final": 0.0847,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.993,
"final": 0.9969,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.22,
"final": 0.0986,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.8867,
"final": 5.8867,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4014,
"final": 1.4014,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Alex Vesia |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4148 |
| ESPN Rank | 210 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 0.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.8636 |
| Season WHIP | 1.0455 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"opponent": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"edges": {
"quality_edge": 0.3668,
"offense_edge": 0.2007,
"opponent_offense_edge": 0.0954,
"defense_strength": 0.3399,
"opponent_defense_weakness": 0.0533,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0211,
"run_prevention": 0.9629,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681911",
"profile": {
"available": true,
"pitcher_id": "681911",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 74.0,
"k_percent": 33.3,
"bb_percent": 13.3,
"woba": 0.211,
"xwoba": 0.251,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 33.3,
"avg_best_speed": 76.4268,
"avg_hyper_speed": 92.0272,
"whiff_percent": 34.6,
"swing_percent": 46.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.4248,
"command_and_miss": 0.9164,
"regression_edge": -1.1429,
"xwoba_edge": 1.8286,
"barrel_edge": 0.6889,
"hard_hit_edge": 0.7286,
"whiff_edge": 1.2857,
"bb_edge": -1.075,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "681911",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.4148,
"sample_weight": 0.45,
"run_prevention_factor": 0.9647,
"strikeout_factor": 1.0504,
"walk_factor": 1.0387,
"homer_factor": 0.9374,
"woba_minus_xwoba": -0.04,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "681911",
"espn_id": 42622,
"player_name": "Alex Vesia",
"team": "LAD",
"role": "pitcher",
"espn_rank": 210,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 210,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.8636,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 9.0,
"hld_rank": 24,
"ip_value": 22.0,
"ip_rank": 337,
"h_value": 11.0,
"h_rank": 455,
"er_value": 7.0,
"er_rank": 403,
"hr_value": 0.0,
"hr_rank": 559,
"bb_value": 12.0,
"bb_rank": 228,
"k_value": 30.0,
"k_rank": 220,
"k_per_9_value": 12.272727,
"k_per_9_rank": 17,
"whip_value": 1.0454,
"whip_rank": null,
"war_value": 0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9841,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9841,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0174,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9718,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0227,
"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": 6.2,
"ER": 2,
"H": 3,
"BB": 4,
"SO": 9,
"HR": 0,
"ERA": 2.6999999999999997,
"WHIP": 1.05,
"K9": 12.149999999999999,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "681911",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.346,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.465,
"prior_weight": 0.535
},
"role": "pitcher",
"player_id": "681911",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 0.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.0,
"ER": 2.0,
"R": 2.0,
"H": 2.0,
"BB": 3.0,
"SO": 4.0,
"HR": 0.0,
"BF": 15.0,
"Pitches": 73.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.4,
"BB": 0.6,
"SO": 0.8,
"HR": 0.0,
"BF": 3.0,
"Pitches": 14.6
},
"rates": {
"ERA": 6.0,
"WHIP": 1.6667,
"ER_per_IP": 0.66667,
"H_per_IP": 0.66667,
"BB_per_IP": 1.0,
"SO_per_IP": 1.33333,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 6.2,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 4.0,
"SO": 9.0,
"HR": 0.0,
"BF": 28.0,
"Pitches": 134.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 0.3,
"BB": 0.4,
"SO": 0.9,
"HR": 0.0,
"BF": 2.8,
"Pitches": 13.4
},
"rates": {
"ERA": 2.7,
"WHIP": 1.05,
"ER_per_IP": 0.3,
"H_per_IP": 0.45,
"BB_per_IP": 0.6,
"SO_per_IP": 1.35,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 22.0,
"ER": 7.0,
"R": 7.0,
"H": 11.0,
"BB": 12.0,
"SO": 30.0,
"HR": 0.0,
"BF": 90.0,
"Pitches": 408.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2414,
"R": 0.2414,
"H": 0.3793,
"BB": 0.4138,
"SO": 1.0345,
"HR": 0.0,
"BF": 3.1034,
"Pitches": 14.069
},
"rates": {
"ERA": 2.8636,
"WHIP": 1.0455,
"ER_per_IP": 0.31818,
"H_per_IP": 0.5,
"BB_per_IP": 0.54545,
"SO_per_IP": 1.36364,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.233,
"predicted_H": 0.377,
"predicted_BB": 0.27,
"predicted_SO": 0.55,
"predicted_HR": 0.037,
"predicted_ERA": 4.3015,
"predicted_WHIP": 1.3256
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.576,
"form_weight": 0.424,
"form_reliability": 0.465,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.346,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.465,
"prior_weight": 0.535
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.233,
"final": 0.0988,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.377,
"final": 0.7359,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.27,
"final": 0.1145,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.55,
"final": 0.8092,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.037,
"final": 0.0157,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.3015,
"final": 4.3015,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3256,
"final": 1.3256,
"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 | Blake Treinen |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2774 |
| ESPN Rank | 289 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0335 |
| Avg Velo | 89.1157 |
| Avg Spin | 2401.1092 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 2.2131 |
| Season WHIP | 1.1803 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"opponent": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"edges": {
"quality_edge": 0.3668,
"offense_edge": 0.2007,
"opponent_offense_edge": 0.0954,
"defense_strength": 0.3399,
"opponent_defense_weakness": 0.0533,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0211,
"run_prevention": 0.9629,
"strikeout": 1.0034
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "595014",
"profile": {
"available": true,
"pitcher_id": "595014",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 66.0,
"k_percent": 24.7,
"bb_percent": 11.2,
"woba": 0.315,
"xwoba": 0.361,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 14.5,
"hard_hit_percent": 42.9,
"avg_best_speed": 76.3685,
"avg_hyper_speed": 94.942,
"whiff_percent": 27.3,
"swing_percent": 45.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.9096,
"command_and_miss": 0.1036,
"regression_edge": -1.3143,
"xwoba_edge": -1.3143,
"barrel_edge": -1.6,
"hard_hit_edge": -0.6429,
"whiff_edge": 0.2429,
"bb_edge": -0.55,
"pitch_design_score": -0.0335
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "595014",
"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": 89.11565815883463,
"release_spin_rate": 2401.1091989546403,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.11565815883463,
"release_spin_rate": 2401.1091989546403,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1157,
"release_spin_rate": 2401.1092,
"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.0335,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2392,
"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.2774,
"sample_weight": 0.45,
"run_prevention_factor": 1.0236,
"strikeout_factor": 1.0095,
"walk_factor": 1.0198,
"homer_factor": 1.0869,
"woba_minus_xwoba": -0.046,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "595014",
"espn_id": 32185,
"player_name": "Blake Treinen",
"team": "LAD",
"role": "pitcher",
"espn_rank": 289,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 289,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.5409,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 20.1,
"ip_rank": 358,
"h_value": 18.0,
"h_rank": 339,
"er_value": 8.0,
"er_rank": 367,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 22.0,
"k_rank": 310,
"k_per_9_value": 9.737705,
"k_per_9_rank": 23,
"whip_value": 1.377,
"whip_rank": null,
"war_value": 0.14,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0106,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0106,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0089,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0391,
"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": 7.2,
"ER": 2,
"H": 3,
"BB": 6,
"SO": 10,
"HR": 0,
"ERA": 2.347826086956522,
"WHIP": 1.173913043478261,
"K9": 11.73913043478261,
"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-09T00:00:00"
}{
"available": true,
"pitcher_id": "595014",
"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": 89.11565815883463,
"release_spin_rate": 2401.1091989546403,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.11565815883463,
"release_spin_rate": 2401.1091989546403,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1157,
"release_spin_rate": 2401.1092,
"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.0335,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2392,
"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.017,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4455,
"prior_weight": 0.5545
},
"role": "pitcher",
"player_id": "595014",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.2,
"ER": 2.0,
"R": 2.0,
"H": 2.0,
"BB": 4.0,
"SO": 6.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 72.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.4,
"BB": 0.8,
"SO": 1.2,
"HR": 0.0,
"BF": 3.4,
"Pitches": 14.4
},
"rates": {
"ERA": 4.9091,
"WHIP": 1.6364,
"ER_per_IP": 0.54545,
"H_per_IP": 0.54545,
"BB_per_IP": 1.09091,
"SO_per_IP": 1.63636,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.2,
"ER": 2.0,
"R": 2.0,
"H": 3.0,
"BB": 6.0,
"SO": 10.0,
"HR": 0.0,
"BF": 32.0,
"Pitches": 126.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 0.3,
"BB": 0.6,
"SO": 1.0,
"HR": 0.0,
"BF": 3.2,
"Pitches": 12.6
},
"rates": {
"ERA": 2.3478,
"WHIP": 1.1739,
"ER_per_IP": 0.26087,
"H_per_IP": 0.3913,
"BB_per_IP": 0.78261,
"SO_per_IP": 1.30435,
"HR_per_IP": 0.0
}
},
"season": {
"games": 25,
"totals": {
"IP": 20.1,
"ER": 5.0,
"R": 5.0,
"H": 14.0,
"BB": 10.0,
"SO": 22.0,
"HR": 1.0,
"BF": 85.0,
"Pitches": 322.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 0.56,
"BB": 0.4,
"SO": 0.88,
"HR": 0.04,
"BF": 3.4,
"Pitches": 12.88
},
"rates": {
"ERA": 2.2131,
"WHIP": 1.1803,
"ER_per_IP": 0.2459,
"H_per_IP": 0.68852,
"BB_per_IP": 0.4918,
"SO_per_IP": 1.08197,
"HR_per_IP": 0.04918
}
}
},
"weighted_prediction": {
"predicted_IP": 0.1,
"predicted_ER": 0.213,
"predicted_H": 0.368,
"predicted_BB": 0.283,
"predicted_SO": 0.553,
"predicted_HR": 0.04,
"predicted_ERA": 3.973,
"predicted_WHIP": 1.3509
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5843,
"form_weight": 0.4157,
"form_reliability": 0.4455,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.017,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4455,
"prior_weight": 0.5545
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.1,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.213,
"final": 0.0885,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.368,
"final": 0.153,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.283,
"final": 0.7019,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.553,
"final": 0.8142,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.04,
"final": 0.0166,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.973,
"final": 3.973,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3509,
"final": 1.3509,
"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.242 | 0.000 | 0.000 | Hitting_2B | 0.238 | 0.000 | -0.238 | 0.000 |
| predicted_3B | 0.028 | 0.000 | 0.000 | Hitting_3B | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_AB | 4.230 | 4.000 | 7.000 | Hitting_AB | 3.813 | 5.000 | 0.187 | -1.000 |
| predicted_AVG | 0.260 | 0.000 | 0.286 | Hitting_AVG | 0.283 | 0.200 | -0.283 | -0.200 |
| predicted_BB | 0.770 | 0.000 | 1.000 | Hitting_BB | 0.758 | 0.000 | -0.758 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.036 | 0.000 | -0.036 | 0.000 |
| predicted_H | 1.100 | 0.000 | 2.000 | Hitting_H | 1.079 | 1.000 | -1.079 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.171 | 1.000 | -0.171 | -1.000 |
| predicted_OBP | 0.371 | 0.200 | 0.375 | Hitting_OBP | 0.408 | 0.200 | -0.208 | 0.000 |
| predicted_R | 0.730 | 0.000 | 1.000 | Hitting_R | 0.718 | 1.000 | -0.718 | -1.000 |
| predicted_RBI | 0.690 | 0.000 | 1.000 | Hitting_RBI | 0.635 | 2.000 | -0.635 | -2.000 |
| predicted_SLG | 0.502 | 0.000 | 0.286 | Hitting_SLG | 0.494 | 0.800 | -0.494 | -0.800 |
| predicted_SO | 1.069 | 3.000 | 2.000 | Hitting_SO | 1.052 | 2.000 | 1.948 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.0690 -> 3.0000 (boost 1.9310, 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.2300 -> 7.1760 (boost 2.9460, 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.3592 -> 1.4583 (boost 0.0991, 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 | 0 | 9 | predicted_SO: 1.9388 -> 2.0000 (boost 0.0612, worse) | predicted_2B: 0.4235 -> 0.0000 (deboost -0.4235, worse) | AB rounded to 7 (raw=7.18), rates preserved: AVG=0.299 HR/AB=0.055 |
| 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 | 0 | 1 | 0 | 1 | - | predicted_R: 1.4583 -> 1.0000 (deboost -0.4583, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5389 -> 0.2860 (deboost -0.2529, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 7 | 2 | 5 | 1 | 6 | predicted_HBP: 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2860 -> 0.5389 (boost 0.2529, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "660271",
"player_name": "Shohei Ohtani",
"position": "DH",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.242,
"predicted_3B": 0.028,
"predicted_AB": 4.23,
"predicted_AVG": 0.26,
"predicted_BB": 0.77,
"predicted_H": 1.1,
"predicted_HR": 0.21,
"predicted_OBP": 0.371,
"predicted_R": 0.73,
"predicted_RBI": 0.69,
"predicted_SLG": 0.502,
"predicted_SO": 1.069
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4235,
"predicted_3B": 0.0581,
"predicted_AB": 7.176,
"predicted_AVG": 0.2779,
"predicted_BB": 1.1911,
"predicted_H": 2.0604,
"predicted_HBP": 0.155,
"predicted_HR": 0.3756,
"predicted_OBP": 0.3835,
"predicted_R": 1.3592,
"predicted_RBI": 1.2971,
"predicted_SLG": 0.5183,
"predicted_SO": 1.9763
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.242,
"after": 0.4235,
"delta": 0.1815,
"percent_delta": 0.75,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0581,
"delta": 0.0301,
"percent_delta": 1.075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.23,
"after": 7.176,
"delta": 2.946,
"percent_delta": 0.6965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2779,
"delta": 0.0179,
"percent_delta": 0.0688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.77,
"after": 1.1911,
"delta": 0.4211,
"percent_delta": 0.5469,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1,
"after": 2.0604,
"delta": 0.9604,
"percent_delta": 0.8731,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.3756,
"delta": 0.1656,
"percent_delta": 0.7886,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.371,
"after": 0.3835,
"delta": 0.0125,
"percent_delta": 0.0337,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.73,
"after": 1.3592,
"delta": 0.6292,
"percent_delta": 0.8619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.69,
"after": 1.2971,
"delta": 0.6071,
"percent_delta": 0.8799,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.502,
"after": 0.5183,
"delta": 0.0163,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.069,
"after": 1.9763,
"delta": 0.9073,
"percent_delta": 0.8487,
"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.23,
"after": 7.176,
"delta": 2.946,
"percent_delta": 0.6965,
"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.4235,
"predicted_3B": 0.0581,
"predicted_AB": 7.176,
"predicted_AVG": 0.2992,
"predicted_BB": 1.2137,
"predicted_H": 2.1469,
"predicted_HBP": 0.155,
"predicted_HR": 0.3936,
"predicted_OBP": 0.4006,
"predicted_R": 1.4583,
"predicted_RBI": 1.3917,
"predicted_SLG": 0.5389,
"predicted_SO": 1.9388
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4235,
"after": 0.4235,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0581,
"after": 0.0581,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.176,
"after": 7.176,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2779,
"after": 0.2992,
"delta": 0.0213,
"percent_delta": 0.0766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1911,
"after": 1.2137,
"delta": 0.0226,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0604,
"after": 2.1469,
"delta": 0.0865,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.155,
"after": 0.155,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3756,
"after": 0.3936,
"delta": 0.018,
"percent_delta": 0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3835,
"after": 0.4006,
"delta": 0.0171,
"percent_delta": 0.0446,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.3592,
"after": 1.4583,
"delta": 0.0991,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2971,
"after": 1.3917,
"delta": 0.0946,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5183,
"after": 0.5389,
"delta": 0.0206,
"percent_delta": 0.0397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9763,
"after": 1.9388,
"delta": -0.0375,
"percent_delta": -0.019,
"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.3592,
"after": 1.4583,
"delta": 0.0991,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.18), rates preserved: AVG=0.299 HR/AB=0.055",
"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.4235,
"after": 0.0,
"delta": -0.4235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0581,
"after": 0.0,
"delta": -0.0581,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.176,
"after": 7.0,
"delta": -0.176,
"percent_delta": -0.0245,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2137,
"after": 1.0,
"delta": -0.2137,
"percent_delta": -0.1761,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 2.1469,
"after": 2.0,
"delta": -0.1469,
"percent_delta": -0.0684,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.155,
"after": 0.0,
"delta": -0.155,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3936,
"after": 0.0,
"delta": -0.3936,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.3917,
"after": 1.0,
"delta": -0.3917,
"percent_delta": -0.2815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9388,
"after": 2.0,
"delta": 0.0612,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 1,
"deboosted_metrics": 8,
"better_metrics": 0,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.9388,
"after": 2.0,
"delta": 0.0612,
"percent_delta": 0.0316,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4235,
"after": 0.0,
"delta": -0.4235,
"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=11.0, weight=0.107, BvP AVG=0.364)",
"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.8927,
"bvp": 0.1073
},
"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.4583,
"after": 1.0,
"delta": -0.4583,
"percent_delta": -0.3143,
"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.4583,
"after": 1.0,
"delta": -0.4583,
"percent_delta": -0.3143,
"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.2992,
"after": 0.286,
"delta": -0.0132,
"percent_delta": -0.0441,
"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.4006,
"after": 0.375,
"delta": -0.0256,
"percent_delta": -0.0639,
"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.5389,
"after": 0.286,
"delta": -0.2529,
"percent_delta": -0.4693,
"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.5389,
"after": 0.286,
"delta": -0.2529,
"percent_delta": -0.4693,
"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": 1.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": 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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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_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": 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.2992,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4006,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5389,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2992,
"delta": 0.0132,
"percent_delta": 0.0461,
"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.375,
"after": 0.4006,
"delta": 0.0256,
"percent_delta": 0.0682,
"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.5389,
"delta": 0.2529,
"percent_delta": 0.8843,
"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.286,
"after": 0.5389,
"delta": 0.2529,
"percent_delta": 0.8843,
"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.242,
"after": 0.0,
"delta": -0.242,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.23,
"after": 4.0,
"delta": -0.23,
"percent_delta": -0.0544,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2992,
"delta": 0.0392,
"percent_delta": 0.1508,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.77,
"after": 0.0,
"delta": -0.77,
"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.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.371,
"after": 0.4006,
"delta": 0.0296,
"percent_delta": 0.0798,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.73,
"after": 0.0,
"delta": -0.73,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.69,
"after": 0.0,
"delta": -0.69,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.502,
"after": 0.5389,
"delta": 0.0369,
"percent_delta": 0.0735,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.069,
"after": 3.0,
"delta": 1.931,
"percent_delta": 1.8064,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.069,
"after": 3.0,
"delta": 1.931,
"percent_delta": 1.8064,
"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.242 | - |
| predicted_3B | 0.028 | - |
| predicted_AB | 4.230 | - |
| predicted_AVG | 0.260 | - |
| predicted_BB | 0.770 | - |
| predicted_H | 1.100 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.371 | - |
| predicted_R | 0.730 | - |
| predicted_RBI | 0.690 | - |
| predicted_SLG | 0.502 | - |
| predicted_SO | 1.069 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.423 | 0.181 |
| predicted_3B | 0.058 | 0.030 |
| predicted_AB | 7.176 | 2.946 |
| predicted_AVG | 0.278 | 0.018 |
| predicted_BB | 1.191 | 0.421 |
| predicted_H | 2.060 | 0.960 |
| predicted_HBP | 0.155 | - |
| predicted_HR | 0.376 | 0.166 |
| predicted_OBP | 0.384 | 0.013 |
| predicted_R | 1.359 | 0.629 |
| predicted_RBI | 1.297 | 0.607 |
| predicted_SLG | 0.518 | 0.016 |
| predicted_SO | 1.976 | 0.907 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.423 | 0.000 |
| predicted_3B | 0.058 | 0.000 |
| predicted_AB | 7.176 | 0.000 |
| predicted_AVG | 0.299 | 0.021 |
| predicted_BB | 1.214 | 0.023 |
| predicted_H | 2.147 | 0.087 |
| predicted_HBP | 0.155 | 0.000 |
| predicted_HR | 0.394 | 0.018 |
| predicted_OBP | 0.401 | 0.017 |
| predicted_R | 1.458 | 0.099 |
| predicted_RBI | 1.392 | 0.095 |
| predicted_SLG | 0.539 | 0.021 |
| predicted_SO | 1.939 | -0.037 |
AB rounded to 7 (raw=7.18), rates preserved: AVG=0.299 HR/AB=0.055
| 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=11.0, weight=0.107, BvP AVG=0.364)
| 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.423 |
| predicted_3B | 0.000 | -0.058 |
| predicted_AB | 7.000 | -0.176 |
| predicted_AVG | 0.286 | -0.013 |
| predicted_BB | 1.000 | -0.214 |
| predicted_H | 2.000 | -0.147 |
| predicted_HR | 0.000 | -0.394 |
| predicted_OBP | 0.375 | -0.026 |
| predicted_R | 1.000 | -0.458 |
| predicted_RBI | 1.000 | -0.392 |
| predicted_SLG | 0.286 | -0.253 |
| predicted_SO | 2.000 | 0.061 |
Attached 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 | 1.000 | 1.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 | 3.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 | 6.000 | 1.000 | 0.000 | 2.000 | 6.000 | 5.000 | 2.000 | 7.000 | 0.2727 | 0.3333 | 0.5909 | 0.2727 | 0.0909 | 0.2727 | 0.0909 | 0.3182 |
| last_10 | 0.20 | 10 | - | 44.000 | 17.000 | 3.000 | 1.000 | 2.000 | 8.000 | 9.000 | 5.000 | 13.000 | 0.3864 | 0.4490 | 0.6364 | 0.3864 | 0.0454 | 0.1818 | 0.1136 | 0.2954 |
| season | 0.60 | 62 | - | 961.000 | 272.000 | 60.000 | 7.000 | 43.000 | 160.000 | 181.000 | 191.000 | 265.000 | 0.2830 | 0.4081 | 0.4943 | 0.2830 | 0.0447 | 0.1665 | 0.1988 | 0.2757 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6520 |
| predicted_3B | 0.0960 |
| predicted_AB | 10.8830 |
| predicted_AVG | 0.3004 |
| predicted_BB | 1.7210 |
| predicted_H | 3.2690 |
| predicted_HBP | 0.1550 |
| predicted_HR | 0.5840 |
| predicted_OBP | 0.3992 |
| predicted_R | 2.1510 |
| predicted_RBI | 2.0610 |
| predicted_SLG | 0.5388 |
| predicted_SO | 3.1180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2420 | 0.6520 | 0.4235 | model_form_blend |
| predicted_3B | 0.0280 | 0.0960 | 0.0581 | model_form_blend |
| predicted_AB | 4.2300 | 10.8830 | 7.1760 | model_form_blend |
| predicted_AVG | 0.2600 | 0.3004 | 0.2779 | model_form_blend |
| predicted_BB | 0.7700 | 1.7210 | 1.1911 | model_form_blend |
| predicted_H | 1.1000 | 3.2690 | 2.0604 | model_form_blend |
| predicted_HBP | - | 0.1550 | 0.1550 | form_only |
| predicted_HR | 0.2100 | 0.5840 | 0.3756 | model_form_blend |
| predicted_OBP | 0.3710 | 0.3992 | 0.3835 | model_form_blend |
| predicted_R | 0.7300 | 2.1510 | 1.3592 | model_form_blend |
| predicted_RBI | 0.6900 | 2.0610 | 1.2971 | model_form_blend |
| predicted_SLG | 0.5020 | 0.5388 | 0.5183 | model_form_blend |
| predicted_SO | 1.0690 | 3.1180 | 1.9763 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 3 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.283 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 3 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 29 |
| Pitching_ER | 3 |
| Pitching_ERA | 1.06 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 7 |
| Pitching_H | 6 |
| Pitching_HBP | 1 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.2 |
| Pitching_Pitches | 102 |
| Pitching_R | 4 |
| Pitching_SO | 6 |
| Pitching_Strikes | 61 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P-DH |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 660271 |
| playerID | 660271 |
| playerName | Shohei Ohtani |
| pos | TWP |
| started | True |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.8 |
| sl_bb_percent | 15.0 |
| sl_woba | 0.403 |
| sl_xwoba | 0.413 |
| sl_xba | 0.297 |
| sl_xslg | 0.55 |
| sl_sweet_spot_percent | 42.9 |
| sl_barrel_batted_rate | 15.9 |
| sl_hard_hit_percent | 52.5 |
| sl_exit_velocity_avg | 93.4 |
| sl_launch_angle_avg | 12.9 |
| sl_whiff_percent | 28.5 |
| 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.069 | 0.000 | 0.000 | Hitting_2B | 0.068 | 0.000 | -0.068 | 0.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 | 6.000 | Hitting_AB | 4.214 | 4.000 | -0.214 | 0.000 |
| predicted_AVG | 0.212 | 0.250 | 0.167 | Hitting_AVG | 0.180 | 0.000 | 0.070 | 0.250 |
| predicted_BB | 0.225 | 1.000 | 1.000 | Hitting_BB | 0.233 | 0.000 | 0.767 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.049 | 0.000 | -0.049 | 0.000 |
| predicted_H | 0.910 | 1.000 | 1.000 | Hitting_H | 0.757 | 0.000 | 0.243 | 1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.282 | 0.000 | -0.282 | 0.000 |
| predicted_OBP | 0.278 | 0.400 | 0.286 | Hitting_OBP | 0.229 | 0.000 | 0.171 | 0.400 |
| predicted_R | 0.618 | 1.000 | 1.000 | Hitting_R | 0.621 | 0.000 | 0.379 | 1.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.709 | 0.000 | -0.709 | 0.000 |
| predicted_SLG | 0.351 | 0.250 | 0.167 | Hitting_SLG | 0.396 | 0.000 | -0.146 | 0.250 |
| predicted_SO | 0.598 | 1.000 | 1.000 | Hitting_SO | 0.592 | 0.000 | 0.408 | 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_BB: 0.2250 -> 1.0000 (boost 0.7750, better) |
| Biggest Deboost | predicted_RBI: 0.4300 -> 0.0000 (deboost -0.4300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 11 | 8 | 3 | 7 | 4 | predicted_AB: 4.3100 -> 6.4784 (boost 2.1684, better) | predicted_OBP: 0.2780 -> 0.2648 (deboost -0.0132, 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 | 3 | 2 | 3 | 2 | predicted_R: 0.9288 -> 0.9965 (boost 0.0677, better) | predicted_OBP: 0.2648 -> 0.2548 (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 | 1 | 7 | predicted_RBI: 0.7480 -> 1.0000 (boost 0.2520, better) | predicted_AB: 6.4784 -> 6.0000 (deboost -0.4784, worse) | AB rounded to 6 (raw=6.48), rates preserved: AVG=0.203 HR/AB=0.037 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=10.0, weight=0.100, BvP AVG=0.100) |
| 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.2548 -> 0.2860 (boost 0.0312, better) | predicted_SLG: 0.3394 -> 0.1670 (deboost -0.1724, 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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.3394 (boost 0.1724, better) | predicted_OBP: 0.2860 -> 0.2548 (deboost -0.0312, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "605141",
"player_name": "Mookie Betts",
"position": "SS",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.069,
"predicted_3B": 0.0,
"predicted_AB": 4.31,
"predicted_AVG": 0.212,
"predicted_BB": 0.225,
"predicted_H": 0.91,
"predicted_HR": 0.12,
"predicted_OBP": 0.278,
"predicted_R": 0.618,
"predicted_RBI": 0.43,
"predicted_SLG": 0.351,
"predicted_SO": 0.598
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1663,
"predicted_3B": 0.0009,
"predicted_AB": 6.4784,
"predicted_AVG": 0.2002,
"predicted_BB": 0.4437,
"predicted_H": 1.261,
"predicted_HBP": 0.066,
"predicted_HR": 0.2281,
"predicted_OBP": 0.2648,
"predicted_R": 0.9288,
"predicted_RBI": 0.6972,
"predicted_SLG": 0.3445,
"predicted_SO": 0.8301
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.069,
"after": 0.1663,
"delta": 0.0973,
"percent_delta": 1.4101,
"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.31,
"after": 6.4784,
"delta": 2.1684,
"percent_delta": 0.5031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.2002,
"delta": -0.0118,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.225,
"after": 0.4437,
"delta": 0.2187,
"percent_delta": 0.972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.261,
"delta": 0.351,
"percent_delta": 0.3857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.2281,
"delta": 0.1081,
"percent_delta": 0.9008,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2648,
"delta": -0.0132,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.618,
"after": 0.9288,
"delta": 0.3108,
"percent_delta": 0.5029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.6972,
"delta": 0.2672,
"percent_delta": 0.6214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.351,
"after": 0.3445,
"delta": -0.0065,
"percent_delta": -0.0185,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.598,
"after": 0.8301,
"delta": 0.2321,
"percent_delta": 0.3881,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 8,
"deboosted_metrics": 3,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.31,
"after": 6.4784,
"delta": 2.1684,
"percent_delta": 0.5031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.278,
"after": 0.2648,
"delta": -0.0132,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 32
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1663,
"predicted_3B": 0.0009,
"predicted_AB": 6.4784,
"predicted_AVG": 0.2028,
"predicted_BB": 0.4521,
"predicted_H": 1.314,
"predicted_HBP": 0.066,
"predicted_HR": 0.239,
"predicted_OBP": 0.2548,
"predicted_R": 0.9965,
"predicted_RBI": 0.748,
"predicted_SLG": 0.3394,
"predicted_SO": 0.8143
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1663,
"after": 0.1663,
"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.4784,
"after": 6.4784,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2002,
"after": 0.2028,
"delta": 0.0026,
"percent_delta": 0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4437,
"after": 0.4521,
"delta": 0.0084,
"percent_delta": 0.0189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.261,
"after": 1.314,
"delta": 0.053,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.066,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2281,
"after": 0.239,
"delta": 0.0109,
"percent_delta": 0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2648,
"after": 0.2548,
"delta": -0.01,
"percent_delta": -0.0378,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9288,
"after": 0.9965,
"delta": 0.0677,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6972,
"after": 0.748,
"delta": 0.0508,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3445,
"after": 0.3394,
"delta": -0.0051,
"percent_delta": -0.0148,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8301,
"after": 0.8143,
"delta": -0.0158,
"percent_delta": -0.019,
"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_R",
"before": 0.9288,
"after": 0.9965,
"delta": 0.0677,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2648,
"after": 0.2548,
"delta": -0.01,
"percent_delta": -0.0378,
"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.203 HR/AB=0.037",
"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.1663,
"after": 0.0,
"delta": -0.1663,
"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.4784,
"after": 6.0,
"delta": -0.4784,
"percent_delta": -0.0738,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4521,
"after": 0.0,
"delta": -0.4521,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.314,
"after": 1.0,
"delta": -0.314,
"percent_delta": -0.239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.0,
"delta": -0.066,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.239,
"after": 0.0,
"delta": -0.239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.748,
"after": 1.0,
"delta": 0.252,
"percent_delta": 0.3369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8143,
"after": 1.0,
"delta": 0.1857,
"percent_delta": 0.228,
"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.748,
"after": 1.0,
"delta": 0.252,
"percent_delta": 0.3369,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.4784,
"after": 6.0,
"delta": -0.4784,
"percent_delta": -0.0738,
"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": 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.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": 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.9965,
"after": 1.0,
"delta": 0.0035,
"percent_delta": 0.0035,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.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.2028,
"after": 0.167,
"delta": -0.0358,
"percent_delta": -0.1765,
"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.2548,
"after": 0.286,
"delta": 0.0312,
"percent_delta": 0.1224,
"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.3394,
"after": 0.167,
"delta": -0.1724,
"percent_delta": -0.508,
"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.2548,
"after": 0.286,
"delta": 0.0312,
"percent_delta": 0.1224,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3394,
"after": 0.167,
"delta": -0.1724,
"percent_delta": -0.508,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 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.2028,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2548,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3394,
"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.167,
"after": 0.2028,
"delta": 0.0358,
"percent_delta": 0.2145,
"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.286,
"after": 0.2548,
"delta": -0.0312,
"percent_delta": -0.109,
"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.167,
"after": 0.3394,
"delta": 0.1724,
"percent_delta": 1.0326,
"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.3394,
"delta": 0.1724,
"percent_delta": 1.0326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2548,
"delta": -0.0312,
"percent_delta": -0.109,
"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.069,
"after": 0.0,
"delta": -0.069,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.31,
"after": 4.0,
"delta": -0.31,
"percent_delta": -0.0719,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.212,
"after": 0.2028,
"delta": -0.0092,
"percent_delta": -0.0434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.225,
"after": 1.0,
"delta": 0.775,
"percent_delta": 3.4444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.0,
"delta": 0.09,
"percent_delta": 0.0989,
"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.278,
"after": 0.2548,
"delta": -0.0232,
"percent_delta": -0.0835,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.618,
"after": 1.0,
"delta": 0.382,
"percent_delta": 0.6181,
"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.351,
"after": 0.3394,
"delta": -0.0116,
"percent_delta": -0.033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.598,
"after": 1.0,
"delta": 0.402,
"percent_delta": 0.6722,
"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_BB",
"before": 0.225,
"after": 1.0,
"delta": 0.775,
"percent_delta": 3.4444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.0,
"delta": -0.43,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.069 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.310 | - |
| predicted_AVG | 0.212 | - |
| predicted_BB | 0.225 | - |
| predicted_H | 0.910 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.278 | - |
| predicted_R | 0.618 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.351 | - |
| predicted_SO | 0.598 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.166 | 0.097 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 6.478 | 2.168 |
| predicted_AVG | 0.200 | -0.012 |
| predicted_BB | 0.444 | 0.219 |
| predicted_H | 1.261 | 0.351 |
| predicted_HBP | 0.066 | - |
| predicted_HR | 0.228 | 0.108 |
| predicted_OBP | 0.265 | -0.013 |
| predicted_R | 0.929 | 0.311 |
| predicted_RBI | 0.697 | 0.267 |
| predicted_SLG | 0.344 | -0.007 |
| predicted_SO | 0.830 | 0.232 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.166 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 6.478 | 0.000 |
| predicted_AVG | 0.203 | 0.003 |
| predicted_BB | 0.452 | 0.008 |
| predicted_H | 1.314 | 0.053 |
| predicted_HBP | 0.066 | 0.000 |
| predicted_HR | 0.239 | 0.011 |
| predicted_OBP | 0.255 | -0.010 |
| predicted_R | 0.997 | 0.068 |
| predicted_RBI | 0.748 | 0.051 |
| predicted_SLG | 0.339 | -0.005 |
| predicted_SO | 0.814 | -0.016 |
AB rounded to 6 (raw=6.48), rates preserved: AVG=0.203 HR/AB=0.037
| 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=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 | 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 | 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.166 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 6.000 | -0.478 |
| predicted_AVG | 0.167 | -0.036 |
| predicted_BB | 1.000 | 0.548 |
| predicted_H | 1.000 | -0.314 |
| predicted_HR | 0.000 | -0.239 |
| predicted_OBP | 0.286 | 0.031 |
| predicted_R | 1.000 | 0.003 |
| predicted_RBI | 1.000 | 0.252 |
| predicted_SLG | 0.167 | -0.172 |
| predicted_SO | 1.000 | 0.186 |
Attached 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 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 19.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 2.000 | 1.000 | 0.1579 | 0.2381 | 0.2105 | 0.1579 | 0.0000 | 0.0000 | 0.1053 | 0.0526 |
| last_10 | 0.20 | 10 | - | 39.000 | 8.000 | 2.000 | 0.000 | 0.000 | 2.000 | 5.000 | 5.000 | 4.000 | 0.2051 | 0.2955 | 0.2564 | 0.2051 | 0.0000 | 0.0513 | 0.1282 | 0.1026 |
| season | 0.60 | 32 | - | 434.000 | 78.000 | 7.000 | 0.000 | 29.000 | 73.000 | 63.000 | 23.000 | 61.000 | 0.1797 | 0.2275 | 0.3963 | 0.1797 | 0.0668 | 0.1682 | 0.0530 | 0.1406 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2940 |
| predicted_3B | 0.0020 |
| predicted_AB | 9.3260 |
| predicted_AVG | 0.1847 |
| predicted_BB | 0.7310 |
| predicted_H | 1.7220 |
| predicted_HBP | 0.0660 |
| predicted_HR | 0.3700 |
| predicted_OBP | 0.2475 |
| predicted_R | 1.3370 |
| predicted_RBI | 1.0480 |
| predicted_SLG | 0.3359 |
| predicted_SO | 1.1350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0690 | 0.2940 | 0.1663 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.3100 | 9.3260 | 6.4784 | model_form_blend |
| predicted_AVG | 0.2120 | 0.1847 | 0.2002 | model_form_blend |
| predicted_BB | 0.2250 | 0.7310 | 0.4437 | model_form_blend |
| predicted_H | 0.9100 | 1.7220 | 1.2610 | model_form_blend |
| predicted_HBP | - | 0.0660 | 0.0660 | form_only |
| predicted_HR | 0.1200 | 0.3700 | 0.2281 | model_form_blend |
| predicted_OBP | 0.2780 | 0.2475 | 0.2648 | model_form_blend |
| predicted_R | 0.6180 | 1.3370 | 0.9288 | model_form_blend |
| predicted_RBI | 0.4300 | 1.0480 | 0.6972 | model_form_blend |
| predicted_SLG | 0.3510 | 0.3359 | 0.3445 | model_form_blend |
| predicted_SO | 0.5980 | 1.1350 | 0.8301 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 103 |
| Season rows before report date | 103 |
| Report year | 2026 |
| Profile rows used | 102 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.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 | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 605141 |
| playerID | 605141 |
| playerName | Mookie Betts |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 11.9 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.269 |
| sl_xwoba | 0.326 |
| sl_xba | 0.262 |
| sl_xslg | 0.426 |
| sl_sweet_spot_percent | 41.2 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 35.1 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 19.9 |
| sl_whiff_percent | 13.8 |
| sl_swing_percent | 41.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.264 | 0.000 | 0.000 | Hitting_2B | 0.264 | 1.000 | -0.264 | -1.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 4.260 | 3.000 | 7.000 | Hitting_AB | 3.778 | 4.000 | -0.778 | -1.000 |
| predicted_AVG | 0.264 | 0.000 | 0.286 | Hitting_AVG | 0.274 | 0.250 | -0.274 | -0.250 |
| predicted_BB | 0.582 | 2.000 | 1.000 | Hitting_BB | 0.582 | 1.000 | 1.418 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.120 | 0.000 | 2.000 | Hitting_H | 1.033 | 1.000 | -1.033 | -1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.138 | 0.000 | -0.138 | 0.000 |
| predicted_OBP | 0.367 | 0.400 | 0.375 | Hitting_OBP | 0.371 | 0.400 | 0.029 | 0.000 |
| predicted_R | 0.556 | 0.000 | 1.000 | Hitting_R | 0.556 | 2.000 | -0.556 | -2.000 |
| predicted_RBI | 0.600 | 0.000 | 1.000 | Hitting_RBI | 0.540 | 0.000 | -0.540 | 0.000 |
| predicted_SLG | 0.485 | 0.000 | 0.286 | Hitting_SLG | 0.462 | 0.500 | -0.462 | -0.500 |
| predicted_SO | 0.741 | 0.000 | 1.000 | Hitting_SO | 0.741 | 0.000 | -0.741 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.5820 -> 2.0000 (boost 1.4180, 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 -> 6.6595 (boost 2.3995, 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.1583 -> 1.2427 (boost 0.0844, 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_AB: 6.6595 -> 7.0000 (boost 0.3405, better) | predicted_2B: 0.4615 -> 0.0000 (deboost -0.4615, worse) | AB rounded to 7 (raw=6.66), rates preserved: AVG=0.313 HR/AB=0.044 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=18.0, weight=0.150, BvP AVG=0.500) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2427 -> 1.0000 (deboost -0.2427, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5198 -> 0.2860 (deboost -0.2338, 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: 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 |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2860 -> 0.5198 (boost 0.2338, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "518692",
"player_name": "Freddie Freeman",
"position": "1B",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.264,
"predicted_3B": 0.017,
"predicted_AB": 4.26,
"predicted_AVG": 0.264,
"predicted_BB": 0.582,
"predicted_H": 1.12,
"predicted_HR": 0.17,
"predicted_OBP": 0.367,
"predicted_R": 0.556,
"predicted_RBI": 0.6,
"predicted_SLG": 0.485,
"predicted_SO": 0.741
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4615,
"predicted_3B": 0.021,
"predicted_AB": 6.6595,
"predicted_AVG": 0.2892,
"predicted_BB": 0.9196,
"predicted_H": 1.9994,
"predicted_HBP": 0.034,
"predicted_HR": 0.2783,
"predicted_OBP": 0.3818,
"predicted_R": 1.1583,
"predicted_RBI": 0.9871,
"predicted_SLG": 0.504,
"predicted_SO": 1.2138
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.264,
"after": 0.4615,
"delta": 0.1975,
"percent_delta": 0.7481,
"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": 4.26,
"after": 6.6595,
"delta": 2.3995,
"percent_delta": 0.5633,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.2892,
"delta": 0.0252,
"percent_delta": 0.0955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.582,
"after": 0.9196,
"delta": 0.3376,
"percent_delta": 0.5801,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.12,
"after": 1.9994,
"delta": 0.8794,
"percent_delta": 0.7852,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.2783,
"delta": 0.1083,
"percent_delta": 0.6371,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.367,
"after": 0.3818,
"delta": 0.0148,
"percent_delta": 0.0403,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 1.1583,
"delta": 0.6023,
"percent_delta": 1.0833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.9871,
"delta": 0.3871,
"percent_delta": 0.6452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.485,
"after": 0.504,
"delta": 0.019,
"percent_delta": 0.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.741,
"after": 1.2138,
"delta": 0.4728,
"percent_delta": 0.6381,
"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": 6.6595,
"delta": 2.3995,
"percent_delta": 0.5633,
"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.4615,
"predicted_3B": 0.021,
"predicted_AB": 6.6595,
"predicted_AVG": 0.3128,
"predicted_BB": 0.9371,
"predicted_H": 2.0834,
"predicted_HBP": 0.034,
"predicted_HR": 0.2916,
"predicted_OBP": 0.3976,
"predicted_R": 1.2427,
"predicted_RBI": 1.0591,
"predicted_SLG": 0.5198,
"predicted_SO": 1.1907
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4615,
"after": 0.4615,
"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.6595,
"after": 6.6595,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2892,
"after": 0.3128,
"delta": 0.0236,
"percent_delta": 0.0816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9196,
"after": 0.9371,
"delta": 0.0175,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9994,
"after": 2.0834,
"delta": 0.084,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.2783,
"after": 0.2916,
"delta": 0.0133,
"percent_delta": 0.0478,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3818,
"after": 0.3976,
"delta": 0.0158,
"percent_delta": 0.0414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1583,
"after": 1.2427,
"delta": 0.0844,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9871,
"after": 1.0591,
"delta": 0.072,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.504,
"after": 0.5198,
"delta": 0.0158,
"percent_delta": 0.0313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2138,
"after": 1.1907,
"delta": -0.0231,
"percent_delta": -0.019,
"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.1583,
"after": 1.2427,
"delta": 0.0844,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.66), rates preserved: AVG=0.313 HR/AB=0.044",
"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.4615,
"after": 0.0,
"delta": -0.4615,
"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.6595,
"after": 7.0,
"delta": 0.3405,
"percent_delta": 0.0511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9371,
"after": 1.0,
"delta": 0.0629,
"percent_delta": 0.0671,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0834,
"after": 2.0,
"delta": -0.0834,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"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.2916,
"after": 0.0,
"delta": -0.2916,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0591,
"after": 1.0,
"delta": -0.0591,
"percent_delta": -0.0558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1907,
"after": 1.0,
"delta": -0.1907,
"percent_delta": -0.1602,
"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": 6.6595,
"after": 7.0,
"delta": 0.3405,
"percent_delta": 0.0511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4615,
"after": 0.0,
"delta": -0.4615,
"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=18.0, weight=0.150, BvP AVG=0.500)",
"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.85,
"bvp": 0.15
},
"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": 1.2427,
"after": 1.0,
"delta": -0.2427,
"percent_delta": -0.1953,
"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.2427,
"after": 1.0,
"delta": -0.2427,
"percent_delta": -0.1953,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.3128,
"after": 0.286,
"delta": -0.0268,
"percent_delta": -0.0857,
"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.3976,
"after": 0.375,
"delta": -0.0226,
"percent_delta": -0.0568,
"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.5198,
"after": 0.286,
"delta": -0.2338,
"percent_delta": -0.4498,
"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.5198,
"after": 0.286,
"delta": -0.2338,
"percent_delta": -0.4498,
"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": 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": 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": 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": 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": 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.3128,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3976,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5198,
"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.3128,
"delta": 0.0268,
"percent_delta": 0.0939,
"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.375,
"after": 0.3976,
"delta": 0.0226,
"percent_delta": 0.0603,
"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.5198,
"delta": 0.2338,
"percent_delta": 0.8175,
"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.5198,
"delta": 0.2338,
"percent_delta": 0.8175,
"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.264,
"after": 0.0,
"delta": -0.264,
"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.26,
"after": 3.0,
"delta": -1.26,
"percent_delta": -0.2958,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.264,
"after": 0.3128,
"delta": 0.0488,
"percent_delta": 0.1848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.582,
"after": 2.0,
"delta": 1.418,
"percent_delta": 2.4364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.12,
"after": 0.0,
"delta": -1.12,
"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.367,
"after": 0.3976,
"delta": 0.0306,
"percent_delta": 0.0834,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 0.0,
"delta": -0.556,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6,
"after": 0.0,
"delta": -0.6,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.485,
"after": 0.5198,
"delta": 0.0348,
"percent_delta": 0.0718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.741,
"after": 0.0,
"delta": -0.741,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.582,
"after": 2.0,
"delta": 1.418,
"percent_delta": 2.4364,
"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.264 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 4.260 | - |
| predicted_AVG | 0.264 | - |
| predicted_BB | 0.582 | - |
| predicted_H | 1.120 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.367 | - |
| predicted_R | 0.556 | - |
| predicted_RBI | 0.600 | - |
| predicted_SLG | 0.485 | - |
| predicted_SO | 0.741 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.462 | 0.198 |
| predicted_3B | 0.021 | 0.004 |
| predicted_AB | 6.660 | 2.400 |
| predicted_AVG | 0.289 | 0.025 |
| predicted_BB | 0.920 | 0.338 |
| predicted_H | 1.999 | 0.879 |
| predicted_HBP | 0.034 | - |
| predicted_HR | 0.278 | 0.108 |
| predicted_OBP | 0.382 | 0.015 |
| predicted_R | 1.158 | 0.602 |
| predicted_RBI | 0.987 | 0.387 |
| predicted_SLG | 0.504 | 0.019 |
| predicted_SO | 1.214 | 0.473 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.462 | 0.000 |
| predicted_3B | 0.021 | 0.000 |
| predicted_AB | 6.660 | 0.000 |
| predicted_AVG | 0.313 | 0.024 |
| predicted_BB | 0.937 | 0.018 |
| predicted_H | 2.083 | 0.084 |
| predicted_HBP | 0.034 | 0.000 |
| predicted_HR | 0.292 | 0.013 |
| predicted_OBP | 0.398 | 0.016 |
| predicted_R | 1.243 | 0.084 |
| predicted_RBI | 1.059 | 0.072 |
| predicted_SLG | 0.520 | 0.016 |
| predicted_SO | 1.191 | -0.023 |
AB rounded to 7 (raw=6.66), rates preserved: AVG=0.313 HR/AB=0.044
| 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=18.0, weight=0.150, BvP AVG=0.500)
| 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.462 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 7.000 | 0.340 |
| predicted_AVG | 0.286 | -0.027 |
| predicted_BB | 1.000 | 0.063 |
| predicted_H | 2.000 | -0.083 |
| predicted_HR | 0.000 | -0.292 |
| predicted_OBP | 0.375 | -0.023 |
| predicted_R | 1.000 | -0.243 |
| predicted_RBI | 1.000 | -0.059 |
| predicted_SLG | 0.286 | -0.234 |
| 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 | -4.000 |
| BB | 2.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 | 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 | 2.000 | 0.000 | 1.000 | 2.000 | 6.000 | 3.000 | 3.000 | 0.4444 | 0.5238 | 0.7222 | 0.4444 | 0.0556 | 0.1111 | 0.1667 | 0.1667 |
| last_10 | 0.20 | 10 | - | 40.000 | 14.000 | 2.000 | 0.000 | 2.000 | 9.000 | 9.000 | 3.000 | 7.000 | 0.3500 | 0.3778 | 0.5500 | 0.3500 | 0.0500 | 0.2250 | 0.0750 | 0.1750 |
| season | 0.60 | 65 | - | 903.000 | 247.000 | 63.000 | 4.000 | 33.000 | 129.000 | 133.000 | 139.000 | 177.000 | 0.2735 | 0.3710 | 0.4618 | 0.2735 | 0.0365 | 0.1429 | 0.1539 | 0.1960 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7110 |
| predicted_3B | 0.0260 |
| predicted_AB | 9.6900 |
| predicted_AVG | 0.3210 |
| predicted_BB | 1.3460 |
| predicted_H | 3.1100 |
| predicted_HBP | 0.0340 |
| predicted_HR | 0.4150 |
| predicted_OBP | 0.4004 |
| predicted_R | 1.9190 |
| predicted_RBI | 1.4760 |
| predicted_SLG | 0.5281 |
| predicted_SO | 1.8110 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2640 | 0.7110 | 0.4615 | model_form_blend |
| predicted_3B | 0.0170 | 0.0260 | 0.0210 | model_form_blend |
| predicted_AB | 4.2600 | 9.6900 | 6.6595 | model_form_blend |
| predicted_AVG | 0.2640 | 0.3210 | 0.2892 | model_form_blend |
| predicted_BB | 0.5820 | 1.3460 | 0.9196 | model_form_blend |
| predicted_H | 1.1200 | 3.1100 | 1.9994 | model_form_blend |
| predicted_HBP | - | 0.0340 | 0.0340 | form_only |
| predicted_HR | 0.1700 | 0.4150 | 0.2783 | model_form_blend |
| predicted_OBP | 0.3670 | 0.4004 | 0.3818 | model_form_blend |
| predicted_R | 0.5560 | 1.9190 | 1.1583 | model_form_blend |
| predicted_RBI | 0.6000 | 1.4760 | 0.9871 | model_form_blend |
| predicted_SLG | 0.4850 | 0.5281 | 0.5040 | model_form_blend |
| predicted_SO | 0.7410 | 1.8110 | 1.2138 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| 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 | 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 | 2 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 518692 |
| playerID | 518692 |
| playerName | Freddie Freeman |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 16.5 |
| sl_bb_percent | 11.6 |
| sl_woba | 0.37 |
| sl_xwoba | 0.375 |
| sl_xba | 0.28 |
| sl_xslg | 0.498 |
| sl_sweet_spot_percent | 35.5 |
| sl_barrel_batted_rate | 11.8 |
| sl_hard_hit_percent | 46.3 |
| sl_exit_velocity_avg | 91.0 |
| sl_launch_angle_avg | 11.7 |
| sl_whiff_percent | 22.7 |
| sl_swing_percent | 49.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.113 | 0.000 | 0.000 | Hitting_2B | 0.113 | 1.000 | -0.113 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.537 | 5.000 | 6.000 | Hitting_AB | 3.520 | 3.000 | 1.480 | 2.000 |
| predicted_AVG | 0.273 | 0.400 | 0.333 | Hitting_AVG | 0.266 | 0.333 | 0.134 | 0.067 |
| predicted_BB | 0.527 | 0.000 | 1.000 | Hitting_BB | 0.525 | 1.000 | -0.525 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.960 | 2.000 | 2.000 | Hitting_H | 0.936 | 1.000 | 1.064 | 1.000 |
| predicted_HR | 0.160 | 1.000 | 0.000 | Hitting_HR | 0.265 | 0.000 | 0.735 | 1.000 |
| predicted_OBP | 0.367 | 0.400 | 0.429 | Hitting_OBP | 0.364 | 0.500 | 0.036 | -0.100 |
| predicted_R | 0.803 | 1.000 | 1.000 | Hitting_R | 0.799 | 2.000 | 0.201 | -1.000 |
| predicted_RBI | 0.450 | 4.000 | 1.000 | Hitting_RBI | 0.417 | 1.000 | 3.583 | 3.000 |
| predicted_SLG | 0.490 | 1.000 | 0.333 | Hitting_SLG | 0.524 | 0.667 | 0.476 | 0.333 |
| predicted_SO | 1.069 | 1.000 | 2.000 | Hitting_SO | 1.064 | 1.000 | -0.064 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 8 |
| Deboosted Metrics | 3 |
| Better Metrics | 9 |
| Worse Metrics | 2 |
| Biggest Boost | predicted_RBI: 0.4500 -> 4.0000 (boost 3.5500, better) |
| Biggest Deboost | predicted_BB: 0.5270 -> 0.0000 (deboost -0.5270, 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.5370 -> 5.5732 (boost 2.0362, 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.2701 -> 1.3627 (boost 0.0926, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 5 | 2 | 4 | 3 | predicted_SO: 1.5116 -> 2.0000 (boost 0.4884, worse) | predicted_2B: 0.2916 -> 0.0000 (deboost -0.2916, worse) | AB rounded to 6 (raw=5.57), rates preserved: AVG=0.317 HR/AB=0.051 |
| 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.3627 -> 1.0000 (deboost -0.3627, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3997 -> 0.4290 (boost 0.0293, better) | predicted_SLG: 0.5230 -> 0.3330 (deboost -0.1900, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 2 | 3 | 3 | 2 | predicted_RBI: 1.0000 -> 4.0000 (boost 3.0000, better) | predicted_AB: 6.0000 -> 5.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.5230 (boost 0.1900, better) | predicted_OBP: 0.4290 -> 0.3997 (deboost -0.0293, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "571970",
"player_name": "Max Muncy",
"position": "3B",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.113,
"predicted_3B": 0.0,
"predicted_AB": 3.537,
"predicted_AVG": 0.273,
"predicted_BB": 0.527,
"predicted_H": 0.96,
"predicted_HR": 0.16,
"predicted_OBP": 0.367,
"predicted_R": 0.803,
"predicted_RBI": 0.45,
"predicted_SLG": 0.49,
"predicted_SO": 1.069
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2916,
"predicted_3B": 0.0004,
"predicted_AB": 5.5732,
"predicted_AVG": 0.295,
"predicted_BB": 0.7491,
"predicted_H": 1.698,
"predicted_HBP": 0.029,
"predicted_HR": 0.2713,
"predicted_OBP": 0.3821,
"predicted_R": 1.2701,
"predicted_RBI": 0.6914,
"predicted_SLG": 0.5114,
"predicted_SO": 1.5409
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.113,
"after": 0.2916,
"delta": 0.1786,
"percent_delta": 1.5805,
"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.537,
"after": 5.5732,
"delta": 2.0362,
"percent_delta": 0.5757,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.295,
"delta": 0.022,
"percent_delta": 0.0806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.527,
"after": 0.7491,
"delta": 0.2221,
"percent_delta": 0.4214,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.698,
"delta": 0.738,
"percent_delta": 0.7688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2713,
"delta": 0.1113,
"percent_delta": 0.6956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.367,
"after": 0.3821,
"delta": 0.0151,
"percent_delta": 0.0411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.803,
"after": 1.2701,
"delta": 0.4671,
"percent_delta": 0.5817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.6914,
"delta": 0.2414,
"percent_delta": 0.5364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.49,
"after": 0.5114,
"delta": 0.0214,
"percent_delta": 0.0437,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.069,
"after": 1.5409,
"delta": 0.4719,
"percent_delta": 0.4414,
"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.537,
"after": 5.5732,
"delta": 2.0362,
"percent_delta": 0.5757,
"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.2916,
"predicted_3B": 0.0004,
"predicted_AB": 5.5732,
"predicted_AVG": 0.3175,
"predicted_BB": 0.7633,
"predicted_H": 1.7693,
"predicted_HBP": 0.029,
"predicted_HR": 0.2843,
"predicted_OBP": 0.3997,
"predicted_R": 1.3627,
"predicted_RBI": 0.7418,
"predicted_SLG": 0.523,
"predicted_SO": 1.5116
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2916,
"after": 0.2916,
"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.5732,
"after": 5.5732,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.295,
"after": 0.3175,
"delta": 0.0225,
"percent_delta": 0.0763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7491,
"after": 0.7633,
"delta": 0.0142,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.698,
"after": 1.7693,
"delta": 0.0713,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.2713,
"after": 0.2843,
"delta": 0.013,
"percent_delta": 0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3821,
"after": 0.3997,
"delta": 0.0176,
"percent_delta": 0.0461,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2701,
"after": 1.3627,
"delta": 0.0926,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6914,
"after": 0.7418,
"delta": 0.0504,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5114,
"after": 0.523,
"delta": 0.0116,
"percent_delta": 0.0227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5409,
"after": 1.5116,
"delta": -0.0293,
"percent_delta": -0.019,
"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.2701,
"after": 1.3627,
"delta": 0.0926,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.57), rates preserved: AVG=0.317 HR/AB=0.051",
"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.2916,
"after": 0.0,
"delta": -0.2916,
"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.5732,
"after": 6.0,
"delta": 0.4268,
"percent_delta": 0.0766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7633,
"after": 1.0,
"delta": 0.2367,
"percent_delta": 0.3101,
"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.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2843,
"after": 0.0,
"delta": -0.2843,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7418,
"after": 1.0,
"delta": 0.2582,
"percent_delta": 0.3481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5116,
"after": 2.0,
"delta": 0.4884,
"percent_delta": 0.3231,
"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_SO",
"before": 1.5116,
"after": 2.0,
"delta": 0.4884,
"percent_delta": 0.3231,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2916,
"after": 0.0,
"delta": -0.2916,
"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": 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": 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": 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.3627,
"after": 1.0,
"delta": -0.3627,
"percent_delta": -0.2662,
"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.3627,
"after": 1.0,
"delta": -0.3627,
"percent_delta": -0.2662,
"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": 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.3175,
"after": 0.333,
"delta": 0.0155,
"percent_delta": 0.0488,
"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.3997,
"after": 0.429,
"delta": 0.0293,
"percent_delta": 0.0733,
"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.523,
"after": 0.333,
"delta": -0.19,
"percent_delta": -0.3633,
"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.3997,
"after": 0.429,
"delta": 0.0293,
"percent_delta": 0.0733,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.523,
"after": 0.333,
"delta": -0.19,
"percent_delta": -0.3633,
"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": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 4.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 4.0,
"delta": 3.0,
"percent_delta": 3.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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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_RBI",
"before": 1.0,
"after": 4.0,
"delta": 3.0,
"percent_delta": 3.0,
"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": 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.3175,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3997,
"predicted_R": 1.0,
"predicted_RBI": 4.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.523,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.3175,
"delta": -0.0155,
"percent_delta": -0.0466,
"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.429,
"after": 0.3997,
"delta": -0.0293,
"percent_delta": -0.0683,
"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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 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.523,
"delta": 0.19,
"percent_delta": 0.5704,
"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.523,
"delta": 0.19,
"percent_delta": 0.5704,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3997,
"delta": -0.0293,
"percent_delta": -0.0683,
"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.113,
"after": 0.0,
"delta": -0.113,
"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.537,
"after": 5.0,
"delta": 1.463,
"percent_delta": 0.4136,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.3175,
"delta": 0.0445,
"percent_delta": 0.163,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.527,
"after": 0.0,
"delta": -0.527,
"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.16,
"after": 1.0,
"delta": 0.84,
"percent_delta": 5.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.367,
"after": 0.3997,
"delta": 0.0327,
"percent_delta": 0.0891,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.803,
"after": 1.0,
"delta": 0.197,
"percent_delta": 0.2453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 4.0,
"delta": 3.55,
"percent_delta": 7.8889,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.49,
"after": 0.523,
"delta": 0.033,
"percent_delta": 0.0673,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.069,
"after": 1.0,
"delta": -0.069,
"percent_delta": -0.0645,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 8,
"deboosted_metrics": 3,
"better_metrics": 9,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.45,
"after": 4.0,
"delta": 3.55,
"percent_delta": 7.8889,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.527,
"after": 0.0,
"delta": -0.527,
"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.113 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.537 | - |
| predicted_AVG | 0.273 | - |
| predicted_BB | 0.527 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.367 | - |
| predicted_R | 0.803 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.490 | - |
| predicted_SO | 1.069 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.292 | 0.179 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.573 | 2.036 |
| predicted_AVG | 0.295 | 0.022 |
| predicted_BB | 0.749 | 0.222 |
| predicted_H | 1.698 | 0.738 |
| predicted_HBP | 0.029 | - |
| predicted_HR | 0.271 | 0.111 |
| predicted_OBP | 0.382 | 0.015 |
| predicted_R | 1.270 | 0.467 |
| predicted_RBI | 0.691 | 0.241 |
| predicted_SLG | 0.511 | 0.021 |
| predicted_SO | 1.541 | 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.292 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.573 | 0.000 |
| predicted_AVG | 0.318 | 0.023 |
| predicted_BB | 0.763 | 0.014 |
| predicted_H | 1.769 | 0.071 |
| predicted_HBP | 0.029 | 0.000 |
| predicted_HR | 0.284 | 0.013 |
| predicted_OBP | 0.400 | 0.018 |
| predicted_R | 1.363 | 0.093 |
| predicted_RBI | 0.742 | 0.050 |
| predicted_SLG | 0.523 | 0.012 |
| predicted_SO | 1.512 | -0.029 |
AB rounded to 6 (raw=5.57), rates preserved: AVG=0.317 HR/AB=0.051
| 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 | - |
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 | 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 | 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.292 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.427 |
| predicted_AVG | 0.333 | 0.016 |
| predicted_BB | 1.000 | 0.237 |
| predicted_H | 2.000 | 0.231 |
| predicted_HR | 0.000 | -0.284 |
| predicted_OBP | 0.429 | 0.029 |
| predicted_R | 1.000 | -0.363 |
| predicted_RBI | 1.000 | 0.258 |
| predicted_SLG | 0.333 | -0.190 |
| predicted_SO | 2.000 | 0.488 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 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 | 1.000 | 1.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 4.000 | 3.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 | 7.000 | 2.000 | 0.000 | 0.000 | 2.000 | 4.000 | 2.000 | 3.000 | 0.4667 | 0.5294 | 0.6000 | 0.4667 | 0.0000 | 0.1333 | 0.1333 | 0.2000 |
| last_10 | 0.20 | 10 | - | 33.000 | 12.000 | 3.000 | 0.000 | 1.000 | 4.000 | 7.000 | 2.000 | 7.000 | 0.3636 | 0.4000 | 0.5455 | 0.3636 | 0.0303 | 0.1212 | 0.0606 | 0.2121 |
| season | 0.60 | 61 | - | 718.000 | 191.000 | 23.000 | 0.000 | 54.000 | 85.000 | 163.000 | 107.000 | 217.000 | 0.2660 | 0.3643 | 0.5237 | 0.2660 | 0.0752 | 0.1184 | 0.1490 | 0.3022 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5190 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.1670 |
| predicted_AVG | 0.3230 |
| predicted_BB | 1.0320 |
| predicted_H | 2.6380 |
| predicted_HBP | 0.0290 |
| predicted_HR | 0.4130 |
| predicted_OBP | 0.4013 |
| predicted_R | 1.8650 |
| predicted_RBI | 0.9990 |
| predicted_SLG | 0.5386 |
| predicted_SO | 2.1420 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1130 | 0.5190 | 0.2916 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.5370 | 8.1670 | 5.5732 | model_form_blend |
| predicted_AVG | 0.2730 | 0.3230 | 0.2950 | model_form_blend |
| predicted_BB | 0.5270 | 1.0320 | 0.7491 | model_form_blend |
| predicted_H | 0.9600 | 2.6380 | 1.6980 | model_form_blend |
| predicted_HBP | - | 0.0290 | 0.0290 | form_only |
| predicted_HR | 0.1600 | 0.4130 | 0.2713 | model_form_blend |
| predicted_OBP | 0.3670 | 0.4013 | 0.3821 | model_form_blend |
| predicted_R | 0.8030 | 1.8650 | 1.2701 | model_form_blend |
| predicted_RBI | 0.4500 | 0.9990 | 0.6914 | model_form_blend |
| predicted_SLG | 0.4900 | 0.5386 | 0.5114 | model_form_blend |
| predicted_SO | 1.0690 | 2.1420 | 1.5409 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 5 |
| AB | 5 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 4 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.266 |
| 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 | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 571970 |
| playerID | 571970 |
| playerName | Max Muncy |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.9 |
| sl_bb_percent | 12.0 |
| sl_woba | 0.383 |
| sl_xwoba | 0.393 |
| sl_xba | 0.276 |
| sl_xslg | 0.554 |
| sl_sweet_spot_percent | 34.9 |
| sl_barrel_batted_rate | 17.1 |
| sl_hard_hit_percent | 49.3 |
| sl_exit_velocity_avg | 91.0 |
| sl_launch_angle_avg | 12.8 |
| sl_whiff_percent | 27.8 |
| 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.232 | 1.000 | 0.000 | Hitting_2B | 0.232 | 0.000 | 0.768 | 1.000 |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.330 | 5.000 | 7.000 | Hitting_AB | 3.835 | 4.000 | 1.165 | 1.000 |
| predicted_AVG | 0.236 | 0.200 | 0.286 | Hitting_AVG | 0.309 | 0.250 | -0.109 | -0.050 |
| predicted_BB | 0.287 | 0.000 | 0.000 | Hitting_BB | 0.287 | 1.000 | -0.287 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_H | 1.020 | 1.000 | 2.000 | Hitting_H | 1.186 | 1.000 | -0.186 | 0.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.253 | 0.000 | -0.253 | 0.000 |
| predicted_OBP | 0.295 | 0.200 | 0.286 | Hitting_OBP | 0.357 | 0.400 | -0.157 | -0.200 |
| predicted_R | 0.684 | 0.000 | 1.000 | Hitting_R | 0.684 | 1.000 | -0.684 | -1.000 |
| predicted_RBI | 0.730 | 0.000 | 2.000 | Hitting_RBI | 0.958 | 0.000 | -0.958 | 0.000 |
| predicted_SLG | 0.460 | 0.400 | 0.286 | Hitting_SLG | 0.570 | 0.250 | -0.170 | 0.150 |
| predicted_SO | 0.785 | 1.000 | 1.000 | Hitting_SO | 0.785 | 1.000 | 0.215 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_2B: 0.2320 -> 1.0000 (boost 0.7680, better) |
| Biggest Deboost | predicted_RBI: 0.7300 -> 0.0000 (deboost -0.7300, 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.3300 -> 6.7112 (boost 2.3812, 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_RBI: 1.3516 -> 1.4501 (boost 0.0985, 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_RBI: 1.4501 -> 2.0000 (boost 0.5499, better) | predicted_BB: 0.4603 -> 0.0000 (deboost -0.4603, worse) | AB rounded to 7 (raw=6.71), rates preserved: AVG=0.263 HR/AB=0.062 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1493 -> 1.0000 (deboost -0.1493, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2634 -> 0.2860 (boost 0.0226, better) | predicted_SLG: 0.5067 -> 0.2860 (deboost -0.2207, 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: 7.0000 -> 5.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.2860 -> 0.5067 (boost 0.2207, better) | predicted_AVG: 0.2860 -> 0.2634 (deboost -0.0226, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681624",
"player_name": "Andy Pages",
"position": "CF",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.004,
"predicted_AB": 4.33,
"predicted_AVG": 0.236,
"predicted_BB": 0.287,
"predicted_H": 1.02,
"predicted_HR": 0.2,
"predicted_OBP": 0.295,
"predicted_R": 0.684,
"predicted_RBI": 0.73,
"predicted_SLG": 0.46,
"predicted_SO": 0.785
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3437,
"predicted_3B": 0.0243,
"predicted_AB": 6.7112,
"predicted_AVG": 0.2477,
"predicted_BB": 0.4517,
"predicted_H": 1.6963,
"predicted_HBP": 0.052,
"predicted_HR": 0.3947,
"predicted_OBP": 0.2995,
"predicted_R": 1.0712,
"predicted_RBI": 1.3516,
"predicted_SLG": 0.4867,
"predicted_SO": 1.3377
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.232,
"after": 0.3437,
"delta": 0.1117,
"percent_delta": 0.4815,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0243,
"delta": 0.0203,
"percent_delta": 5.075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.33,
"after": 6.7112,
"delta": 2.3812,
"percent_delta": 0.5499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2477,
"delta": 0.0117,
"percent_delta": 0.0496,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.287,
"after": 0.4517,
"delta": 0.1647,
"percent_delta": 0.5739,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.6963,
"delta": 0.6763,
"percent_delta": 0.663,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.3947,
"delta": 0.1947,
"percent_delta": 0.9735,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.2995,
"delta": 0.0045,
"percent_delta": 0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.684,
"after": 1.0712,
"delta": 0.3872,
"percent_delta": 0.5661,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.73,
"after": 1.3516,
"delta": 0.6216,
"percent_delta": 0.8515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.46,
"after": 0.4867,
"delta": 0.0267,
"percent_delta": 0.058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.785,
"after": 1.3377,
"delta": 0.5527,
"percent_delta": 0.7041,
"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.33,
"after": 6.7112,
"delta": 2.3812,
"percent_delta": 0.5499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3437,
"predicted_3B": 0.0243,
"predicted_AB": 6.7112,
"predicted_AVG": 0.2634,
"predicted_BB": 0.4603,
"predicted_H": 1.7675,
"predicted_HBP": 0.052,
"predicted_HR": 0.4136,
"predicted_OBP": 0.3107,
"predicted_R": 1.1493,
"predicted_RBI": 1.4501,
"predicted_SLG": 0.5067,
"predicted_SO": 1.3123
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3437,
"after": 0.3437,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0243,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.7112,
"after": 6.7112,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2477,
"after": 0.2634,
"delta": 0.0157,
"percent_delta": 0.0634,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4517,
"after": 0.4603,
"delta": 0.0086,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6963,
"after": 1.7675,
"delta": 0.0712,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.3947,
"after": 0.4136,
"delta": 0.0189,
"percent_delta": 0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2995,
"after": 0.3107,
"delta": 0.0112,
"percent_delta": 0.0374,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0712,
"after": 1.1493,
"delta": 0.0781,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.3516,
"after": 1.4501,
"delta": 0.0985,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4867,
"after": 0.5067,
"delta": 0.02,
"percent_delta": 0.0411,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3377,
"after": 1.3123,
"delta": -0.0254,
"percent_delta": -0.019,
"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.3516,
"after": 1.4501,
"delta": 0.0985,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.71), rates preserved: AVG=0.263 HR/AB=0.062",
"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": 2.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3437,
"after": 0.0,
"delta": -0.3437,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0,
"delta": -0.0243,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.7112,
"after": 7.0,
"delta": 0.2888,
"percent_delta": 0.043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4603,
"after": 0.0,
"delta": -0.4603,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7675,
"after": 2.0,
"delta": 0.2325,
"percent_delta": 0.1315,
"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.4136,
"after": 0.0,
"delta": -0.4136,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.4501,
"after": 2.0,
"delta": 0.5499,
"percent_delta": 0.3792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3123,
"after": 1.0,
"delta": -0.3123,
"percent_delta": -0.238,
"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": 1.4501,
"after": 2.0,
"delta": 0.5499,
"percent_delta": 0.3792,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"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": 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": 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.1493,
"after": 1.0,
"delta": -0.1493,
"percent_delta": -0.1299,
"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.1493,
"after": 1.0,
"delta": -0.1493,
"percent_delta": -0.1299,
"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": 2.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.2634,
"after": 0.286,
"delta": 0.0226,
"percent_delta": 0.0858,
"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.3107,
"after": 0.286,
"delta": -0.0247,
"percent_delta": -0.0795,
"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.5067,
"after": 0.286,
"delta": -0.2207,
"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_AVG",
"before": 0.2634,
"after": 0.286,
"delta": 0.0226,
"percent_delta": 0.0858,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5067,
"after": 0.286,
"delta": -0.2207,
"percent_delta": -0.4356,
"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": 7.0,
"after": 5.0,
"delta": -2.0,
"percent_delta": -0.2857,
"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": 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": 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": 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.2634,
"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.3107,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5067,
"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.286,
"after": 0.2634,
"delta": -0.0226,
"percent_delta": -0.0791,
"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.3107,
"delta": 0.0247,
"percent_delta": 0.0862,
"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.5067,
"delta": 0.2207,
"percent_delta": 0.7717,
"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.5067,
"delta": 0.2207,
"percent_delta": 0.7717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2634,
"delta": -0.0226,
"percent_delta": -0.0791,
"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": 1.0,
"delta": 0.768,
"percent_delta": 3.3103,
"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.33,
"after": 5.0,
"delta": 0.67,
"percent_delta": 0.1547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2634,
"delta": 0.0274,
"percent_delta": 0.1161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.287,
"after": 0.0,
"delta": -0.287,
"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.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.3107,
"delta": 0.0157,
"percent_delta": 0.0532,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.684,
"after": 0.0,
"delta": -0.684,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.73,
"after": 0.0,
"delta": -0.73,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.46,
"after": 0.5067,
"delta": 0.0467,
"percent_delta": 0.1015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.785,
"after": 1.0,
"delta": 0.215,
"percent_delta": 0.2739,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.232,
"after": 1.0,
"delta": 0.768,
"percent_delta": 3.3103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.73,
"after": 0.0,
"delta": -0.73,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.232 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 4.330 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.287 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.295 | - |
| predicted_R | 0.684 | - |
| predicted_RBI | 0.730 | - |
| predicted_SLG | 0.460 | - |
| predicted_SO | 0.785 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.344 | 0.112 |
| predicted_3B | 0.024 | 0.020 |
| predicted_AB | 6.711 | 2.381 |
| predicted_AVG | 0.248 | 0.012 |
| predicted_BB | 0.452 | 0.165 |
| predicted_H | 1.696 | 0.676 |
| predicted_HBP | 0.052 | - |
| predicted_HR | 0.395 | 0.195 |
| predicted_OBP | 0.299 | 0.005 |
| predicted_R | 1.071 | 0.387 |
| predicted_RBI | 1.352 | 0.622 |
| predicted_SLG | 0.487 | 0.027 |
| predicted_SO | 1.338 | 0.553 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.344 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 6.711 | 0.000 |
| predicted_AVG | 0.263 | 0.016 |
| predicted_BB | 0.460 | 0.009 |
| predicted_H | 1.768 | 0.071 |
| predicted_HBP | 0.052 | 0.000 |
| predicted_HR | 0.414 | 0.019 |
| predicted_OBP | 0.311 | 0.011 |
| predicted_R | 1.149 | 0.078 |
| predicted_RBI | 1.450 | 0.099 |
| predicted_SLG | 0.507 | 0.020 |
| predicted_SO | 1.312 | -0.025 |
AB rounded to 7 (raw=6.71), rates preserved: AVG=0.263 HR/AB=0.062
| 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 | 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 | 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 | 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.344 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 7.000 | 0.289 |
| predicted_AVG | 0.286 | 0.023 |
| predicted_BB | 0.000 | -0.460 |
| predicted_H | 2.000 | 0.232 |
| predicted_HR | 0.000 | -0.414 |
| predicted_OBP | 0.286 | -0.025 |
| predicted_R | 1.000 | -0.149 |
| predicted_RBI | 2.000 | 0.550 |
| predicted_SLG | 0.286 | -0.221 |
| predicted_SO | 1.000 | -0.312 |
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 | 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 | -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 | - | 22.000 | 4.000 | 0.000 | 0.000 | 2.000 | 5.000 | 3.000 | 1.000 | 5.000 | 0.1818 | 0.2083 | 0.4545 | 0.1818 | 0.0909 | 0.2273 | 0.0454 | 0.2273 |
| last_10 | 0.20 | 10 | - | 44.000 | 9.000 | 3.000 | 1.000 | 2.000 | 6.000 | 6.000 | 3.000 | 9.000 | 0.2045 | 0.2449 | 0.4545 | 0.2046 | 0.0454 | 0.1364 | 0.0682 | 0.2046 |
| season | 0.60 | 67 | - | 909.000 | 281.000 | 55.000 | 1.000 | 60.000 | 227.000 | 162.000 | 68.000 | 186.000 | 0.3091 | 0.3574 | 0.5699 | 0.3091 | 0.0660 | 0.2497 | 0.0748 | 0.2046 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4850 |
| predicted_3B | 0.0500 |
| predicted_AB | 9.7240 |
| predicted_AVG | 0.2624 |
| predicted_BB | 0.6600 |
| predicted_H | 2.5520 |
| predicted_HBP | 0.0520 |
| predicted_HR | 0.6410 |
| predicted_OBP | 0.3053 |
| predicted_R | 1.5610 |
| predicted_RBI | 2.1380 |
| predicted_SLG | 0.5204 |
| predicted_SO | 2.0370 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2320 | 0.4850 | 0.3437 | model_form_blend |
| predicted_3B | 0.0040 | 0.0500 | 0.0243 | model_form_blend |
| predicted_AB | 4.3300 | 9.7240 | 6.7112 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2624 | 0.2477 | model_form_blend |
| predicted_BB | 0.2870 | 0.6600 | 0.4517 | model_form_blend |
| predicted_H | 1.0200 | 2.5520 | 1.6963 | model_form_blend |
| predicted_HBP | - | 0.0520 | 0.0520 | form_only |
| predicted_HR | 0.2000 | 0.6410 | 0.3947 | model_form_blend |
| predicted_OBP | 0.2950 | 0.3053 | 0.2995 | model_form_blend |
| predicted_R | 0.6840 | 1.5610 | 1.0712 | model_form_blend |
| predicted_RBI | 0.7300 | 2.1380 | 1.3516 | model_form_blend |
| predicted_SLG | 0.4600 | 0.5204 | 0.4867 | model_form_blend |
| predicted_SO | 0.7850 | 2.0370 | 1.3377 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.309 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 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 | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 681624 |
| playerID | 681624 |
| playerName | Andy Pages |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.9 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.365 |
| sl_xwoba | 0.352 |
| sl_xba | 0.282 |
| sl_xslg | 0.487 |
| sl_sweet_spot_percent | 36.5 |
| sl_barrel_batted_rate | 10.1 |
| sl_hard_hit_percent | 46.6 |
| sl_exit_velocity_avg | 89.7 |
| sl_launch_angle_avg | 16.5 |
| sl_whiff_percent | 23.3 |
| sl_swing_percent | 49.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.269 | 1.000 | 0.000 | Hitting_2B | 0.269 | 1.000 | 0.731 | 0.000 |
| predicted_3B | 0.042 | 0.000 | 0.000 | Hitting_3B | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_AB | 3.849 | 5.000 | 7.000 | Hitting_AB | 3.849 | 4.000 | 1.151 | 1.000 |
| predicted_AVG | 0.230 | 0.400 | 0.286 | Hitting_AVG | 0.252 | 0.500 | 0.148 | -0.100 |
| predicted_BB | 0.555 | 0.000 | 1.000 | Hitting_BB | 0.555 | 0.000 | -0.555 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.880 | 2.000 | 2.000 | Hitting_H | 0.971 | 2.000 | 1.029 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.092 | 0.000 | -0.092 | 0.000 |
| predicted_OBP | 0.314 | 0.400 | 0.375 | Hitting_OBP | 0.345 | 0.500 | 0.055 | -0.100 |
| predicted_R | 0.735 | 1.000 | 1.000 | Hitting_R | 0.735 | 0.000 | 0.265 | 1.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.525 | 1.000 | -0.525 | -1.000 |
| predicted_SLG | 0.369 | 0.600 | 0.286 | Hitting_SLG | 0.416 | 0.750 | 0.184 | -0.150 |
| predicted_SO | 0.828 | 0.000 | 2.000 | Hitting_SO | 0.828 | 2.000 | -0.828 | -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 | 8 |
| Worse Metrics | 3 |
| Biggest Boost | predicted_AB: 3.8490 -> 5.0000 (boost 1.1510, better) |
| Biggest Deboost | predicted_SO: 0.8280 -> 0.0000 (deboost -0.8280, 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.8490 -> 6.5137 (boost 2.6647, 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.0983 -> 1.1784 (boost 0.0801, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_AB: 6.5137 -> 7.0000 (boost 0.4863, better) | predicted_2B: 0.4272 -> 0.0000 (deboost -0.4272, worse) | AB rounded to 7 (raw=6.51), rates preserved: AVG=0.238 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1784 -> 1.0000 (deboost -0.1784, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2381 -> 0.2860 (boost 0.0479, better) | predicted_SLG: 0.3865 -> 0.2860 (deboost -0.1005, 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_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.3865 (boost 0.1005, better) | predicted_AVG: 0.2860 -> 0.2381 (deboost -0.0479, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663656",
"player_name": "Kyle Tucker",
"position": "RF",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.042,
"predicted_AB": 3.849,
"predicted_AVG": 0.23,
"predicted_BB": 0.555,
"predicted_H": 0.88,
"predicted_HR": 0.09,
"predicted_OBP": 0.314,
"predicted_R": 0.735,
"predicted_RBI": 0.52,
"predicted_SLG": 0.369,
"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.4272,
"predicted_3B": 0.0517,
"predicted_AB": 6.5137,
"predicted_AVG": 0.2293,
"predicted_BB": 0.9422,
"predicted_H": 1.4886,
"predicted_HBP": 0.028,
"predicted_HR": 0.1386,
"predicted_OBP": 0.3175,
"predicted_R": 1.0983,
"predicted_RBI": 0.9328,
"predicted_SLG": 0.3675,
"predicted_SO": 1.5962
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.269,
"after": 0.4272,
"delta": 0.1582,
"percent_delta": 0.5881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.042,
"after": 0.0517,
"delta": 0.0097,
"percent_delta": 0.231,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.849,
"after": 6.5137,
"delta": 2.6647,
"percent_delta": 0.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2293,
"delta": -0.0007,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.555,
"after": 0.9422,
"delta": 0.3872,
"percent_delta": 0.6977,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 1.4886,
"delta": 0.6086,
"percent_delta": 0.6916,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1386,
"delta": 0.0486,
"percent_delta": 0.54,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3175,
"delta": 0.0035,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.735,
"after": 1.0983,
"delta": 0.3633,
"percent_delta": 0.4943,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.9328,
"delta": 0.4128,
"percent_delta": 0.7938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.369,
"after": 0.3675,
"delta": -0.0015,
"percent_delta": -0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.828,
"after": 1.5962,
"delta": 0.7682,
"percent_delta": 0.9278,
"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.849,
"after": 6.5137,
"delta": 2.6647,
"percent_delta": 0.6923,
"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.4272,
"predicted_3B": 0.0517,
"predicted_AB": 6.5137,
"predicted_AVG": 0.2381,
"predicted_BB": 0.9601,
"predicted_H": 1.5511,
"predicted_HBP": 0.028,
"predicted_HR": 0.1452,
"predicted_OBP": 0.336,
"predicted_R": 1.1784,
"predicted_RBI": 1.0008,
"predicted_SLG": 0.3865,
"predicted_SO": 1.5659
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4272,
"after": 0.4272,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0517,
"after": 0.0517,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.5137,
"after": 6.5137,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2293,
"after": 0.2381,
"delta": 0.0088,
"percent_delta": 0.0384,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9422,
"after": 0.9601,
"delta": 0.0179,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4886,
"after": 1.5511,
"delta": 0.0625,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"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.1386,
"after": 0.1452,
"delta": 0.0066,
"percent_delta": 0.0476,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3175,
"after": 0.336,
"delta": 0.0185,
"percent_delta": 0.0583,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0983,
"after": 1.1784,
"delta": 0.0801,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9328,
"after": 1.0008,
"delta": 0.068,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3675,
"after": 0.3865,
"delta": 0.019,
"percent_delta": 0.0517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5962,
"after": 1.5659,
"delta": -0.0303,
"percent_delta": -0.019,
"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.0983,
"after": 1.1784,
"delta": 0.0801,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.51), rates preserved: AVG=0.238 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.4272,
"after": 0.0,
"delta": -0.4272,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0517,
"after": 0.0,
"delta": -0.0517,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.5137,
"after": 7.0,
"delta": 0.4863,
"percent_delta": 0.0747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9601,
"after": 1.0,
"delta": 0.0399,
"percent_delta": 0.0416,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1452,
"after": 0.0,
"delta": -0.1452,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0008,
"after": 1.0,
"delta": -0.0008,
"percent_delta": -0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.5659,
"after": 2.0,
"delta": 0.4341,
"percent_delta": 0.2772,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 6.5137,
"after": 7.0,
"delta": 0.4863,
"percent_delta": 0.0747,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4272,
"after": 0.0,
"delta": -0.4272,
"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.1784,
"after": 1.0,
"delta": -0.1784,
"percent_delta": -0.1514,
"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.1784,
"after": 1.0,
"delta": -0.1784,
"percent_delta": -0.1514,
"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.2381,
"after": 0.286,
"delta": 0.0479,
"percent_delta": 0.2012,
"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.336,
"after": 0.375,
"delta": 0.039,
"percent_delta": 0.1161,
"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.3865,
"after": 0.286,
"delta": -0.1005,
"percent_delta": -0.26,
"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.2381,
"after": 0.286,
"delta": 0.0479,
"percent_delta": 0.2012,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3865,
"after": 0.286,
"delta": -0.1005,
"percent_delta": -0.26,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 1,
"deboosted_metrics": 4,
"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": 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.2381,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.336,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3865,
"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.2381,
"delta": -0.0479,
"percent_delta": -0.1674,
"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.336,
"delta": -0.039,
"percent_delta": -0.104,
"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.3865,
"delta": 0.1005,
"percent_delta": 0.3513,
"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.3865,
"delta": 0.1005,
"percent_delta": 0.3513,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2381,
"delta": -0.0479,
"percent_delta": -0.1674,
"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": 1.0,
"delta": 0.731,
"percent_delta": 2.7175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.042,
"after": 0.0,
"delta": -0.042,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.849,
"after": 5.0,
"delta": 1.151,
"percent_delta": 0.299,
"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.555,
"after": 0.0,
"delta": -0.555,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 2.0,
"delta": 1.12,
"percent_delta": 1.2727,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.336,
"delta": 0.022,
"percent_delta": 0.0701,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.735,
"after": 1.0,
"delta": 0.265,
"percent_delta": 0.3605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.369,
"after": 0.3865,
"delta": 0.0175,
"percent_delta": 0.0474,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.828,
"after": 0.0,
"delta": -0.828,
"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_AB",
"before": 3.849,
"after": 5.0,
"delta": 1.151,
"percent_delta": 0.299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.828,
"after": 0.0,
"delta": -0.828,
"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.269 | - |
| predicted_3B | 0.042 | - |
| predicted_AB | 3.849 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.555 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.735 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.369 | - |
| 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.427 | 0.158 |
| predicted_3B | 0.052 | 0.010 |
| predicted_AB | 6.514 | 2.665 |
| predicted_AVG | 0.229 | -0.001 |
| predicted_BB | 0.942 | 0.387 |
| predicted_H | 1.489 | 0.609 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.139 | 0.049 |
| predicted_OBP | 0.318 | 0.004 |
| predicted_R | 1.098 | 0.363 |
| predicted_RBI | 0.933 | 0.413 |
| predicted_SLG | 0.367 | -0.002 |
| predicted_SO | 1.596 | 0.768 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.427 | 0.000 |
| predicted_3B | 0.052 | 0.000 |
| predicted_AB | 6.514 | 0.000 |
| predicted_AVG | 0.238 | 0.009 |
| predicted_BB | 0.960 | 0.018 |
| predicted_H | 1.551 | 0.062 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.145 | 0.007 |
| predicted_OBP | 0.336 | 0.019 |
| predicted_R | 1.178 | 0.080 |
| predicted_RBI | 1.001 | 0.068 |
| predicted_SLG | 0.387 | 0.019 |
| predicted_SO | 1.566 | -0.030 |
AB rounded to 7 (raw=6.51), rates preserved: AVG=0.238 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.427 |
| predicted_3B | 0.000 | -0.052 |
| predicted_AB | 7.000 | 0.486 |
| predicted_AVG | 0.286 | 0.048 |
| predicted_BB | 1.000 | 0.040 |
| predicted_H | 2.000 | 0.449 |
| predicted_HR | 0.000 | -0.145 |
| predicted_OBP | 0.375 | 0.039 |
| predicted_R | 1.000 | -0.178 |
| predicted_RBI | 1.000 | -0.001 |
| predicted_SLG | 0.286 | -0.101 |
| predicted_SO | 2.000 | 0.434 |
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 | 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 | 1.000 | 0.000 | 0.000 | 3.000 | 2.000 | 3.000 | 7.000 | 0.1667 | 0.2727 | 0.2222 | 0.1667 | 0.0000 | 0.1667 | 0.1667 | 0.3889 |
| last_10 | 0.20 | 10 | - | 37.000 | 8.000 | 2.000 | 0.000 | 1.000 | 6.000 | 4.000 | 5.000 | 10.000 | 0.2162 | 0.3023 | 0.3514 | 0.2162 | 0.0270 | 0.1622 | 0.1351 | 0.2703 |
| season | 0.60 | 64 | - | 916.000 | 231.000 | 64.000 | 10.000 | 22.000 | 125.000 | 175.000 | 132.000 | 197.000 | 0.2522 | 0.3452 | 0.4159 | 0.2522 | 0.0240 | 0.1365 | 0.1441 | 0.2151 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6270 |
| predicted_3B | 0.0640 |
| predicted_AB | 9.8780 |
| predicted_AVG | 0.2285 |
| predicted_BB | 1.4310 |
| predicted_H | 2.2570 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.2000 |
| predicted_OBP | 0.3219 |
| predicted_R | 1.5570 |
| predicted_RBI | 1.4540 |
| predicted_SLG | 0.3655 |
| predicted_SO | 2.5660 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2690 | 0.6270 | 0.4272 | model_form_blend |
| predicted_3B | 0.0420 | 0.0640 | 0.0517 | model_form_blend |
| predicted_AB | 3.8490 | 9.8780 | 6.5137 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2285 | 0.2293 | model_form_blend |
| predicted_BB | 0.5550 | 1.4310 | 0.9422 | model_form_blend |
| predicted_H | 0.8800 | 2.2570 | 1.4886 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.0900 | 0.2000 | 0.1386 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3219 | 0.3175 | model_form_blend |
| predicted_R | 0.7350 | 1.5570 | 1.0983 | model_form_blend |
| predicted_RBI | 0.5200 | 1.4540 | 0.9328 | model_form_blend |
| predicted_SLG | 0.3690 | 0.3655 | 0.3675 | model_form_blend |
| predicted_SO | 0.8280 | 2.5660 | 1.5962 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| AB | 5 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| 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 | 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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 663656 |
| playerID | 663656 |
| playerName | Kyle Tucker |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 19.6 |
| sl_bb_percent | 12.7 |
| sl_woba | 0.323 |
| sl_xwoba | 0.327 |
| sl_xba | 0.25 |
| sl_xslg | 0.379 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 39.5 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 16.1 |
| sl_whiff_percent | 23.9 |
| sl_swing_percent | 48.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.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 | 3.846 | 5.000 | 4.000 | Hitting_AB | 3.846 | 3.000 | 1.154 | 2.000 |
| predicted_AVG | 0.253 | 0.400 | 0.250 | Hitting_AVG | 0.320 | 0.333 | 0.080 | 0.067 |
| predicted_BB | 0.077 | 0.000 | 0.000 | Hitting_BB | 0.077 | 0.000 | -0.077 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.840 | 2.000 | 1.000 | Hitting_H | 1.231 | 1.000 | 0.769 | 1.000 |
| predicted_HR | 0.190 | 1.000 | 0.000 | Hitting_HR | 0.231 | 1.000 | 0.769 | 0.000 |
| predicted_OBP | 0.308 | 0.400 | 0.250 | Hitting_OBP | 0.333 | 0.333 | 0.067 | 0.067 |
| predicted_R | 0.462 | 1.000 | 1.000 | Hitting_R | 0.462 | 1.000 | 0.538 | 0.000 |
| predicted_RBI | 0.780 | 1.000 | 1.000 | Hitting_RBI | 1.154 | 4.000 | -0.154 | -3.000 |
| predicted_SLG | 0.502 | 1.000 | 0.250 | Hitting_SLG | 0.540 | 1.333 | 0.460 | -0.333 |
| predicted_SO | 0.692 | 0.000 | 1.000 | Hitting_SO | 0.692 | 1.000 | -0.692 | -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.8400 -> 2.0000 (boost 1.1600, better) |
| Biggest Deboost | predicted_SO: 0.6920 -> 0.0000 (deboost -0.6920, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 6 | 6 | 0 | 5 | 1 | predicted_RBI: 0.7800 -> 0.9262 (boost 0.1462, 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 | 1 | 3 | 1 | 3 | predicted_RBI: 0.9262 -> 0.9937 (boost 0.0675, better) | predicted_SLG: 0.5259 -> 0.4807 (deboost -0.0452, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_SO: 0.7894 -> 1.0000 (boost 0.2106, worse) | predicted_HR: 0.2331 -> 0.0000 (deboost -0.2331, worse) | AB rounded to 4 (raw=3.85), rates preserved: AVG=0.244 HR/AB=0.061 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5935 -> 1.0000 (boost 0.4065, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.4807 -> 0.2500 (deboost -0.2307, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 3 | 1 | 4 | 0 | predicted_AB: 4.0000 -> 5.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.4807 (boost 0.2307, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669899",
"player_name": "Ryan Ward",
"position": "LF",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.846,
"predicted_AVG": 0.253,
"predicted_BB": 0.077,
"predicted_H": 0.84,
"predicted_HR": 0.19,
"predicted_OBP": 0.308,
"predicted_R": 0.462,
"predicted_RBI": 0.78,
"predicted_SLG": 0.502,
"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.1957,
"predicted_3B": 0.0017,
"predicted_AB": 3.8235,
"predicted_AVG": 0.2587,
"predicted_BB": 0.1231,
"predicted_H": 0.9015,
"predicted_HBP": 0.013,
"predicted_HR": 0.2225,
"predicted_OBP": 0.3094,
"predicted_R": 0.5532,
"predicted_RBI": 0.9262,
"predicted_SLG": 0.5259,
"predicted_SO": 0.8047
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.154,
"after": 0.1957,
"delta": 0.0417,
"percent_delta": 0.2708,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0017,
"delta": 0.0017,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.846,
"after": 3.8235,
"delta": -0.0225,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2587,
"delta": 0.0057,
"percent_delta": 0.0225,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.077,
"after": 0.1231,
"delta": 0.0461,
"percent_delta": 0.5987,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.9015,
"delta": 0.0615,
"percent_delta": 0.0732,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.2225,
"delta": 0.0325,
"percent_delta": 0.1711,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3094,
"delta": 0.0014,
"percent_delta": 0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.5532,
"delta": 0.0912,
"percent_delta": 0.1974,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.78,
"after": 0.9262,
"delta": 0.1462,
"percent_delta": 0.1874,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.502,
"after": 0.5259,
"delta": 0.0239,
"percent_delta": 0.0476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.692,
"after": 0.8047,
"delta": 0.1127,
"percent_delta": 0.1629,
"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_RBI",
"before": 0.78,
"after": 0.9262,
"delta": 0.1462,
"percent_delta": 0.1874,
"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": 9
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1957,
"predicted_3B": 0.0017,
"predicted_AB": 3.8235,
"predicted_AVG": 0.2457,
"predicted_BB": 0.1254,
"predicted_H": 0.9394,
"predicted_HBP": 0.013,
"predicted_HR": 0.2331,
"predicted_OBP": 0.2696,
"predicted_R": 0.5935,
"predicted_RBI": 0.9937,
"predicted_SLG": 0.4807,
"predicted_SO": 0.7894
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1957,
"after": 0.1957,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0017,
"after": 0.0017,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8235,
"after": 3.8235,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2587,
"after": 0.2457,
"delta": -0.013,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1231,
"after": 0.1254,
"delta": 0.0023,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9015,
"after": 0.9394,
"delta": 0.0379,
"percent_delta": 0.042,
"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.2225,
"after": 0.2331,
"delta": 0.0106,
"percent_delta": 0.0476,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3094,
"after": 0.2696,
"delta": -0.0398,
"percent_delta": -0.1286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5532,
"after": 0.5935,
"delta": 0.0403,
"percent_delta": 0.0728,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9262,
"after": 0.9937,
"delta": 0.0675,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5259,
"after": 0.4807,
"delta": -0.0452,
"percent_delta": -0.0859,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8047,
"after": 0.7894,
"delta": -0.0153,
"percent_delta": -0.019,
"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.9262,
"after": 0.9937,
"delta": 0.0675,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5259,
"after": 0.4807,
"delta": -0.0452,
"percent_delta": -0.0859,
"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.244 HR/AB=0.061",
"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.1957,
"after": 0.0,
"delta": -0.1957,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0017,
"after": 0.0,
"delta": -0.0017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8235,
"after": 4.0,
"delta": 0.1765,
"percent_delta": 0.0462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1254,
"after": 0.0,
"delta": -0.1254,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9394,
"after": 1.0,
"delta": 0.0606,
"percent_delta": 0.0645,
"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.2331,
"after": 0.0,
"delta": -0.2331,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9937,
"after": 1.0,
"delta": 0.0063,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.7894,
"after": 1.0,
"delta": 0.2106,
"percent_delta": 0.2668,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.7894,
"after": 1.0,
"delta": 0.2106,
"percent_delta": 0.2668,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2331,
"after": 0.0,
"delta": -0.2331,
"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.5935,
"after": 1.0,
"delta": 0.4065,
"percent_delta": 0.6849,
"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.5935,
"after": 1.0,
"delta": 0.4065,
"percent_delta": 0.6849,
"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.2457,
"after": 0.25,
"delta": 0.0043,
"percent_delta": 0.0175,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2696,
"after": 0.25,
"delta": -0.0196,
"percent_delta": -0.0727,
"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.4807,
"after": 0.25,
"delta": -0.2307,
"percent_delta": -0.4799,
"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.4807,
"after": 0.25,
"delta": -0.2307,
"percent_delta": -0.4799,
"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": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 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_AB",
"before": 4.0,
"after": 5.0,
"delta": 1.0,
"percent_delta": 0.25,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2457,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.2696,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4807,
"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.2457,
"delta": -0.0043,
"percent_delta": -0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"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.2696,
"delta": 0.0196,
"percent_delta": 0.0786,
"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.4807,
"delta": 0.2307,
"percent_delta": 0.9227,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.4807,
"delta": 0.2307,
"percent_delta": 0.9227,
"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.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.846,
"after": 5.0,
"delta": 1.154,
"percent_delta": 0.3001,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2457,
"delta": -0.0073,
"percent_delta": -0.0289,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.077,
"after": 0.0,
"delta": -0.077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 2.0,
"delta": 1.16,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 1.0,
"delta": 0.81,
"percent_delta": 4.2632,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.2696,
"delta": -0.0384,
"percent_delta": -0.1247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 1.0,
"delta": 0.538,
"percent_delta": 1.1645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.78,
"after": 1.0,
"delta": 0.22,
"percent_delta": 0.2821,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.502,
"after": 0.4807,
"delta": -0.0213,
"percent_delta": -0.0424,
"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": 11,
"boosted_metrics": 5,
"deboosted_metrics": 6,
"better_metrics": 6,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.84,
"after": 2.0,
"delta": 1.16,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.692,
"after": 0.0,
"delta": -0.692,
"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 | 3.846 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.077 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.308 | - |
| predicted_R | 0.462 | - |
| predicted_RBI | 0.780 | - |
| predicted_SLG | 0.502 | - |
| 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.196 | 0.042 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.824 | -0.022 |
| predicted_AVG | 0.259 | 0.006 |
| predicted_BB | 0.123 | 0.046 |
| predicted_H | 0.901 | 0.061 |
| predicted_HBP | 0.013 | - |
| predicted_HR | 0.223 | 0.033 |
| predicted_OBP | 0.309 | 0.001 |
| predicted_R | 0.553 | 0.091 |
| predicted_RBI | 0.926 | 0.146 |
| predicted_SLG | 0.526 | 0.024 |
| predicted_SO | 0.805 | 0.113 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.196 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.824 | 0.000 |
| predicted_AVG | 0.246 | -0.013 |
| predicted_BB | 0.125 | 0.002 |
| predicted_H | 0.939 | 0.038 |
| predicted_HBP | 0.013 | 0.000 |
| predicted_HR | 0.233 | 0.011 |
| predicted_OBP | 0.270 | -0.040 |
| predicted_R | 0.594 | 0.040 |
| predicted_RBI | 0.994 | 0.068 |
| predicted_SLG | 0.481 | -0.045 |
| predicted_SO | 0.789 | -0.015 |
AB rounded to 4 (raw=3.85), rates preserved: AVG=0.244 HR/AB=0.061
| 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.196 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.176 |
| predicted_AVG | 0.250 | 0.004 |
| predicted_BB | 0.000 | -0.125 |
| predicted_H | 1.000 | 0.061 |
| predicted_HR | 0.000 | -0.233 |
| predicted_OBP | 0.250 | -0.020 |
| predicted_R | 1.000 | 0.406 |
| predicted_RBI | 1.000 | 0.006 |
| predicted_SLG | 0.250 | -0.231 |
| predicted_SO | 1.000 | 0.211 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | -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 | 2.000 | 9.000 | 5.000 | 1.000 | 6.000 | 0.2778 | 0.3158 | 0.7222 | 0.2778 | 0.1111 | 0.5000 | 0.0556 | 0.3333 |
| last_10 | 0.20 | 9 | - | 35.000 | 10.000 | 2.000 | 0.000 | 3.000 | 12.000 | 6.000 | 1.000 | 9.000 | 0.2857 | 0.3056 | 0.6000 | 0.2857 | 0.0857 | 0.3429 | 0.0286 | 0.2571 |
| season | 0.60 | 9 | - | 50.000 | 16.000 | 2.000 | 0.000 | 3.000 | 15.000 | 6.000 | 1.000 | 9.000 | 0.3200 | 0.3333 | 0.5400 | 0.3200 | 0.0600 | 0.3000 | 0.0200 | 0.1800 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2760 |
| predicted_3B | 0.0050 |
| predicted_AB | 3.7800 |
| predicted_AVG | 0.2698 |
| predicted_BB | 0.2120 |
| predicted_H | 1.0200 |
| predicted_HBP | 0.0130 |
| predicted_HR | 0.2850 |
| predicted_OBP | 0.3121 |
| predicted_R | 0.7290 |
| predicted_RBI | 1.2080 |
| predicted_SLG | 0.5720 |
| predicted_SO | 1.0220 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1540 | 0.2760 | 0.1957 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0017 | model_form_blend |
| predicted_AB | 3.8460 | 3.7800 | 3.8235 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2698 | 0.2587 | model_form_blend |
| predicted_BB | 0.0770 | 0.2120 | 0.1231 | model_form_blend |
| predicted_H | 0.8400 | 1.0200 | 0.9015 | model_form_blend |
| predicted_HBP | - | 0.0130 | 0.0130 | form_only |
| predicted_HR | 0.1900 | 0.2850 | 0.2225 | model_form_blend |
| predicted_OBP | 0.3080 | 0.3121 | 0.3094 | model_form_blend |
| predicted_R | 0.4620 | 0.7290 | 0.5532 | model_form_blend |
| predicted_RBI | 0.7800 | 1.2080 | 0.9262 | model_form_blend |
| predicted_SLG | 0.5020 | 0.5720 | 0.5259 | model_form_blend |
| predicted_SO | 0.6920 | 1.0220 | 0.8047 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 13 |
| Season rows before report date | 13 |
| Report year | 2026 |
| Profile rows used | 13 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| 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 | 1 |
| 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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 4 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | LF |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 669899 |
| playerID | 669899 |
| playerName | Ryan Ward |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 3.2 |
| sl_woba | 0.392 |
| sl_xwoba | 0.362 |
| sl_xba | 0.273 |
| sl_xslg | 0.559 |
| sl_sweet_spot_percent | 42.9 |
| sl_barrel_batted_rate | 14.3 |
| sl_hard_hit_percent | 38.1 |
| sl_exit_velocity_avg | 89.9 |
| sl_launch_angle_avg | 13.6 |
| sl_whiff_percent | 26.1 |
| sl_swing_percent | 54.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.098 | 0.000 | -0.098 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.420 | 3.000 | 5.000 | Hitting_AB | 3.353 | 4.000 | -0.353 | -1.000 |
| predicted_AVG | 0.269 | 0.333 | 0.200 | Hitting_AVG | 0.287 | 0.000 | 0.047 | 0.333 |
| predicted_BB | 0.300 | 1.000 | 0.000 | Hitting_BB | 0.304 | 0.000 | 0.696 | 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.961 | 0.000 | 0.039 | 1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.314 | 0.000 | -0.314 | 0.000 |
| predicted_OBP | 0.339 | 0.500 | 0.200 | Hitting_OBP | 0.368 | 0.000 | 0.132 | 0.500 |
| predicted_R | 0.630 | 1.000 | 1.000 | Hitting_R | 0.627 | 0.000 | 0.373 | 1.000 |
| predicted_RBI | 0.460 | 0.000 | 1.000 | Hitting_RBI | 0.706 | 0.000 | -0.706 | 0.000 |
| predicted_SLG | 0.465 | 0.333 | 0.200 | Hitting_SLG | 0.596 | 0.000 | -0.263 | 0.333 |
| predicted_SO | 0.980 | 2.000 | 1.000 | Hitting_SO | 0.961 | 0.000 | 1.039 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_SO: 0.9800 -> 2.0000 (boost 1.0200, worse) |
| 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 3.4200 -> 5.0299 (boost 1.6099, 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 | 3 | 1 | 3 | 1 | predicted_R: 0.8929 -> 0.9580 (boost 0.0651, better) | predicted_OBP: 0.3496 -> 0.3342 (deboost -0.0154, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_RBI: 0.9238 -> 1.0000 (boost 0.0762, better) | predicted_BB: 0.4499 -> 0.0000 (deboost -0.4499, worse) | AB rounded to 5 (raw=5.03), rates preserved: AVG=0.275 HR/AB=0.063 |
| 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.5010 -> 0.2000 (deboost -0.3010, 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_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 | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.5010 (boost 0.3010, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687221",
"player_name": "Dalton Rushing",
"position": "C",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.1,
"predicted_3B": 0.0,
"predicted_AB": 3.42,
"predicted_AVG": 0.269,
"predicted_BB": 0.3,
"predicted_H": 0.74,
"predicted_HR": 0.14,
"predicted_OBP": 0.339,
"predicted_R": 0.63,
"predicted_RBI": 0.46,
"predicted_SLG": 0.465,
"predicted_SO": 0.98
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1841,
"predicted_3B": 0.0009,
"predicted_AB": 5.0299,
"predicted_AVG": 0.2795,
"predicted_BB": 0.4415,
"predicted_H": 1.3258,
"predicted_HBP": 0.163,
"predicted_HR": 0.303,
"predicted_OBP": 0.3496,
"predicted_R": 0.8929,
"predicted_RBI": 0.861,
"predicted_SLG": 0.5026,
"predicted_SO": 1.3926
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.1841,
"delta": 0.0841,
"percent_delta": 0.841,
"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.42,
"after": 5.0299,
"delta": 1.6099,
"percent_delta": 0.4707,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2795,
"delta": 0.0105,
"percent_delta": 0.039,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 0.4415,
"delta": 0.1415,
"percent_delta": 0.4717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 1.3258,
"delta": 0.5858,
"percent_delta": 0.7916,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.303,
"delta": 0.163,
"percent_delta": 1.1643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3496,
"delta": 0.0106,
"percent_delta": 0.0313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.63,
"after": 0.8929,
"delta": 0.2629,
"percent_delta": 0.4173,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.861,
"delta": 0.401,
"percent_delta": 0.8717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.5026,
"delta": 0.0376,
"percent_delta": 0.0809,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.98,
"after": 1.3926,
"delta": 0.4126,
"percent_delta": 0.421,
"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.42,
"after": 5.0299,
"delta": 1.6099,
"percent_delta": 0.4707,
"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": 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.1841,
"predicted_3B": 0.0009,
"predicted_AB": 5.0299,
"predicted_AVG": 0.2747,
"predicted_BB": 0.4499,
"predicted_H": 1.3815,
"predicted_HBP": 0.163,
"predicted_HR": 0.3175,
"predicted_OBP": 0.3342,
"predicted_R": 0.958,
"predicted_RBI": 0.9238,
"predicted_SLG": 0.501,
"predicted_SO": 1.3661
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1841,
"after": 0.1841,
"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.0299,
"after": 5.0299,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2795,
"after": 0.2747,
"delta": -0.0048,
"percent_delta": -0.0172,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4415,
"after": 0.4499,
"delta": 0.0084,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3258,
"after": 1.3815,
"delta": 0.0557,
"percent_delta": 0.042,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.163,
"after": 0.163,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.303,
"after": 0.3175,
"delta": 0.0145,
"percent_delta": 0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3496,
"after": 0.3342,
"delta": -0.0154,
"percent_delta": -0.0441,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8929,
"after": 0.958,
"delta": 0.0651,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.861,
"after": 0.9238,
"delta": 0.0628,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.5026,
"after": 0.501,
"delta": -0.0016,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.3926,
"after": 1.3661,
"delta": -0.0265,
"percent_delta": -0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.8929,
"after": 0.958,
"delta": 0.0651,
"percent_delta": 0.0729,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3496,
"after": 0.3342,
"delta": -0.0154,
"percent_delta": -0.0441,
"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.275 HR/AB=0.063",
"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.1841,
"after": 0.0,
"delta": -0.1841,
"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.0299,
"after": 5.0,
"delta": -0.0299,
"percent_delta": -0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4499,
"after": 0.0,
"delta": -0.4499,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3815,
"after": 1.0,
"delta": -0.3815,
"percent_delta": -0.2761,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.163,
"after": 0.0,
"delta": -0.163,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3175,
"after": 0.0,
"delta": -0.3175,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9238,
"after": 1.0,
"delta": 0.0762,
"percent_delta": 0.0825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3661,
"after": 1.0,
"delta": -0.3661,
"percent_delta": -0.268,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.9238,
"after": 1.0,
"delta": 0.0762,
"percent_delta": 0.0825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4499,
"after": 0.0,
"delta": -0.4499,
"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.958,
"after": 1.0,
"delta": 0.042,
"percent_delta": 0.0438,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.2747,
"after": 0.2,
"delta": -0.0747,
"percent_delta": -0.2719,
"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.3342,
"after": 0.2,
"delta": -0.1342,
"percent_delta": -0.4016,
"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.501,
"after": 0.2,
"delta": -0.301,
"percent_delta": -0.6008,
"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.501,
"after": 0.2,
"delta": -0.301,
"percent_delta": -0.6008,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_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.2747,
"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.3342,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.501,
"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.2747,
"delta": 0.0747,
"percent_delta": 0.3733,
"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.3342,
"delta": 0.1342,
"percent_delta": 0.671,
"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.2,
"after": 0.501,
"delta": 0.301,
"percent_delta": 1.5049,
"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.501,
"delta": 0.301,
"percent_delta": 1.5049,
"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.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.42,
"after": 3.0,
"delta": -0.42,
"percent_delta": -0.1228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.269,
"after": 0.2747,
"delta": 0.0057,
"percent_delta": 0.0212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 1.0,
"delta": 0.26,
"percent_delta": 0.3514,
"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.339,
"after": 0.3342,
"delta": -0.0048,
"percent_delta": -0.0142,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.63,
"after": 1.0,
"delta": 0.37,
"percent_delta": 0.5873,
"direction": "boost",
"projection_effect": "better",
"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.465,
"after": 0.501,
"delta": 0.036,
"percent_delta": 0.0774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "worse",
"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": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.420 | - |
| predicted_AVG | 0.269 | - |
| predicted_BB | 0.300 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.630 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.465 | - |
| predicted_SO | 0.980 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.184 | 0.084 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.030 | 1.610 |
| predicted_AVG | 0.280 | 0.011 |
| predicted_BB | 0.442 | 0.142 |
| predicted_H | 1.326 | 0.586 |
| predicted_HBP | 0.163 | - |
| predicted_HR | 0.303 | 0.163 |
| predicted_OBP | 0.350 | 0.011 |
| predicted_R | 0.893 | 0.263 |
| predicted_RBI | 0.861 | 0.401 |
| predicted_SLG | 0.503 | 0.038 |
| predicted_SO | 1.393 | 0.413 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.184 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 5.030 | 0.000 |
| predicted_AVG | 0.275 | -0.005 |
| predicted_BB | 0.450 | 0.008 |
| predicted_H | 1.381 | 0.056 |
| predicted_HBP | 0.163 | 0.000 |
| predicted_HR | 0.318 | 0.015 |
| predicted_OBP | 0.334 | -0.015 |
| predicted_R | 0.958 | 0.065 |
| predicted_RBI | 0.924 | 0.063 |
| predicted_SLG | 0.501 | -0.002 |
| predicted_SO | 1.366 | -0.026 |
AB rounded to 5 (raw=5.03), rates preserved: AVG=0.275 HR/AB=0.063
| 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.184 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.030 |
| predicted_AVG | 0.200 | -0.075 |
| predicted_BB | 0.000 | -0.450 |
| predicted_H | 1.000 | -0.381 |
| predicted_HR | 0.000 | -0.318 |
| predicted_OBP | 0.200 | -0.134 |
| predicted_R | 1.000 | 0.042 |
| predicted_RBI | 1.000 | 0.076 |
| predicted_SLG | 0.200 | -0.301 |
| predicted_SO | 1.000 | -0.366 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 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 | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 2.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 6.000 | 1.000 | 0.000 | 1.000 | 4.000 | 3.000 | 2.000 | 5.000 | 0.3333 | 0.4000 | 0.5556 | 0.3333 | 0.0556 | 0.2222 | 0.1111 | 0.2778 |
| last_10 | 0.20 | 9 | - | 31.000 | 9.000 | 2.000 | 0.000 | 1.000 | 4.000 | 5.000 | 2.000 | 7.000 | 0.2903 | 0.3333 | 0.4516 | 0.2903 | 0.0323 | 0.1290 | 0.0645 | 0.2258 |
| season | 0.60 | 35 | - | 342.000 | 98.000 | 10.000 | 0.000 | 32.000 | 72.000 | 63.000 | 30.000 | 98.000 | 0.2865 | 0.3662 | 0.5965 | 0.2866 | 0.0936 | 0.2105 | 0.0877 | 0.2866 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2960 |
| predicted_3B | 0.0020 |
| predicted_AB | 7.1740 |
| predicted_AVG | 0.2935 |
| predicted_BB | 0.6300 |
| predicted_H | 2.1060 |
| predicted_HBP | 0.1630 |
| predicted_HR | 0.5200 |
| predicted_OBP | 0.3638 |
| predicted_R | 1.2430 |
| predicted_RBI | 1.3950 |
| predicted_SLG | 0.5526 |
| predicted_SO | 1.9420 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.2960 | 0.1841 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.4200 | 7.1740 | 5.0299 | model_form_blend |
| predicted_AVG | 0.2690 | 0.2935 | 0.2795 | model_form_blend |
| predicted_BB | 0.3000 | 0.6300 | 0.4415 | model_form_blend |
| predicted_H | 0.7400 | 2.1060 | 1.3258 | model_form_blend |
| predicted_HBP | - | 0.1630 | 0.1630 | form_only |
| predicted_HR | 0.1400 | 0.5200 | 0.3030 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3638 | 0.3496 | model_form_blend |
| predicted_R | 0.6300 | 1.2430 | 0.8929 | model_form_blend |
| predicted_RBI | 0.4600 | 1.3950 | 0.8610 | model_form_blend |
| predicted_SLG | 0.4650 | 0.5526 | 0.5026 | model_form_blend |
| predicted_SO | 0.9800 | 1.9420 | 1.3926 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 102 |
| Season rows before report date | 102 |
| Report year | 2026 |
| Profile rows used | 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 | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| 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 | 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 | C |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 687221 |
| playerID | 687221 |
| playerName | Dalton Rushing |
| pos | C |
| started | True |
| startingPosition | C |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.6 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.385 |
| sl_xwoba | 0.359 |
| sl_xba | 0.273 |
| sl_xslg | 0.47 |
| sl_sweet_spot_percent | 36.7 |
| sl_barrel_batted_rate | 10.1 |
| sl_hard_hit_percent | 40.5 |
| sl_exit_velocity_avg | 88.3 |
| sl_launch_angle_avg | 15.9 |
| sl_whiff_percent | 30.5 |
| 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.127 | 0.000 | 0.000 | Hitting_2B | 0.126 | 0.000 | -0.126 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.206 | 3.000 | 5.000 | Hitting_AB | 3.181 | 2.000 | -0.181 | 1.000 |
| predicted_AVG | 0.250 | 0.333 | 0.200 | Hitting_AVG | 0.245 | 0.000 | 0.088 | 0.333 |
| predicted_BB | 0.405 | 1.000 | 1.000 | Hitting_BB | 0.402 | 1.000 | 0.598 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.640 | 1.000 | 1.000 | Hitting_H | 0.780 | 0.000 | 0.220 | 1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_OBP | 0.332 | 0.500 | 0.333 | Hitting_OBP | 0.328 | 0.333 | 0.172 | 0.167 |
| predicted_R | 0.413 | 1.000 | 1.000 | Hitting_R | 0.409 | 0.000 | 0.591 | 1.000 |
| predicted_RBI | 0.370 | 1.000 | 1.000 | Hitting_RBI | 0.307 | 0.000 | 0.693 | 1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_SLG | 0.357 | 0.333 | 0.200 | Hitting_SLG | 0.351 | 0.000 | -0.018 | 0.333 |
| predicted_SO | 1.008 | 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 | deboosted |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_RBI: 0.3700 -> 1.0000 (boost 0.6300, better) |
| Biggest Deboost | predicted_SO: 1.0080 -> 0.0000 (deboost -1.0080, 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 | 7 | 2 | 6 | 3 | predicted_AB: 3.2060 -> 4.6037 (boost 1.3977, better) | predicted_SLG: 0.3570 -> 0.3468 (deboost -0.0102, 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_R: 0.6865 -> 0.7365 (boost 0.0500, better) | predicted_AVG: 0.2439 -> 0.2308 (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 | 7 | 3 | 4 | 4 | 3 | predicted_AB: 4.6037 -> 5.0000 (boost 0.3963, better) | predicted_SO: 1.3614 -> 1.0000 (deboost -0.3614, better) | AB rounded to 5 (raw=4.60), rates preserved: AVG=0.231 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7365 -> 1.0000 (boost 0.2635, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3384 -> 0.2000 (deboost -0.1384, 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 -> 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.3384 (boost 0.1384, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "690976",
"player_name": "Alex Freeland",
"position": "2B",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.127,
"predicted_3B": 0.0,
"predicted_AB": 3.206,
"predicted_AVG": 0.25,
"predicted_BB": 0.405,
"predicted_H": 0.64,
"predicted_HR": 0.08,
"predicted_OBP": 0.332,
"predicted_R": 0.413,
"predicted_RBI": 0.37,
"predicted_SLG": 0.357,
"predicted_SO": 1.008
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.162,
"predicted_3B": 0.0009,
"predicted_AB": 4.6037,
"predicted_AVG": 0.2439,
"predicted_BB": 0.7066,
"predicted_H": 1.0198,
"predicted_HBP": 0.004,
"predicted_HR": 0.1055,
"predicted_OBP": 0.3378,
"predicted_R": 0.6865,
"predicted_RBI": 0.5744,
"predicted_SLG": 0.3468,
"predicted_SO": 1.3878
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.127,
"after": 0.162,
"delta": 0.035,
"percent_delta": 0.2756,
"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.206,
"after": 4.6037,
"delta": 1.3977,
"percent_delta": 0.436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2439,
"delta": -0.0061,
"percent_delta": -0.0244,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 0.7066,
"delta": 0.3016,
"percent_delta": 0.7447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0198,
"delta": 0.3798,
"percent_delta": 0.5934,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.1055,
"delta": 0.0255,
"percent_delta": 0.3187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3378,
"delta": 0.0058,
"percent_delta": 0.0175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.413,
"after": 0.6865,
"delta": 0.2735,
"percent_delta": 0.6622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.5744,
"delta": 0.2044,
"percent_delta": 0.5524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3468,
"delta": -0.0102,
"percent_delta": -0.0286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.008,
"after": 1.3878,
"delta": 0.3798,
"percent_delta": 0.3768,
"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.206,
"after": 4.6037,
"delta": 1.3977,
"percent_delta": 0.436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.357,
"after": 0.3468,
"delta": -0.0102,
"percent_delta": -0.0286,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 44
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.162,
"predicted_3B": 0.0009,
"predicted_AB": 4.6037,
"predicted_AVG": 0.2308,
"predicted_BB": 0.72,
"predicted_H": 1.0626,
"predicted_HBP": 0.004,
"predicted_HR": 0.1105,
"predicted_OBP": 0.3349,
"predicted_R": 0.7365,
"predicted_RBI": 0.6163,
"predicted_SLG": 0.3384,
"predicted_SO": 1.3614
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.162,
"after": 0.162,
"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.6037,
"after": 4.6037,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2439,
"after": 0.2308,
"delta": -0.0131,
"percent_delta": -0.0537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7066,
"after": 0.72,
"delta": 0.0134,
"percent_delta": 0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0198,
"after": 1.0626,
"delta": 0.0428,
"percent_delta": 0.042,
"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.1055,
"after": 0.1105,
"delta": 0.005,
"percent_delta": 0.0474,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3378,
"after": 0.3349,
"delta": -0.0029,
"percent_delta": -0.0086,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6865,
"after": 0.7365,
"delta": 0.05,
"percent_delta": 0.0728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5744,
"after": 0.6163,
"delta": 0.0419,
"percent_delta": 0.0729,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3468,
"after": 0.3384,
"delta": -0.0084,
"percent_delta": -0.0242,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3878,
"after": 1.3614,
"delta": -0.0264,
"percent_delta": -0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.6865,
"after": 0.7365,
"delta": 0.05,
"percent_delta": 0.0728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2439,
"after": 0.2308,
"delta": -0.0131,
"percent_delta": -0.0537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.60), rates preserved: AVG=0.231 HR/AB=0.024",
"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.162,
"after": 0.0,
"delta": -0.162,
"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.6037,
"after": 5.0,
"delta": 0.3963,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.72,
"after": 1.0,
"delta": 0.28,
"percent_delta": 0.3889,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0626,
"after": 1.0,
"delta": -0.0626,
"percent_delta": -0.0589,
"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.1105,
"after": 0.0,
"delta": -0.1105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.3614,
"after": 1.0,
"delta": -0.3614,
"percent_delta": -0.2655,
"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.6037,
"after": 5.0,
"delta": 0.3963,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.3614,
"after": 1.0,
"delta": -0.3614,
"percent_delta": -0.2655,
"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": 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.7365,
"after": 1.0,
"delta": 0.2635,
"percent_delta": 0.3578,
"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.7365,
"after": 1.0,
"delta": 0.2635,
"percent_delta": 0.3578,
"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.2308,
"after": 0.2,
"delta": -0.0308,
"percent_delta": -0.1334,
"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.3349,
"after": 0.333,
"delta": -0.0019,
"percent_delta": -0.0057,
"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.3384,
"after": 0.2,
"delta": -0.1384,
"percent_delta": -0.409,
"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.3384,
"after": 0.2,
"delta": -0.1384,
"percent_delta": -0.409,
"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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 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": 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.2308,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3349,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3384,
"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.2,
"after": 0.2308,
"delta": 0.0308,
"percent_delta": 0.1541,
"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.333,
"after": 0.3349,
"delta": 0.0019,
"percent_delta": 0.0056,
"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.2,
"after": 0.3384,
"delta": 0.1384,
"percent_delta": 0.6922,
"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.3384,
"delta": 0.1384,
"percent_delta": 0.6922,
"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.127,
"after": 0.0,
"delta": -0.127,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.206,
"after": 3.0,
"delta": -0.206,
"percent_delta": -0.0643,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2308,
"delta": -0.0192,
"percent_delta": -0.0768,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 1.0,
"delta": 0.595,
"percent_delta": 1.4691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 1.0,
"delta": 0.36,
"percent_delta": 0.5625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3349,
"delta": 0.0029,
"percent_delta": 0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.413,
"after": 1.0,
"delta": 0.587,
"percent_delta": 1.4213,
"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.357,
"after": 0.3384,
"delta": -0.0186,
"percent_delta": -0.0521,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.008,
"after": 0.0,
"delta": -1.008,
"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_RBI",
"before": 0.37,
"after": 1.0,
"delta": 0.63,
"percent_delta": 1.7027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.008,
"after": 0.0,
"delta": -1.008,
"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.127 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.206 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.405 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.413 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.357 | - |
| predicted_SO | 1.008 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.035 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.604 | 1.398 |
| predicted_AVG | 0.244 | -0.006 |
| predicted_BB | 0.707 | 0.302 |
| predicted_H | 1.020 | 0.380 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.105 | 0.025 |
| predicted_OBP | 0.338 | 0.006 |
| predicted_R | 0.686 | 0.274 |
| predicted_RBI | 0.574 | 0.204 |
| predicted_SLG | 0.347 | -0.010 |
| predicted_SO | 1.388 | 0.380 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.604 | 0.000 |
| predicted_AVG | 0.231 | -0.013 |
| predicted_BB | 0.720 | 0.013 |
| predicted_H | 1.063 | 0.043 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.111 | 0.005 |
| predicted_OBP | 0.335 | -0.003 |
| predicted_R | 0.737 | 0.050 |
| predicted_RBI | 0.616 | 0.042 |
| predicted_SLG | 0.338 | -0.008 |
| predicted_SO | 1.361 | -0.026 |
AB rounded to 5 (raw=4.60), rates preserved: AVG=0.231 HR/AB=0.024
| 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.162 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.396 |
| predicted_AVG | 0.200 | -0.031 |
| predicted_BB | 1.000 | 0.280 |
| predicted_H | 1.000 | -0.063 |
| predicted_HR | 0.000 | -0.111 |
| predicted_OBP | 0.333 | -0.002 |
| predicted_R | 1.000 | 0.263 |
| predicted_RBI | 1.000 | 0.384 |
| predicted_SLG | 0.200 | -0.138 |
| predicted_SO | 1.000 | -0.361 |
Attached 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 | 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 | - | 14.000 | 2.000 | 0.000 | 0.000 | 0.000 | 2.000 | 3.000 | 4.000 | 4.000 | 0.1429 | 0.3333 | 0.1429 | 0.1429 | 0.0000 | 0.1429 | 0.2857 | 0.2857 |
| last_10 | 0.20 | 10 | - | 27.000 | 8.000 | 1.000 | 0.000 | 1.000 | 6.000 | 6.000 | 6.000 | 7.000 | 0.2963 | 0.4242 | 0.4444 | 0.2963 | 0.0370 | 0.2222 | 0.2222 | 0.2593 |
| season | 0.60 | 44 | - | 404.000 | 99.000 | 16.000 | 0.000 | 9.000 | 39.000 | 52.000 | 51.000 | 127.000 | 0.2450 | 0.3268 | 0.3515 | 0.2450 | 0.0223 | 0.0965 | 0.1262 | 0.3144 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2080 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.4410 |
| predicted_AVG | 0.2358 |
| predicted_BB | 1.1030 |
| predicted_H | 1.5190 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.1390 |
| predicted_OBP | 0.3455 |
| predicted_R | 1.0460 |
| predicted_RBI | 0.8430 |
| predicted_SLG | 0.3333 |
| predicted_SO | 1.8870 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1270 | 0.2080 | 0.1620 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.2060 | 6.4410 | 4.6037 | model_form_blend |
| predicted_AVG | 0.2500 | 0.2358 | 0.2439 | model_form_blend |
| predicted_BB | 0.4050 | 1.1030 | 0.7066 | model_form_blend |
| predicted_H | 0.6400 | 1.5190 | 1.0198 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0800 | 0.1390 | 0.1055 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3455 | 0.3378 | model_form_blend |
| predicted_R | 0.4130 | 1.0460 | 0.6865 | model_form_blend |
| predicted_RBI | 0.3700 | 0.8430 | 0.5744 | model_form_blend |
| predicted_SLG | 0.3570 | 0.3333 | 0.3468 | model_form_blend |
| predicted_SO | 1.0080 | 1.8870 | 1.3878 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 127 |
| Season rows before report date | 127 |
| Report year | 2026 |
| Profile rows used | 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 | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| 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 | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 690976 |
| playerID | 690976 |
| playerName | Alex Freeland |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 26.0 |
| sl_bb_percent | 11.3 |
| sl_woba | 0.312 |
| sl_xwoba | 0.305 |
| sl_xba | 0.227 |
| sl_xslg | 0.359 |
| sl_sweet_spot_percent | 35.5 |
| sl_barrel_batted_rate | 7.5 |
| sl_hard_hit_percent | 38.7 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 9.1 |
| sl_whiff_percent | 27.3 |
| sl_swing_percent | 39.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 | 4.000 | 4.000 | 4.000 | Pitching_BB | 1.273 | 0.000 | 2.727 | 4.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 1.818 | 0.000 | -0.818 | 1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 5.000 | 6.000 | -3.000 | -4.000 |
| predicted_IP | 6.200 | 6.200 | 6.200 | Pitching_InningsPitched | 6.200 | 6.000 | 0.000 | 0.200 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 4.000 | 4.000 | 2.000 | 2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 2 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 1 |
| Better Metrics | 1 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_SO: 5.0000 -> 6.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_IP: 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": "680736",
"player_name": "Justin Wrobleski",
"position": "Starter",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement 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": 1.0,
"predicted_H": 2.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": 4.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 6.2,
"predicted_SO": 5.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": 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": 4.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 6.2,
"predicted_R": 1.0,
"predicted_SO": 6.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": 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": 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": 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 | 4.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 2.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 | 4.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 2.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 | 32.200 | 15.000 | 29.000 | 4.000 | 29.000 | 4.000 | 4.1327 | 1.0102 | 0.4592 | 0.8878 | 0.1225 | 0.8878 | 0.1225 |
| last_10 | 0.35 | 10 | 64.200 | 17.000 | 51.000 | 13.000 | 42.000 | 4.000 | 2.3660 | 0.9897 | 0.2629 | 0.7887 | 0.2010 | 0.6495 | 0.0619 |
| season | 0.20 | 11 | 68.200 | 20.000 | 55.000 | 14.000 | 44.000 | 4.000 | 2.6214 | 1.0049 | 0.2913 | 0.8010 | 0.2039 | 0.6408 | 0.0583 |
| Metric | Value |
|---|---|
| predicted_BB | 1.4940 |
| predicted_ER | 2.5980 |
| predicted_ERA | 3.5753 |
| predicted_H | 5.7200 |
| predicted_HR | 0.6850 |
| predicted_IP | 6.2000 |
| predicted_SO | 5.3080 |
| predicted_WHIP | 1.1029 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 4.0000 | 1.4940 | 2.7020 | model_form_blend |
| predicted_ER | 1.0000 | 2.5980 | 1.8277 | model_form_blend |
| predicted_ERA | - | 3.5753 | 3.5753 | form_only |
| predicted_H | 2.0000 | 5.7200 | 3.9268 | model_form_blend |
| predicted_HR | 0.0000 | 0.6850 | 0.3548 | model_form_blend |
| predicted_IP | 6.2000 | 6.2000 | 6.2000 | model_form_blend |
| predicted_SO | 5.0000 | 5.3080 | 5.1595 | model_form_blend |
| predicted_WHIP | - | 1.1029 | 1.1029 | 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.2 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 4 |
| SO | 6 |
| HR | 0 |
| BF | 26 |
| Pitches | 115 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 24 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.62 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 6 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.0 |
| Pitching_Pitches | 84 |
| Pitching_R | 0 |
| Pitching_SO | 4 |
| Pitching_Strikes | 61 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260604_LAD@ARI |
| game_type | full |
| mlbID | 680736 |
| playerID | 680736 |
| playerName | Justin Wrobleski |
| pos | P |
| started | True |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-04 |
| sl_k_percent | 16.1 |
| sl_bb_percent | 5.1 |
| sl_woba | 0.255 |
| sl_xwoba | 0.31 |
| sl_sweet_spot_percent | 36.9 |
| sl_barrel_batted_rate | 7.0 |
| sl_hard_hit_percent | 42.5 |
| sl_whiff_percent | 17.2 |
| sl_swing_percent | 49.2 |
| sl_avg_best_speed | 79.54054 |
| sl_avg_hyper_speed | 94.342605943 |
| 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.409 | 2.000 | -0.409 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.455 | 4.000 | -0.455 | -4.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.773 | 3.000 | -0.773 | -3.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.927 | 0.100 | 0.073 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 1.227 | 0.000 | 0.773 | 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": "669165",
"player_name": "Kyle Hurt",
"position": "Middle Reliever",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement 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 | 8.000 | 7.000 | 5.000 | 7.000 | 1.000 | 16.6154 | 2.7692 | 1.8461 | 1.6154 | 1.1539 | 1.6154 | 0.2308 |
| last_10 | 0.35 | 10 | 9.100 | 9.000 | 11.000 | 7.000 | 11.000 | 2.000 | 8.6786 | 1.9286 | 0.9643 | 1.1786 | 0.7500 | 1.1786 | 0.2143 |
| season | 0.20 | 22 | 21.100 | 10.000 | 17.000 | 9.000 | 27.000 | 2.000 | 4.2188 | 1.2188 | 0.4688 | 0.7969 | 0.4219 | 1.2656 | 0.0938 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5940 |
| predicted_ER | 0.8410 |
| predicted_ERA | 7.5688 |
| predicted_H | 1.1150 |
| predicted_HR | 0.1670 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1450 |
| predicted_WHIP | 1.7091 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5940 | 0.2499 | model_form_blend |
| predicted_ER | 0.0000 | 0.8410 | 0.3539 | model_form_blend |
| predicted_ERA | - | 7.5688 | 7.5688 | form_only |
| predicted_H | 0.0000 | 1.1150 | 0.4691 | model_form_blend |
| predicted_HR | 0.0000 | 0.1670 | 0.0703 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 1.1450 | 1.6403 | model_form_blend |
| predicted_WHIP | - | 1.7091 | 1.7091 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 22 |
| Season rows before report date | 22 |
| Report year | 2026 |
| Profile rows used | 22 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 2 |
| 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 4 |
| Pitching_ERA | 4.22 |
| 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.1 |
| Pitching_Pitches | 20 |
| Pitching_R | 4 |
| Pitching_SO | 0 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 1 |
| Pitching_decision | L, BS |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 669165 |
| playerID | 669165 |
| playerName | Kyle Hurt |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 30.7 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.296 |
| sl_xwoba | 0.281 |
| sl_sweet_spot_percent | 35.3 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 37.3 |
| sl_whiff_percent | 38.7 |
| sl_swing_percent | 53.4 |
| sl_avg_best_speed | 79.8584104 |
| sl_avg_hyper_speed | 94.256381 |
| 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.100 | 0.000 | -0.100 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.267 | 1.000 | -0.267 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.633 | 2.000 | -0.633 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.860 | 1.000 | 0.140 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.067 | 1.000 | -0.067 | 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": "656945",
"player_name": "Tanner Scott",
"position": "Middle Reliever",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement 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.000 | 5.000 | 8.000 | 0.000 | 4.000 | 2.000 | 11.2500 | 2.0000 | 1.2500 | 2.0000 | 0.0000 | 1.0000 | 0.5000 |
| last_10 | 0.35 | 10 | 9.100 | 5.000 | 10.000 | 1.000 | 14.000 | 2.000 | 4.8214 | 1.1786 | 0.5357 | 1.0714 | 0.1071 | 1.5000 | 0.2143 |
| season | 0.20 | 30 | 27.200 | 8.000 | 19.000 | 3.000 | 32.000 | 4.000 | 2.6024 | 0.7952 | 0.2892 | 0.6867 | 0.1084 | 1.1566 | 0.1446 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1890 |
| predicted_ER | 0.6030 |
| predicted_ERA | 5.8867 |
| predicted_H | 1.1020 |
| predicted_HR | 0.2200 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9930 |
| predicted_WHIP | 1.4014 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1890 | 0.0847 | model_form_blend |
| predicted_ER | 0.0000 | 0.6030 | 0.2702 | model_form_blend |
| predicted_ERA | - | 5.8867 | 5.8867 | form_only |
| predicted_H | 0.0000 | 1.1020 | 0.4938 | model_form_blend |
| predicted_HR | 0.0000 | 0.2200 | 0.0986 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9930 | 0.9969 | model_form_blend |
| predicted_WHIP | - | 1.4014 | 1.4014 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 30 |
| Season rows before report date | 30 |
| Report year | 2026 |
| Profile rows used | 30 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 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 | 1 |
| Pitching_ERA | 2.60 |
| 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 | 17 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260609_LAD@PIT |
| game_type | full |
| mlbID | 656945 |
| playerID | 656945 |
| playerName | Tanner Scott |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-09 |
| sl_k_percent | 30.8 |
| sl_bb_percent | 2.9 |
| sl_woba | 0.237 |
| sl_xwoba | 0.279 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 29.0 |
| sl_whiff_percent | 32.8 |
| sl_swing_percent | 57.0 |
| sl_avg_best_speed | 79.648487353 |
| sl_avg_hyper_speed | 93.007111045 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.414 | 0.000 | -0.414 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.241 | 0.000 | -0.241 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.379 | 0.000 | 0.621 | 1.000 |
| predicted_IP | 0.100 | 0.100 | 0.100 | Pitching_InningsPitched | 0.590 | 0.100 | -0.490 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.034 | 0.000 | -0.034 | 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.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": "681911",
"player_name": "Alex Vesia",
"position": "Middle Reliever",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.3333,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.3333,
"after": 0.1,
"delta": -0.2333,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 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 | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.333 | - |
| 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.000 | 2.000 | 2.000 | 3.000 | 4.000 | 0.000 | 6.0000 | 1.6667 | 0.6667 | 0.6667 | 1.0000 | 1.3333 | 0.0000 |
| last_10 | 0.35 | 10 | 6.200 | 2.000 | 3.000 | 4.000 | 9.000 | 0.000 | 2.7000 | 1.0500 | 0.3000 | 0.4500 | 0.6000 | 1.3500 | 0.0000 |
| season | 0.20 | 29 | 22.000 | 7.000 | 11.000 | 12.000 | 30.000 | 0.000 | 2.8636 | 1.0455 | 0.3182 | 0.5000 | 0.5454 | 1.3636 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2700 |
| predicted_ER | 0.2330 |
| predicted_ERA | 4.3015 |
| predicted_H | 0.3770 |
| predicted_HR | 0.0370 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.5500 |
| predicted_WHIP | 1.3256 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2700 | 0.1145 | model_form_blend |
| predicted_ER | 0.0000 | 0.2330 | 0.0988 | model_form_blend |
| predicted_ERA | - | 4.3015 | 4.3015 | form_only |
| predicted_H | 1.0000 | 0.3770 | 0.7359 | model_form_blend |
| predicted_HR | 0.0000 | 0.0370 | 0.0157 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.5500 | 0.8092 | model_form_blend |
| predicted_WHIP | - | 1.3256 | 1.3256 | 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 | 0.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 2 |
| Pitches | 13 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 2 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.86 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 9 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 681911 |
| playerID | 681911 |
| playerName | Alex Vesia |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-10 |
| sl_k_percent | 33.3 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.211 |
| sl_xwoba | 0.251 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 34.6 |
| sl_swing_percent | 46.8 |
| sl_avg_best_speed | 76.4268325 |
| sl_avg_hyper_speed | 92.027151042 |
| 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.385 | 2.000 | 0.615 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.308 | 0.000 | -0.308 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.692 | 0.000 | -0.692 | 0.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 0.665 | 1.000 | -0.665 | -1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.846 | 3.000 | -0.846 | -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": "595014",
"player_name": "Blake Treinen",
"position": "Middle Reliever",
"team": "LAD",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.1,
"predicted_SO": 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": 0.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.1,
"after": 0.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 | 1.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 | 5 | 3.200 | 2.000 | 2.000 | 4.000 | 6.000 | 0.000 | 4.9091 | 1.6364 | 0.5454 | 0.5454 | 1.0909 | 1.6364 | 0.0000 |
| last_10 | 0.35 | 10 | 7.200 | 2.000 | 3.000 | 6.000 | 10.000 | 0.000 | 2.3478 | 1.1739 | 0.2609 | 0.3913 | 0.7826 | 1.3043 | 0.0000 |
| season | 0.20 | 25 | 20.100 | 5.000 | 14.000 | 10.000 | 22.000 | 1.000 | 2.2131 | 1.1803 | 0.2459 | 0.6885 | 0.4918 | 1.0820 | 0.0492 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2830 |
| predicted_ER | 0.2130 |
| predicted_ERA | 3.9730 |
| predicted_H | 0.3680 |
| predicted_HR | 0.0400 |
| predicted_IP | 0.1000 |
| predicted_SO | 0.5530 |
| predicted_WHIP | 1.3509 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2830 | 0.7019 | model_form_blend |
| predicted_ER | 0.0000 | 0.2130 | 0.0885 | model_form_blend |
| predicted_ERA | - | 3.9730 | 3.9730 | form_only |
| predicted_H | 0.0000 | 0.3680 | 0.1530 | model_form_blend |
| predicted_HR | 0.0000 | 0.0400 | 0.0166 | model_form_blend |
| predicted_IP | 0.1000 | 0.1000 | 0.1000 | model_form_blend |
| predicted_SO | 1.0000 | 0.5530 | 0.8142 | model_form_blend |
| predicted_WHIP | - | 1.3509 | 1.3509 | 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 | 0.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.54 |
| Pitching_Flyouts | 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 | 31 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 16 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260609_LAD@PIT |
| game_type | full |
| mlbID | 595014 |
| playerID | 595014 |
| playerName | Blake Treinen |
| pos | P |
| started | False |
| startingPosition | P |
| team | LAD |
| teamID | 14 |
| game_date | 2026-06-09 |
| sl_k_percent | 24.7 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.315 |
| sl_xwoba | 0.361 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 14.5 |
| sl_hard_hit_percent | 42.9 |
| sl_whiff_percent | 27.3 |
| sl_swing_percent | 45.8 |
| sl_avg_best_speed | 76.368538462 |
| sl_avg_hyper_speed | 94.941985192 |
| Field | Value |
|---|---|
| Pitcher | Mitch Keller |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.3154 |
| ESPN Rank | 176 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0436 |
| Avg Velo | 88.9356 |
| Avg Spin | 2363.1930 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 5 |
| Pre H | 4 |
| Pre BB | 3 |
| Pre SO | 5 |
| Season ERA | 4.8082 |
| Season WHIP | 1.2329 |
| Role Avg IP | 5.6150 |
| Recent Avg IP | 5.2000 |
| Last Start IP | 4.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"opponent": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"edges": {
"quality_edge": -0.3668,
"offense_edge": 0.0954,
"opponent_offense_edge": 0.2007,
"defense_strength": -0.0533,
"opponent_defense_weakness": -0.3399,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9757,
"run_prevention": 1.0558,
"strikeout": 0.9729
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656605",
"profile": {
"available": true,
"pitcher_id": "656605",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 256.0,
"k_percent": 18.0,
"bb_percent": 7.5,
"woba": 0.301,
"xwoba": 0.333,
"sweet_spot_percent": 37.7,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 39.0,
"avg_best_speed": 76.2984,
"avg_hyper_speed": 94.0155,
"whiff_percent": 20.9,
"swing_percent": 48.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1791,
"command_and_miss": -0.4621,
"regression_edge": -0.9143,
"xwoba_edge": -0.5143,
"barrel_edge": 0.1111,
"hard_hit_edge": -0.0857,
"whiff_edge": -0.6714,
"bb_edge": 0.375,
"pitch_design_score": -0.0436
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656605",
"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": 88.93561542247289,
"release_spin_rate": 2363.1930330122427,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 88.93561542247289,
"release_spin_rate": 2363.1930330122427,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9356,
"release_spin_rate": 2363.193,
"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.0436,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3113,
"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.3154,
"sample_weight": 1.0,
"run_prevention_factor": 1.0268,
"strikeout_factor": 0.9463,
"walk_factor": 0.97,
"homer_factor": 1.01,
"woba_minus_xwoba": -0.032,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656605",
"espn_id": 33722,
"player_name": "Mitch Keller",
"team": "PIT",
"role": "pitcher",
"espn_rank": 176,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 176,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 7.0,
"qs_rank": 20,
"era_value": 4.8082,
"era_rank": 60.0,
"w_value": 5.0,
"w_rank": 30,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 73.0,
"ip_rank": 42,
"h_value": 67.0,
"h_rank": 40,
"er_value": 39.0,
"er_rank": 17,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 23.0,
"bb_rank": 62,
"k_value": 55.0,
"k_rank": 83,
"k_per_9_value": 6.7808223,
"k_per_9_rank": 53,
"whip_value": 1.2328,
"whip_rank": 39.0,
"war_value": 0.49,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 4.0,
"factor": 1.0268,
"adjusted": 4
},
"predicted_H": {
"original": 6.0,
"factor": 1.0268,
"adjusted": 6
},
"predicted_BB": {
"original": 2.0,
"factor": 0.97,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.01,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.9463,
"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": 55.0,
"ER": 37,
"H": 55,
"BB": 18,
"SO": 44,
"HR": 5,
"ERA": 6.054545454545455,
"WHIP": 1.3272727272727274,
"K9": 7.2,
"HR9": 0.8181818181818182,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "656605",
"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": 88.93561542247289,
"release_spin_rate": 2363.1930330122427,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 88.93561542247289,
"release_spin_rate": 2363.1930330122427,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9356,
"release_spin_rate": 2363.193,
"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.0436,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3113,
"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": "656605",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 5.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 26.0,
"ER": 24.0,
"R": 24.0,
"H": 32.0,
"BB": 9.0,
"SO": 20.0,
"HR": 3.0,
"BF": 119.0,
"Pitches": 440.0
},
"per_game": {
"IP": 5.1,
"ER": 4.8,
"R": 4.8,
"H": 6.4,
"BB": 1.8,
"SO": 4.0,
"HR": 0.6,
"BF": 23.8,
"Pitches": 88.0
},
"rates": {
"ERA": 8.3077,
"WHIP": 1.5769,
"ER_per_IP": 0.92308,
"H_per_IP": 1.23077,
"BB_per_IP": 0.34615,
"SO_per_IP": 0.76923,
"HR_per_IP": 0.11538
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.0,
"ER": 37.0,
"R": 37.0,
"H": 55.0,
"BB": 18.0,
"SO": 44.0,
"HR": 5.0,
"BF": 236.0,
"Pitches": 900.0
},
"per_game": {
"IP": 5.1,
"ER": 3.7,
"R": 3.7,
"H": 5.5,
"BB": 1.8,
"SO": 4.4,
"HR": 0.5,
"BF": 23.6,
"Pitches": 90.0
},
"rates": {
"ERA": 6.0545,
"WHIP": 1.3273,
"ER_per_IP": 0.67273,
"H_per_IP": 1.0,
"BB_per_IP": 0.32727,
"SO_per_IP": 0.8,
"HR_per_IP": 0.09091
}
},
"season": {
"games": 13,
"totals": {
"IP": 73.0,
"ER": 39.0,
"R": 39.0,
"H": 67.0,
"BB": 23.0,
"SO": 55.0,
"HR": 5.0,
"BF": 305.0,
"Pitches": 1140.0
},
"per_game": {
"IP": 5.2,
"ER": 3.0,
"R": 3.0,
"H": 5.1538,
"BB": 1.7692,
"SO": 4.2308,
"HR": 0.3846,
"BF": 23.4615,
"Pitches": 87.6923
},
"rates": {
"ERA": 4.8082,
"WHIP": 1.2329,
"ER_per_IP": 0.53425,
"H_per_IP": 0.91781,
"BB_per_IP": 0.31507,
"SO_per_IP": 0.75342,
"HR_per_IP": 0.06849
}
}
},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 3.671,
"predicted_H": 5.661,
"predicted_BB": 1.841,
"predicted_SO": 4.418,
"predicted_HR": 0.589,
"predicted_ERA": 6.14,
"predicted_WHIP": 1.3941
}
}{
"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": 3.671,
"final": 4.2921,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 5.661,
"final": 4.8847,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 1.841,
"final": 2.3827,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 4.418,
"final": 4.69,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.589,
"final": 0.7811,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.14,
"final": 6.14,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3941,
"final": 1.3941,
"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 | Dennis Santana |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2473 |
| ESPN Rank | 483 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0048 |
| Avg Velo | 89.7993 |
| Avg Spin | 2454.4801 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 4.3333 |
| Season WHIP | 1.4444 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"opponent": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"edges": {
"quality_edge": -0.3668,
"offense_edge": 0.0954,
"opponent_offense_edge": 0.2007,
"defense_strength": -0.0533,
"opponent_defense_weakness": -0.3399,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9757,
"run_prevention": 1.0558,
"strikeout": 0.9729
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "642701",
"profile": {
"available": true,
"pitcher_id": "642701",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 103.0,
"k_percent": 17.7,
"bb_percent": 12.9,
"woba": 0.353,
"xwoba": 0.349,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 9.5,
"hard_hit_percent": 38.1,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 93.6406,
"whiff_percent": 24.7,
"swing_percent": 48.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.7416,
"command_and_miss": -0.5614,
"regression_edge": 0.1143,
"xwoba_edge": -0.9714,
"barrel_edge": -0.4889,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.1286,
"bb_edge": -0.975,
"pitch_design_score": 0.0048
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "642701",
"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": 89.7993222392863,
"release_spin_rate": 2454.4800941257927,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.7993222392863,
"release_spin_rate": 2454.4800941257927,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.7993,
"release_spin_rate": 2454.4801,
"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.0048,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0342,
"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.2473,
"sample_weight": 0.45,
"run_prevention_factor": 1.021,
"strikeout_factor": 0.9848,
"walk_factor": 1.0351,
"homer_factor": 1.0299,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642701",
"espn_id": 39801,
"player_name": "Dennis Santana",
"team": "PIT",
"role": "pitcher",
"espn_rank": 483,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 483,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.0,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 27.0,
"ip_rank": 266,
"h_value": 27.0,
"h_rank": 213,
"er_value": 15.0,
"er_rank": 189,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 16.0,
"bb_rank": 159,
"k_value": 22.0,
"k_rank": 310,
"k_per_9_value": 7.3333335,
"k_per_9_rank": 31,
"whip_value": 1.5925,
"whip_rank": null,
"war_value": -0.11,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0094,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0094,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0158,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0135,
"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.2,
"ER": 6,
"H": 9,
"BB": 7,
"SO": 12,
"HR": 1,
"ERA": 6.230769230769231,
"WHIP": 1.8461538461538463,
"K9": 12.461538461538462,
"HR9": 1.0384615384615385,
"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-09T00:00:00"
}{
"available": true,
"pitcher_id": "642701",
"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": 89.7993222392863,
"release_spin_rate": 2454.4800941257927,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.7993222392863,
"release_spin_rate": 2454.4800941257927,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.7993,
"release_spin_rate": 2454.4801,
"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.0048,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0342,
"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.334,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5162,
"prior_weight": 0.4838
},
"role": "pitcher",
"player_id": "642701",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 5.0,
"SO": 6.0,
"HR": 0.0,
"BF": 24.0,
"Pitches": 86.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 1.0,
"SO": 1.2,
"HR": 0.0,
"BF": 4.8,
"Pitches": 17.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.9286,
"ER_per_IP": 0.42857,
"H_per_IP": 0.85714,
"BB_per_IP": 1.07143,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 6.0,
"R": 6.0,
"H": 9.0,
"BB": 7.0,
"SO": 12.0,
"HR": 1.0,
"BF": 46.0,
"Pitches": 170.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.6,
"H": 0.9,
"BB": 0.7,
"SO": 1.2,
"HR": 0.1,
"BF": 4.6,
"Pitches": 17.0
},
"rates": {
"ERA": 5.5862,
"WHIP": 1.6552,
"ER_per_IP": 0.62069,
"H_per_IP": 0.93103,
"BB_per_IP": 0.72414,
"SO_per_IP": 1.24138,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 28,
"totals": {
"IP": 27.0,
"ER": 13.0,
"R": 14.0,
"H": 23.0,
"BB": 16.0,
"SO": 22.0,
"HR": 3.0,
"BF": 120.0,
"Pitches": 457.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4643,
"R": 0.5,
"H": 0.8214,
"BB": 0.5714,
"SO": 0.7857,
"HR": 0.1071,
"BF": 4.2857,
"Pitches": 16.3214
},
"rates": {
"ERA": 4.3333,
"WHIP": 1.4444,
"ER_per_IP": 0.48148,
"H_per_IP": 0.85185,
"BB_per_IP": 0.59259,
"SO_per_IP": 0.81481,
"HR_per_IP": 0.11111
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.497,
"predicted_H": 0.92,
"predicted_BB": 0.617,
"predicted_SO": 1.06,
"predicted_HR": 0.098,
"predicted_ERA": 4.4689,
"predicted_WHIP": 1.5371
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5544,
"form_weight": 0.4456,
"form_reliability": 0.5162,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.334,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5162,
"prior_weight": 0.4838
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.497,
"final": 0.2215,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.92,
"final": 0.9644,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.617,
"final": 0.8293,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.06,
"final": 0.4723,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.098,
"final": 0.0437,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4689,
"final": 4.4689,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5371,
"final": 1.5371,
"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 | Evan Sisk |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.4589 |
| ESPN Rank | 76 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.5625 |
| Avg Spin | 2085.8405 |
| 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.2706 |
| Season WHIP | 1.0588 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"opponent": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"edges": {
"quality_edge": -0.3668,
"offense_edge": 0.0954,
"opponent_offense_edge": 0.2007,
"defense_strength": -0.0533,
"opponent_defense_weakness": -0.3399,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9757,
"run_prevention": 1.0558,
"strikeout": 0.9729
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681895",
"profile": {
"available": true,
"pitcher_id": "681895",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 88.0,
"k_percent": 31.3,
"bb_percent": 8.9,
"woba": 0.272,
"xwoba": 0.242,
"sweet_spot_percent": 28.1,
"barrel_batted_rate": 3.1,
"hard_hit_percent": 31.3,
"avg_best_speed": 74.964,
"avg_hyper_speed": 92.6875,
"whiff_percent": 27.5,
"swing_percent": 42.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.4048,
"command_and_miss": 0.6529,
"regression_edge": 0.8571,
"xwoba_edge": 2.0857,
"barrel_edge": 0.9333,
"hard_hit_edge": 1.0143,
"whiff_edge": 0.2714,
"bb_edge": 0.025,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "681895",
"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.56246813384368,
"release_spin_rate": 2085.840520121347,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.56246813384368,
"release_spin_rate": 2085.840520121347,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5625,
"release_spin_rate": 2085.8405,
"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.4589,
"sample_weight": 0.45,
"run_prevention_factor": 0.961,
"strikeout_factor": 1.027,
"walk_factor": 0.9991,
"homer_factor": 0.92,
"woba_minus_xwoba": 0.03,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "681895",
"espn_id": 3994084,
"player_name": "Evan Sisk",
"team": "PIT",
"role": "pitcher",
"espn_rank": 76,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 76,
"gp_value": 24.0,
"gp_rank": 119,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.2705,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 3.0,
"hld_rank": 136,
"ip_value": 28.1,
"ip_rank": 248,
"h_value": 20.0,
"h_rank": 299,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 35.0,
"k_rank": 176,
"k_per_9_value": 11.117647,
"k_per_9_rank": 19,
"whip_value": 1.0588,
"whip_rank": null,
"war_value": 1.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9824,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9824,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9996,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.964,
"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": 11.0,
"ER": 1,
"H": 7,
"BB": 6,
"SO": 14,
"HR": 1,
"ERA": 0.8181818181818183,
"WHIP": 1.181818181818182,
"K9": 11.454545454545457,
"HR9": 0.8181818181818183,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "681895",
"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.56246813384368,
"release_spin_rate": 2085.840520121347,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.56246813384368,
"release_spin_rate": 2085.840520121347,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5625,
"release_spin_rate": 2085.8405,
"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.597,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5282,
"prior_weight": 0.4718
},
"role": "pitcher",
"player_id": "681895",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 24,
"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": 8.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.4,
"SO": 1.6,
"HR": 0.0,
"BF": 4.0,
"Pitches": 18.8
},
"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.5,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.0,
"ER": 1.0,
"R": 1.0,
"H": 7.0,
"BB": 6.0,
"SO": 14.0,
"HR": 1.0,
"BF": 43.0,
"Pitches": 189.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.1,
"H": 0.7,
"BB": 0.6,
"SO": 1.4,
"HR": 0.1,
"BF": 4.3,
"Pitches": 18.9
},
"rates": {
"ERA": 0.8182,
"WHIP": 1.1818,
"ER_per_IP": 0.09091,
"H_per_IP": 0.63636,
"BB_per_IP": 0.54545,
"SO_per_IP": 1.27273,
"HR_per_IP": 0.09091
}
},
"season": {
"games": 24,
"totals": {
"IP": 28.1,
"ER": 4.0,
"R": 4.0,
"H": 20.0,
"BB": 10.0,
"SO": 35.0,
"HR": 1.0,
"BF": 112.0,
"Pitches": 483.0
},
"per_game": {
"IP": 1.1,
"ER": 0.1667,
"R": 0.1667,
"H": 0.8333,
"BB": 0.4167,
"SO": 1.4583,
"HR": 0.0417,
"BF": 4.6667,
"Pitches": 20.125
},
"rates": {
"ERA": 1.2706,
"WHIP": 1.0588,
"ER_per_IP": 0.14118,
"H_per_IP": 0.70588,
"BB_per_IP": 0.35294,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.03529
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.27,
"predicted_H": 0.806,
"predicted_BB": 0.414,
"predicted_SO": 1.205,
"predicted_HR": 0.09,
"predicted_ERA": 2.3493,
"predicted_WHIP": 1.1782
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5493,
"form_weight": 0.4507,
"form_reliability": 0.5282,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.597,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5282,
"prior_weight": 0.4718
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.27,
"final": 0.1217,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.806,
"final": 0.3632,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.414,
"final": 0.1866,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.205,
"final": 1.0924,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.09,
"final": 0.0406,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.3493,
"final": 2.3493,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1782,
"final": 1.1782,
"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 | Gregory Soto |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3114 |
| ESPN Rank | 189 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0298 |
| Avg Velo | 90.2464 |
| Avg Spin | 2396.4105 |
| 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.4545 |
| Season WHIP | 0.7841 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"opponent": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"edges": {
"quality_edge": -0.3668,
"offense_edge": 0.0954,
"opponent_offense_edge": 0.2007,
"defense_strength": -0.0533,
"opponent_defense_weakness": -0.3399,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9757,
"run_prevention": 1.0558,
"strikeout": 0.9729
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "642397",
"profile": {
"available": true,
"pitcher_id": "642397",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 97.0,
"k_percent": 29.3,
"bb_percent": 10.3,
"woba": 0.237,
"xwoba": 0.265,
"sweet_spot_percent": 26.5,
"barrel_batted_rate": 5.9,
"hard_hit_percent": 36.8,
"avg_best_speed": 72.8992,
"avg_hyper_speed": 93.177,
"whiff_percent": 26.7,
"swing_percent": 42.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.1819,
"command_and_miss": 0.4143,
"regression_edge": -0.8,
"xwoba_edge": 1.4286,
"barrel_edge": 0.3111,
"hard_hit_edge": 0.2286,
"whiff_edge": 0.1571,
"bb_edge": -0.325,
"pitch_design_score": 0.0298
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "642397",
"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": 90.24636292182763,
"release_spin_rate": 2396.4104591552236,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 90.24636292182763,
"release_spin_rate": 2396.4104591552236,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2464,
"release_spin_rate": 2396.4105,
"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.0298,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.213,
"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.0198,
"walk_factor": 1.0117,
"homer_factor": 0.9654,
"woba_minus_xwoba": -0.028,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "642397",
"espn_id": 39804,
"player_name": "Gregory Soto",
"team": "PIT",
"role": "pitcher",
"espn_rank": 189,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 189,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.375,
"era_rank": null,
"w_value": 4.0,
"w_rank": 56,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 9.0,
"sv_rank": 15,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 29.1,
"ip_rank": 227,
"h_value": 15.0,
"h_rank": 391,
"er_value": 11.0,
"er_rank": 265,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 12.0,
"bb_rank": 228,
"k_value": 34.0,
"k_rank": 182,
"k_per_9_value": 10.431818,
"k_per_9_rank": 21,
"whip_value": 0.9204,
"whip_rank": null,
"war_value": 0.45,
"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.0053,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9844,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0089,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.0,
"ER": 5,
"H": 6,
"BB": 4,
"SO": 8,
"HR": 1,
"ERA": 5.0,
"WHIP": 1.1111111111111112,
"K9": 8.0,
"HR9": 1.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-10T00:00:00"
}{
"available": true,
"pitcher_id": "642397",
"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": 90.24636292182763,
"release_spin_rate": 2396.4104591552236,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 90.24636292182763,
"release_spin_rate": 2396.4104591552236,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2464,
"release_spin_rate": 2396.4105,
"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.0298,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.213,
"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.795,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5368,
"prior_weight": 0.4632
},
"role": "pitcher",
"player_id": "642397",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 2.0,
"BB": 1.0,
"SO": 4.0,
"HR": 1.0,
"BF": 18.0,
"Pitches": 60.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.4,
"BB": 0.2,
"SO": 0.8,
"HR": 0.2,
"BF": 3.6,
"Pitches": 12.0
},
"rates": {
"ERA": 3.6,
"WHIP": 0.6,
"ER_per_IP": 0.4,
"H_per_IP": 0.4,
"BB_per_IP": 0.2,
"SO_per_IP": 0.8,
"HR_per_IP": 0.2
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 5.0,
"R": 6.0,
"H": 6.0,
"BB": 4.0,
"SO": 9.0,
"HR": 1.0,
"BF": 42.0,
"Pitches": 164.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.6,
"H": 0.6,
"BB": 0.4,
"SO": 0.9,
"HR": 0.1,
"BF": 4.2,
"Pitches": 16.4
},
"rates": {
"ERA": 4.3548,
"WHIP": 0.9677,
"ER_per_IP": 0.48387,
"H_per_IP": 0.58065,
"BB_per_IP": 0.3871,
"SO_per_IP": 0.87097,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 29,
"totals": {
"IP": 29.1,
"ER": 8.0,
"R": 9.0,
"H": 12.0,
"BB": 11.0,
"SO": 34.0,
"HR": 2.0,
"BF": 112.0,
"Pitches": 456.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2759,
"R": 0.3103,
"H": 0.4138,
"BB": 0.3793,
"SO": 1.1724,
"HR": 0.069,
"BF": 3.8621,
"Pitches": 15.7241
},
"rates": {
"ERA": 2.4545,
"WHIP": 0.7841,
"ER_per_IP": 0.27273,
"H_per_IP": 0.40909,
"BB_per_IP": 0.375,
"SO_per_IP": 1.15909,
"HR_per_IP": 0.06818
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.442,
"predicted_H": 0.694,
"predicted_BB": 0.33,
"predicted_SO": 0.915,
"predicted_HR": 0.139,
"predicted_ERA": 3.9775,
"predicted_WHIP": 1.0246
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5457,
"form_weight": 0.4543,
"form_reliability": 0.5368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.795,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5368,
"prior_weight": 0.4632
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.442,
"final": 0.2008,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.694,
"final": 0.861,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.33,
"final": 0.1499,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.915,
"final": 0.9614,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.139,
"final": 0.0631,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9775,
"final": 3.9775,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0246,
"final": 1.0246,
"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 | Carmen Mlodzinski |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.5474 |
| ESPN Rank | 112 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0070 |
| Avg Velo | 89.5889 |
| Avg Spin | 2039.5386 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 1 |
| Pre H | 2 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 4.0213 |
| Season WHIP | 1.4043 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"opponent": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"edges": {
"quality_edge": -0.3668,
"offense_edge": 0.0954,
"opponent_offense_edge": 0.2007,
"defense_strength": -0.0533,
"opponent_defense_weakness": -0.3399,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9757,
"run_prevention": 1.0558,
"strikeout": 0.9729
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "669387",
"profile": {
"available": true,
"pitcher_id": "669387",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 219.0,
"k_percent": 19.3,
"bb_percent": 8.5,
"woba": 0.326,
"xwoba": 0.348,
"sweet_spot_percent": 35.9,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 50.5,
"avg_best_speed": 81.9966,
"avg_hyper_speed": 95.4465,
"whiff_percent": 21.3,
"swing_percent": 44.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.813,
"command_and_miss": -0.4086,
"regression_edge": -0.6286,
"xwoba_edge": -0.9429,
"barrel_edge": -0.1111,
"hard_hit_edge": -1.7286,
"whiff_edge": -0.6143,
"bb_edge": 0.125,
"pitch_design_score": -0.007
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "669387",
"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": 89.58893299968382,
"release_spin_rate": 2039.538621564447,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.58893299968382,
"release_spin_rate": 2039.538621564447,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5889,
"release_spin_rate": 2039.5386,
"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.007,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0499,
"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.5474,
"sample_weight": 0.876,
"run_prevention_factor": 1.0465,
"strikeout_factor": 0.9615,
"walk_factor": 0.9912,
"homer_factor": 1.0931,
"woba_minus_xwoba": -0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669387",
"espn_id": 4298378,
"player_name": "Carmen Mlodzinski",
"team": "PIT",
"role": "pitcher",
"espn_rank": 112,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 112,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 9.0,
"gs_rank": 116,
"qs_value": 1.0,
"qs_rank": 131,
"era_value": 4.0212,
"era_rank": null,
"w_value": 4.0,
"w_rank": 56,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 62.2,
"ip_rank": 83,
"h_value": 65.0,
"h_rank": 50,
"er_value": 28.0,
"er_rank": 85,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 23.0,
"bb_rank": 62,
"k_value": 52.0,
"k_rank": 95,
"k_per_9_value": 7.468085,
"k_per_9_rank": 30,
"whip_value": 1.4042,
"whip_rank": null,
"war_value": 0.85,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0407,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0407,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0816,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9663,
"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": 48.1,
"ER": 24,
"H": 48,
"BB": 17,
"SO": 37,
"HR": 5,
"ERA": 4.468965517241379,
"WHIP": 1.3448275862068966,
"K9": 6.889655172413793,
"HR9": 0.9310344827586207,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "669387",
"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": 89.58893299968382,
"release_spin_rate": 2039.538621564447,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.58893299968382,
"release_spin_rate": 2039.538621564447,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5889,
"release_spin_rate": 2039.5386,
"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.007,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0499,
"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": "669387",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 22.2,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 10.0,
"SO": 11.0,
"HR": 3.0,
"BF": 93.0,
"Pitches": 388.0
},
"per_game": {
"IP": 4.2,
"ER": 1.6,
"R": 1.6,
"H": 4.0,
"BB": 2.0,
"SO": 2.2,
"HR": 0.6,
"BF": 18.6,
"Pitches": 77.6
},
"rates": {
"ERA": 3.1765,
"WHIP": 1.3235,
"ER_per_IP": 0.35294,
"H_per_IP": 0.88235,
"BB_per_IP": 0.44118,
"SO_per_IP": 0.48529,
"HR_per_IP": 0.13235
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 48.1,
"ER": 24.0,
"R": 25.0,
"H": 48.0,
"BB": 17.0,
"SO": 37.0,
"HR": 5.0,
"BF": 206.0,
"Pitches": 818.0
},
"per_game": {
"IP": 4.2,
"ER": 2.4,
"R": 2.5,
"H": 4.8,
"BB": 1.7,
"SO": 3.7,
"HR": 0.5,
"BF": 20.6,
"Pitches": 81.8
},
"rates": {
"ERA": 4.469,
"WHIP": 1.3448,
"ER_per_IP": 0.49655,
"H_per_IP": 0.9931,
"BB_per_IP": 0.35172,
"SO_per_IP": 0.76552,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 13,
"totals": {
"IP": 62.2,
"ER": 28.0,
"R": 29.0,
"H": 65.0,
"BB": 23.0,
"SO": 52.0,
"HR": 5.0,
"BF": 270.0,
"Pitches": 1068.0
},
"per_game": {
"IP": 4.2,
"ER": 2.1538,
"R": 2.2308,
"H": 5.0,
"BB": 1.7692,
"SO": 4.0,
"HR": 0.3846,
"BF": 20.7692,
"Pitches": 82.1538
},
"rates": {
"ERA": 4.0213,
"WHIP": 1.4043,
"ER_per_IP": 0.44681,
"H_per_IP": 1.03723,
"BB_per_IP": 0.36702,
"SO_per_IP": 0.82979,
"HR_per_IP": 0.07979
}
}
},
"weighted_prediction": {
"predicted_IP": 3.2,
"predicted_ER": 1.564,
"predicted_H": 3.393,
"predicted_BB": 1.375,
"predicted_SO": 2.599,
"predicted_HR": 0.426,
"predicted_ERA": 3.958,
"predicted_WHIP": 1.3409
}
}{
"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": 0.2,
"form": 3.2,
"final": 2.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 1.564,
"final": 1.3004,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 3.393,
"final": 2.742,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 1.375,
"final": 1.1997,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 2.599,
"final": 1.8517,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.426,
"final": 0.6943,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.958,
"final": 3.958,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3409,
"final": 1.3409,
"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 Montgomery |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0707 |
| ESPN Rank | 327 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2800 |
| Avg Velo | 95.1237 |
| Avg Spin | 2357.1303 |
| 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 | 3.8571 |
| Season WHIP | 1.3247 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "PIT",
"games": 74,
"wins": 37,
"losses": 37,
"win_pct": 0.5,
"runs_scored": 364.0,
"runs_allowed": 351.0,
"run_differential": 13.0,
"run_differential_per_game": 0.1757,
"avg_runs_scored": 4.9189,
"avg_runs_allowed": 4.7432,
"offense_index": 1.0954,
"defense_index": 0.9467,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 6.3,
"avg_runs_allowed": 6.5,
"run_differential": -2.0
},
"available": true,
"quality_score": 0.0215
},
"opponent": {
"team": "LAD",
"games": 74,
"wins": 46,
"losses": 28,
"win_pct": 0.6216,
"runs_scored": 399.0,
"runs_allowed": 248.0,
"run_differential": 151.0,
"run_differential_per_game": 2.0405,
"avg_runs_scored": 5.3919,
"avg_runs_allowed": 3.3514,
"offense_index": 1.2007,
"defense_index": 1.3399,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 6.0,
"avg_runs_allowed": 4.0,
"run_differential": 20.0
},
"available": true,
"quality_score": 0.3883
},
"edges": {
"quality_edge": -0.3668,
"offense_edge": 0.0954,
"opponent_offense_edge": 0.2007,
"defense_strength": -0.0533,
"opponent_defense_weakness": -0.3399,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9757,
"run_prevention": 1.0558,
"strikeout": 0.9729
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "682254",
"profile": {
"available": true,
"pitcher_id": "682254",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 91.0,
"k_percent": 30.4,
"bb_percent": 12.5,
"woba": 0.312,
"xwoba": 0.311,
"sweet_spot_percent": 26.6,
"barrel_batted_rate": 9.4,
"hard_hit_percent": 45.3,
"avg_best_speed": 74.6878,
"avg_hyper_speed": 95.1592,
"whiff_percent": 29.9,
"swing_percent": 49.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.0128,
"command_and_miss": 0.535,
"regression_edge": 0.0286,
"xwoba_edge": 0.1143,
"barrel_edge": -0.4667,
"hard_hit_edge": -0.9857,
"whiff_edge": 0.6143,
"bb_edge": -0.875,
"pitch_design_score": 0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "682254",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 95.12373202882664,
"release_spin_rate": 2357.1303297116206,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 95.12373202882664,
"release_spin_rate": 2357.1303297116206,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1237,
"release_spin_rate": 2357.1303,
"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.0707,
"sample_weight": 0.45,
"run_prevention_factor": 0.994,
"strikeout_factor": 1.0309,
"walk_factor": 1.0315,
"homer_factor": 1.033,
"woba_minus_xwoba": 0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682254",
"espn_id": 4424112,
"player_name": "Mason Montgomery",
"team": "PIT",
"role": "pitcher",
"espn_rank": 327,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 327,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 4.0,
"gs_rank": 169,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.5584,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 7.0,
"hld_rank": 49,
"ip_value": 25.2,
"ip_rank": 287,
"h_value": 22.0,
"h_rank": 276,
"er_value": 13.0,
"er_rank": 224,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 34.0,
"k_rank": 182,
"k_per_9_value": 11.922077,
"k_per_9_rank": 17,
"whip_value": 1.4025,
"whip_rank": null,
"war_value": 0.09,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9973,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9973,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0142,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0149,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0139,
"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": 6,
"H": 8,
"BB": 6,
"SO": 11,
"HR": 1,
"ERA": 5.4,
"WHIP": 1.4,
"K9": 9.9,
"HR9": 0.9,
"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": "682254",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 95.12373202882664,
"release_spin_rate": 2357.1303297116206,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 22,
"pitch_usage": 0.0,
"release_speed": 95.12373202882664,
"release_spin_rate": 2357.1303297116206,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1237,
"release_spin_rate": 2357.1303,
"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.07,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5035,
"prior_weight": 0.4965
},
"role": "pitcher",
"player_id": "682254",
"report_date": "20260611_L",
"season_year": 2026,
"rows_used": 25,
"reference_playing_time": 0.1,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 5.0,
"R": 5.0,
"H": 5.0,
"BB": 6.0,
"SO": 6.0,
"HR": 0.0,
"BF": 26.0,
"Pitches": 123.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 1.0,
"BB": 1.2,
"SO": 1.2,
"HR": 0.0,
"BF": 5.2,
"Pitches": 24.6
},
"rates": {
"ERA": 9.0,
"WHIP": 2.2,
"ER_per_IP": 1.0,
"H_per_IP": 1.0,
"BB_per_IP": 1.2,
"SO_per_IP": 1.2,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.2,
"ER": 6.0,
"R": 6.0,
"H": 8.0,
"BB": 6.0,
"SO": 12.0,
"HR": 1.0,
"BF": 48.0,
"Pitches": 197.0
},
"per_game": {
"IP": 1.1,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 0.6,
"SO": 1.2,
"HR": 0.1,
"BF": 4.8,
"Pitches": 19.7
},
"rates": {
"ERA": 4.6286,
"WHIP": 1.2,
"ER_per_IP": 0.51429,
"H_per_IP": 0.68571,
"BB_per_IP": 0.51429,
"SO_per_IP": 1.02857,
"HR_per_IP": 0.08571
}
},
"season": {
"games": 25,
"totals": {
"IP": 25.2,
"ER": 11.0,
"R": 11.0,
"H": 20.0,
"BB": 14.0,
"SO": 34.0,
"HR": 2.0,
"BF": 110.0,
"Pitches": 447.0
},
"per_game": {
"IP": 1.0,
"ER": 0.44,
"R": 0.44,
"H": 0.8,
"BB": 0.56,
"SO": 1.36,
"HR": 0.08,
"BF": 4.4,
"Pitches": 17.88
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.3247,
"ER_per_IP": 0.42857,
"H_per_IP": 0.77922,
"BB_per_IP": 0.54545,
"SO_per_IP": 1.32468,
"HR_per_IP": 0.07792
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.438,
"predicted_H": 0.657,
"predicted_BB": 0.436,
"predicted_SO": 0.765,
"predicted_HR": 0.068,
"predicted_ERA": 5.4151,
"predicted_WHIP": 1.5011
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5598,
"form_weight": 0.4402,
"form_reliability": 0.5035,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.07,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5035,
"prior_weight": 0.4965
},
"applied_metrics": {
"predicted_IP": {
"model": 0.1,
"form": 0.2,
"final": 0.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.438,
"final": 0.1928,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.657,
"final": 1.4088,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.436,
"final": 0.1919,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.765,
"final": 0.3368,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.068,
"final": 0.0299,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.4151,
"final": 5.4151,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5011,
"final": 1.5011,
"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.201 | 0.000 | 0.000 | Hitting_2B | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.320 | 3.000 | 7.000 | Hitting_AB | 3.995 | 3.000 | -0.995 | 0.000 |
| predicted_AVG | 0.248 | 0.000 | 0.286 | Hitting_AVG | 0.306 | 0.000 | -0.306 | 0.000 |
| predicted_BB | 0.273 | 0.000 | 0.000 | Hitting_BB | 0.276 | 1.000 | -0.276 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.048 | 0.000 | -0.048 | 0.000 |
| predicted_H | 1.070 | 0.000 | 2.000 | Hitting_H | 1.224 | 0.000 | -1.224 | 0.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.010 | 0.000 | -0.010 | 0.000 |
| predicted_OBP | 0.318 | 0.250 | 0.286 | Hitting_OBP | 0.359 | 0.250 | -0.109 | 0.000 |
| predicted_R | 0.545 | 0.000 | 1.000 | Hitting_R | 0.543 | 1.000 | -0.543 | -1.000 |
| predicted_RBI | 0.560 | 0.000 | 1.000 | Hitting_RBI | 0.490 | 0.000 | -0.490 | 0.000 |
| predicted_SLG | 0.385 | 0.000 | 0.286 | Hitting_SLG | 0.364 | 0.000 | -0.364 | 0.000 |
| predicted_SO | 0.804 | 2.000 | 1.000 | Hitting_SO | 0.800 | 1.000 | 1.200 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.8040 -> 2.0000 (boost 1.1960, worse) |
| Biggest Deboost | predicted_AB: 4.3200 -> 3.0000 (deboost -1.3200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 9 | 8 | 1 | 7 | 2 | predicted_AB: 4.3200 -> 6.6569 (boost 2.3369, better) | predicted_SLG: 0.3850 -> 0.3769 (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 | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.7834 -> 1.7204 (deboost -0.0630, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_AB: 6.6569 -> 7.0000 (boost 0.3431, better) | predicted_BB: 0.4321 -> 0.0000 (deboost -0.4321, worse) | AB rounded to 7 (raw=6.66), rates preserved: AVG=0.258 HR/AB=0.015 |
| 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.2584 -> 0.2860 (boost 0.0276, better) | predicted_SLG: 0.3517 -> 0.2860 (deboost -0.0657, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_HBP: 0.0000 -> 1.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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2860 -> 0.3517 (boost 0.0657, better) | predicted_AVG: 0.2860 -> 0.2584 (deboost -0.0276, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "693304",
"player_name": "Nick Gonzales",
"position": "3B",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.32,
"predicted_AVG": 0.248,
"predicted_BB": 0.273,
"predicted_H": 1.07,
"predicted_HR": 0.09,
"predicted_OBP": 0.318,
"predicted_R": 0.545,
"predicted_RBI": 0.56,
"predicted_SLG": 0.385,
"predicted_SO": 0.804
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3266,
"predicted_3B": 0.0004,
"predicted_AB": 6.6569,
"predicted_AVG": 0.2618,
"predicted_BB": 0.4352,
"predicted_H": 1.7834,
"predicted_HBP": 0.083,
"predicted_HR": 0.1019,
"predicted_OBP": 0.3229,
"predicted_R": 1.0126,
"predicted_RBI": 0.9046,
"predicted_SLG": 0.3769,
"predicted_SO": 1.3531
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.201,
"after": 0.3266,
"delta": 0.1256,
"percent_delta": 0.6249,
"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.32,
"after": 6.6569,
"delta": 2.3369,
"percent_delta": 0.5409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2618,
"delta": 0.0138,
"percent_delta": 0.0556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.273,
"after": 0.4352,
"delta": 0.1622,
"percent_delta": 0.5941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.7834,
"delta": 0.7134,
"percent_delta": 0.6667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1019,
"delta": 0.0119,
"percent_delta": 0.1322,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.318,
"after": 0.3229,
"delta": 0.0049,
"percent_delta": 0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.545,
"after": 1.0126,
"delta": 0.4676,
"percent_delta": 0.858,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.9046,
"delta": 0.3446,
"percent_delta": 0.6154,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.385,
"after": 0.3769,
"delta": -0.0081,
"percent_delta": -0.021,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.804,
"after": 1.3531,
"delta": 0.5491,
"percent_delta": 0.683,
"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.32,
"after": 6.6569,
"delta": 2.3369,
"percent_delta": 0.5409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.385,
"after": 0.3769,
"delta": -0.0081,
"percent_delta": -0.021,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 61
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3266,
"predicted_3B": 0.0004,
"predicted_AB": 6.6569,
"predicted_AVG": 0.2584,
"predicted_BB": 0.4321,
"predicted_H": 1.7204,
"predicted_HBP": 0.083,
"predicted_HR": 0.0977,
"predicted_OBP": 0.3036,
"predicted_R": 0.9519,
"predicted_RBI": 0.8504,
"predicted_SLG": 0.3517,
"predicted_SO": 1.3628
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3266,
"after": 0.3266,
"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.6569,
"after": 6.6569,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2618,
"after": 0.2584,
"delta": -0.0034,
"percent_delta": -0.013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4352,
"after": 0.4321,
"delta": -0.0031,
"percent_delta": -0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7834,
"after": 1.7204,
"delta": -0.063,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.083,
"after": 0.083,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1019,
"after": 0.0977,
"delta": -0.0042,
"percent_delta": -0.0412,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3229,
"after": 0.3036,
"delta": -0.0193,
"percent_delta": -0.0598,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0126,
"after": 0.9519,
"delta": -0.0607,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9046,
"after": 0.8504,
"delta": -0.0542,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3769,
"after": 0.3517,
"delta": -0.0252,
"percent_delta": -0.0669,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3531,
"after": 1.3628,
"delta": 0.0097,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.7834,
"after": 1.7204,
"delta": -0.063,
"percent_delta": -0.0353,
"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.258 HR/AB=0.015",
"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.3266,
"after": 0.0,
"delta": -0.3266,
"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.6569,
"after": 7.0,
"delta": 0.3431,
"percent_delta": 0.0515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4321,
"after": 0.0,
"delta": -0.4321,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7204,
"after": 2.0,
"delta": 0.2796,
"percent_delta": 0.1625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.083,
"after": 0.0,
"delta": -0.083,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0977,
"after": 0.0,
"delta": -0.0977,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8504,
"after": 1.0,
"delta": 0.1496,
"percent_delta": 0.1759,
"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": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 6.6569,
"after": 7.0,
"delta": 0.3431,
"percent_delta": 0.0515,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4321,
"after": 0.0,
"delta": -0.4321,
"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": 0.9519,
"after": 1.0,
"delta": 0.0481,
"percent_delta": 0.0505,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2584,
"after": 0.286,
"delta": 0.0276,
"percent_delta": 0.1068,
"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.3036,
"after": 0.286,
"delta": -0.0176,
"percent_delta": -0.058,
"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.3517,
"after": 0.286,
"delta": -0.0657,
"percent_delta": -0.1868,
"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.2584,
"after": 0.286,
"delta": 0.0276,
"percent_delta": 0.1068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3517,
"after": 0.286,
"delta": -0.0657,
"percent_delta": -0.1868,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"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": 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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_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": 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.2584,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3036,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3517,
"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.2584,
"delta": -0.0276,
"percent_delta": -0.0963,
"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.286,
"after": 0.3036,
"delta": 0.0176,
"percent_delta": 0.0617,
"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.3517,
"delta": 0.0657,
"percent_delta": 0.2296,
"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.286,
"after": 0.3517,
"delta": 0.0657,
"percent_delta": 0.2296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2584,
"delta": -0.0276,
"percent_delta": -0.0963,
"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.32,
"after": 3.0,
"delta": -1.32,
"percent_delta": -0.3056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2584,
"delta": 0.0104,
"percent_delta": 0.0419,
"direction": "boost",
"projection_effect": "better",
"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": 1.07,
"after": 0.0,
"delta": -1.07,
"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.318,
"after": 0.3036,
"delta": -0.0144,
"percent_delta": -0.0453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.545,
"after": 0.0,
"delta": -0.545,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.0,
"delta": -0.56,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.385,
"after": 0.3517,
"delta": -0.0333,
"percent_delta": -0.0865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.804,
"after": 2.0,
"delta": 1.196,
"percent_delta": 1.4876,
"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.804,
"after": 2.0,
"delta": 1.196,
"percent_delta": 1.4876,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.32,
"after": 3.0,
"delta": -1.32,
"percent_delta": -0.3056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.201 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.320 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.273 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.318 | - |
| predicted_R | 0.545 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.385 | - |
| predicted_SO | 0.804 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.327 | 0.126 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.657 | 2.337 |
| predicted_AVG | 0.262 | 0.014 |
| predicted_BB | 0.435 | 0.162 |
| predicted_H | 1.783 | 0.713 |
| predicted_HBP | 0.083 | - |
| predicted_HR | 0.102 | 0.012 |
| predicted_OBP | 0.323 | 0.005 |
| predicted_R | 1.013 | 0.468 |
| predicted_RBI | 0.905 | 0.345 |
| predicted_SLG | 0.377 | -0.008 |
| predicted_SO | 1.353 | 0.549 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.327 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.657 | 0.000 |
| predicted_AVG | 0.258 | -0.003 |
| predicted_BB | 0.432 | -0.003 |
| predicted_H | 1.720 | -0.063 |
| predicted_HBP | 0.083 | 0.000 |
| predicted_HR | 0.098 | -0.004 |
| predicted_OBP | 0.304 | -0.019 |
| predicted_R | 0.952 | -0.061 |
| predicted_RBI | 0.850 | -0.054 |
| predicted_SLG | 0.352 | -0.025 |
| predicted_SO | 1.363 | 0.010 |
AB rounded to 7 (raw=6.66), rates preserved: AVG=0.258 HR/AB=0.015
| 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.327 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.343 |
| predicted_AVG | 0.286 | 0.028 |
| predicted_BB | 0.000 | -0.432 |
| predicted_H | 2.000 | 0.280 |
| predicted_HR | 0.000 | -0.098 |
| predicted_OBP | 0.286 | -0.018 |
| predicted_R | 1.000 | 0.048 |
| predicted_RBI | 1.000 | 0.150 |
| predicted_SLG | 0.286 | -0.066 |
| 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 | -4.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -2.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 | 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 | 2.000 | 3.000 | 1.000 | 5.000 | 0.1579 | 0.2000 | 0.2105 | 0.1579 | 0.0000 | 0.1053 | 0.0526 | 0.2632 |
| last_10 | 0.20 | 10 | - | 40.000 | 13.000 | 2.000 | 0.000 | 2.000 | 9.000 | 11.000 | 3.000 | 8.000 | 0.3250 | 0.3721 | 0.5250 | 0.3250 | 0.0500 | 0.2250 | 0.0750 | 0.2000 |
| season | 0.60 | 61 | - | 839.000 | 257.000 | 42.000 | 0.000 | 2.000 | 103.000 | 114.000 | 57.000 | 168.000 | 0.3063 | 0.3586 | 0.3635 | 0.3063 | 0.0024 | 0.1228 | 0.0679 | 0.2002 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4860 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.6230 |
| predicted_AVG | 0.2794 |
| predicted_BB | 0.6410 |
| predicted_H | 2.6890 |
| predicted_HBP | 0.0830 |
| predicted_HR | 0.1170 |
| predicted_OBP | 0.3291 |
| predicted_R | 1.6060 |
| predicted_RBI | 1.3420 |
| predicted_SLG | 0.3666 |
| predicted_SO | 2.0500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2010 | 0.4860 | 0.3266 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3200 | 9.6230 | 6.6569 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2794 | 0.2618 | model_form_blend |
| predicted_BB | 0.2730 | 0.6410 | 0.4352 | model_form_blend |
| predicted_H | 1.0700 | 2.6890 | 1.7834 | model_form_blend |
| predicted_HBP | - | 0.0830 | 0.0830 | form_only |
| predicted_HR | 0.0900 | 0.1170 | 0.1019 | model_form_blend |
| predicted_OBP | 0.3180 | 0.3291 | 0.3229 | model_form_blend |
| predicted_R | 0.5450 | 1.6060 | 1.0126 | model_form_blend |
| predicted_RBI | 0.5600 | 1.3420 | 0.9046 | model_form_blend |
| predicted_SLG | 0.3850 | 0.3666 | 0.3769 | model_form_blend |
| predicted_SO | 0.8040 | 2.0500 | 1.3531 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 210 |
| Season rows before report date | 210 |
| Report year | 2026 |
| Profile rows used | 209 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 2 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.306 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | 3B |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 693304 |
| playerID | 693304 |
| playerName | Nick Gonzales |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.6 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.327 |
| sl_xwoba | 0.335 |
| sl_xba | 0.3 |
| sl_xslg | 0.404 |
| sl_sweet_spot_percent | 32.6 |
| sl_barrel_batted_rate | 3.2 |
| sl_hard_hit_percent | 38.5 |
| sl_exit_velocity_avg | 85.6 |
| sl_launch_angle_avg | 6.4 |
| sl_whiff_percent | 23.2 |
| 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.234 | 0.000 | 1.000 | Hitting_2B | 0.234 | 1.000 | -0.234 | -1.000 |
| predicted_3B | 0.026 | 0.000 | 0.000 | Hitting_3B | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_AB | 4.320 | 4.000 | 7.000 | Hitting_AB | 3.948 | 4.000 | 0.052 | 0.000 |
| predicted_AVG | 0.223 | 0.000 | 0.286 | Hitting_AVG | 0.268 | 0.250 | -0.268 | -0.250 |
| predicted_BB | 0.532 | 0.000 | 1.000 | Hitting_BB | 0.532 | 1.000 | -0.532 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.970 | 0.000 | 2.000 | Hitting_H | 1.056 | 1.000 | -1.056 | -1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.286 | 0.000 | -0.286 | 0.000 |
| predicted_OBP | 0.299 | 0.000 | 0.375 | Hitting_OBP | 0.358 | 0.400 | -0.358 | -0.400 |
| predicted_R | 0.719 | 0.000 | 1.000 | Hitting_R | 0.719 | 1.000 | -0.719 | -1.000 |
| predicted_RBI | 0.680 | 0.000 | 1.000 | Hitting_RBI | 0.801 | 2.000 | -0.801 | -2.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.432 | 0.000 | 0.429 | Hitting_SLG | 0.557 | 0.500 | -0.557 | -0.500 |
| predicted_SO | 1.056 | 1.000 | 2.000 | Hitting_SO | 1.056 | 0.000 | -0.056 | 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.9700 -> 0.0000 (deboost -0.9700, 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.3200 -> 6.8260 (boost 2.5060, 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.2523 -> 1.1773 (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 | 8 | 5 | 3 | 4 | 4 | predicted_H: 1.4835 -> 2.0000 (boost 0.5165, better) | predicted_HR: 0.2962 -> 0.0000 (deboost -0.2962, worse) | AB rounded to 7 (raw=6.83), rates preserved: AVG=0.217 HR/AB=0.043 |
| 5 | consistency_constraints | 0 | 0 | 0 | 0 | 0 | - | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 2 | 0 | 2 | 0 | predicted_OBP: 0.3023 -> 0.3750 (boost 0.0727, 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: 7.0000 -> 4.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 0 | 2 | 0 | 2 | - | predicted_OBP: 0.3750 -> 0.3023 (deboost -0.0727, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "664040",
"player_name": "Brandon Lowe",
"position": "2B",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.234,
"predicted_3B": 0.026,
"predicted_AB": 4.32,
"predicted_AVG": 0.223,
"predicted_BB": 0.532,
"predicted_H": 0.97,
"predicted_HR": 0.17,
"predicted_OBP": 0.299,
"predicted_R": 0.719,
"predicted_RBI": 0.68,
"predicted_SLG": 0.432,
"predicted_SO": 1.056
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4965,
"predicted_3B": 0.0317,
"predicted_AB": 6.826,
"predicted_AVG": 0.2242,
"predicted_BB": 0.8378,
"predicted_H": 1.5378,
"predicted_HBP": 0.066,
"predicted_HR": 0.3088,
"predicted_OBP": 0.3032,
"predicted_R": 1.1057,
"predicted_RBI": 1.2523,
"predicted_SLG": 0.4451,
"predicted_SO": 1.7432
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.234,
"after": 0.4965,
"delta": 0.2625,
"percent_delta": 1.1218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0317,
"delta": 0.0057,
"percent_delta": 0.2192,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.32,
"after": 6.826,
"delta": 2.506,
"percent_delta": 0.5801,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2242,
"delta": 0.0012,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.532,
"after": 0.8378,
"delta": 0.3058,
"percent_delta": 0.5748,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.5378,
"delta": 0.5678,
"percent_delta": 0.5854,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.3088,
"delta": 0.1388,
"percent_delta": 0.8165,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.299,
"after": 0.3032,
"delta": 0.0042,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.719,
"after": 1.1057,
"delta": 0.3867,
"percent_delta": 0.5378,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.68,
"after": 1.2523,
"delta": 0.5723,
"percent_delta": 0.8416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.432,
"after": 0.4451,
"delta": 0.0131,
"percent_delta": 0.0303,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.056,
"after": 1.7432,
"delta": 0.6872,
"percent_delta": 0.6508,
"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.32,
"after": 6.826,
"delta": 2.506,
"percent_delta": 0.5801,
"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.4965,
"predicted_3B": 0.0317,
"predicted_AB": 6.826,
"predicted_AVG": 0.2173,
"predicted_BB": 0.8318,
"predicted_H": 1.4835,
"predicted_HBP": 0.066,
"predicted_HR": 0.2962,
"predicted_OBP": 0.3023,
"predicted_R": 1.0395,
"predicted_RBI": 1.1773,
"predicted_SLG": 0.4295,
"predicted_SO": 1.7558
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4965,
"after": 0.4965,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0317,
"after": 0.0317,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.826,
"after": 6.826,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2242,
"after": 0.2173,
"delta": -0.0069,
"percent_delta": -0.0308,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8378,
"after": 0.8318,
"delta": -0.006,
"percent_delta": -0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5378,
"after": 1.4835,
"delta": -0.0543,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.066,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3088,
"after": 0.2962,
"delta": -0.0126,
"percent_delta": -0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3032,
"after": 0.3023,
"delta": -0.0009,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.1057,
"after": 1.0395,
"delta": -0.0662,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.2523,
"after": 1.1773,
"delta": -0.075,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4451,
"after": 0.4295,
"delta": -0.0156,
"percent_delta": -0.035,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7432,
"after": 1.7558,
"delta": 0.0126,
"percent_delta": 0.0072,
"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.2523,
"after": 1.1773,
"delta": -0.075,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.83), rates preserved: AVG=0.217 HR/AB=0.043",
"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.4965,
"after": 1.0,
"delta": 0.5035,
"percent_delta": 1.0141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0317,
"after": 0.0,
"delta": -0.0317,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.826,
"after": 7.0,
"delta": 0.174,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8318,
"after": 1.0,
"delta": 0.1682,
"percent_delta": 0.2022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4835,
"after": 2.0,
"delta": 0.5165,
"percent_delta": 0.3482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.066,
"after": 0.0,
"delta": -0.066,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2962,
"after": 0.0,
"delta": -0.2962,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1773,
"after": 1.0,
"delta": -0.1773,
"percent_delta": -0.1506,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7558,
"after": 2.0,
"delta": 0.2442,
"percent_delta": 0.1391,
"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_H",
"before": 1.4835,
"after": 2.0,
"delta": 0.5165,
"percent_delta": 0.3482,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2962,
"after": 0.0,
"delta": -0.2962,
"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.0395,
"after": 1.0,
"delta": -0.0395,
"percent_delta": -0.038,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.2173,
"after": 0.286,
"delta": 0.0687,
"percent_delta": 0.3162,
"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.3023,
"after": 0.375,
"delta": 0.0727,
"percent_delta": 0.2405,
"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.4295,
"after": 0.429,
"delta": -0.0005,
"percent_delta": -0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3023,
"after": 0.375,
"delta": 0.0727,
"percent_delta": 0.2405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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": 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.2173,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3023,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4295,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2173,
"delta": -0.0687,
"percent_delta": -0.2401,
"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.3023,
"delta": -0.0727,
"percent_delta": -0.1937,
"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.4295,
"delta": 0.0005,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"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.375,
"after": 0.3023,
"delta": -0.0727,
"percent_delta": -0.1937,
"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.234,
"after": 0.0,
"delta": -0.234,
"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.32,
"after": 4.0,
"delta": -0.32,
"percent_delta": -0.0741,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2173,
"delta": -0.0057,
"percent_delta": -0.0256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.532,
"after": 0.0,
"delta": -0.532,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 0.0,
"delta": -0.97,
"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.299,
"after": 0.3023,
"delta": 0.0033,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.719,
"after": 0.0,
"delta": -0.719,
"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.432,
"after": 0.4295,
"delta": -0.0025,
"percent_delta": -0.0058,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.056,
"after": 1.0,
"delta": -0.056,
"percent_delta": -0.053,
"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.97,
"after": 0.0,
"delta": -0.97,
"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.234 | - |
| predicted_3B | 0.026 | - |
| predicted_AB | 4.320 | - |
| predicted_AVG | 0.223 | - |
| predicted_BB | 0.532 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.299 | - |
| predicted_R | 0.719 | - |
| predicted_RBI | 0.680 | - |
| predicted_SLG | 0.432 | - |
| predicted_SO | 1.056 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.496 | 0.262 |
| predicted_3B | 0.032 | 0.006 |
| predicted_AB | 6.826 | 2.506 |
| predicted_AVG | 0.224 | 0.001 |
| predicted_BB | 0.838 | 0.306 |
| predicted_H | 1.538 | 0.568 |
| predicted_HBP | 0.066 | - |
| predicted_HR | 0.309 | 0.139 |
| predicted_OBP | 0.303 | 0.004 |
| predicted_R | 1.106 | 0.387 |
| predicted_RBI | 1.252 | 0.572 |
| predicted_SLG | 0.445 | 0.013 |
| predicted_SO | 1.743 | 0.687 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.496 | 0.000 |
| predicted_3B | 0.032 | 0.000 |
| predicted_AB | 6.826 | 0.000 |
| predicted_AVG | 0.217 | -0.007 |
| predicted_BB | 0.832 | -0.006 |
| predicted_H | 1.484 | -0.054 |
| predicted_HBP | 0.066 | 0.000 |
| predicted_HR | 0.296 | -0.013 |
| predicted_OBP | 0.302 | -0.001 |
| predicted_R | 1.040 | -0.066 |
| predicted_RBI | 1.177 | -0.075 |
| predicted_SLG | 0.429 | -0.016 |
| predicted_SO | 1.756 | 0.013 |
AB rounded to 7 (raw=6.83), rates preserved: AVG=0.217 HR/AB=0.043
| 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.504 |
| predicted_3B | 0.000 | -0.032 |
| predicted_AB | 7.000 | 0.174 |
| predicted_AVG | 0.286 | 0.069 |
| predicted_BB | 1.000 | 0.168 |
| predicted_H | 2.000 | 0.516 |
| predicted_HR | 0.000 | -0.296 |
| predicted_OBP | 0.375 | 0.073 |
| predicted_R | 1.000 | -0.040 |
| predicted_RBI | 1.000 | -0.177 |
| predicted_SLG | 0.429 | -0.001 |
| predicted_SO | 2.000 | 0.244 |
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 | 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 | 2.000 | 2.000 | 0.000 | 0.000 | 3.000 | 1.000 | 2.000 | 4.000 | 0.1333 | 0.2222 | 0.2667 | 0.1333 | 0.0000 | 0.2000 | 0.1333 | 0.2667 |
| last_10 | 0.20 | 10 | - | 37.000 | 7.000 | 4.000 | 0.000 | 1.000 | 7.000 | 7.000 | 3.000 | 9.000 | 0.1892 | 0.2439 | 0.3784 | 0.1892 | 0.0270 | 0.1892 | 0.0811 | 0.2432 |
| season | 0.60 | 62 | - | 912.000 | 244.000 | 54.000 | 6.000 | 66.000 | 185.000 | 166.000 | 123.000 | 244.000 | 0.2675 | 0.3584 | 0.5570 | 0.2675 | 0.0724 | 0.2029 | 0.1349 | 0.2675 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8280 |
| predicted_3B | 0.0390 |
| predicted_AB | 9.9910 |
| predicted_AVG | 0.2257 |
| predicted_BB | 1.2240 |
| predicted_H | 2.2550 |
| predicted_HBP | 0.0660 |
| predicted_HR | 0.4840 |
| predicted_OBP | 0.3084 |
| predicted_R | 1.5940 |
| predicted_RBI | 1.9750 |
| predicted_SLG | 0.4617 |
| predicted_SO | 2.6110 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2340 | 0.8280 | 0.4965 | model_form_blend |
| predicted_3B | 0.0260 | 0.0390 | 0.0317 | model_form_blend |
| predicted_AB | 4.3200 | 9.9910 | 6.8260 | model_form_blend |
| predicted_AVG | 0.2230 | 0.2257 | 0.2242 | model_form_blend |
| predicted_BB | 0.5320 | 1.2240 | 0.8378 | model_form_blend |
| predicted_H | 0.9700 | 2.2550 | 1.5378 | model_form_blend |
| predicted_HBP | - | 0.0660 | 0.0660 | form_only |
| predicted_HR | 0.1700 | 0.4840 | 0.3088 | model_form_blend |
| predicted_OBP | 0.2990 | 0.3084 | 0.3032 | model_form_blend |
| predicted_R | 0.7190 | 1.5940 | 1.1057 | model_form_blend |
| predicted_RBI | 0.6800 | 1.9750 | 1.2523 | model_form_blend |
| predicted_SLG | 0.4320 | 0.4617 | 0.4451 | model_form_blend |
| predicted_SO | 1.0560 | 2.6110 | 1.7432 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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.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 | 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 | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 664040 |
| playerID | 664040 |
| playerName | Brandon Lowe |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.4 |
| sl_bb_percent | 10.7 |
| sl_woba | 0.367 |
| sl_xwoba | 0.359 |
| sl_xba | 0.256 |
| sl_xslg | 0.491 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 44.5 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 16.9 |
| sl_whiff_percent | 34.1 |
| 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.212 | 1.000 | 0.000 | Hitting_2B | 0.212 | 0.000 | 0.788 | 1.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 | 6.000 | Hitting_AB | 3.640 | 4.000 | 0.360 | 0.000 |
| predicted_AVG | 0.240 | 0.250 | 0.167 | Hitting_AVG | 0.278 | 0.250 | -0.028 | 0.000 |
| predicted_BB | 0.712 | 0.000 | 1.000 | Hitting_BB | 0.712 | 0.000 | -0.712 | 0.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.012 | 1.000 | -0.012 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.096 | 0.000 | -0.096 | 0.000 |
| predicted_OBP | 0.354 | 0.250 | 0.286 | Hitting_OBP | 0.403 | 0.400 | -0.153 | -0.150 |
| predicted_R | 0.672 | 0.000 | 1.000 | Hitting_R | 0.672 | 0.000 | -0.672 | 0.000 |
| predicted_RBI | 0.500 | 0.000 | 1.000 | Hitting_RBI | 0.628 | 0.000 | -0.628 | 0.000 |
| predicted_SLG | 0.420 | 0.500 | 0.167 | Hitting_SLG | 0.437 | 0.250 | 0.063 | 0.250 |
| predicted_SO | 0.984 | 2.000 | 2.000 | Hitting_SO | 0.984 | 1.000 | 1.016 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 7 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 4 |
| Better Metrics | 2 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_SO: 0.9840 -> 2.0000 (boost 1.0160, worse) |
| Biggest Deboost | predicted_BB: 0.7120 -> 0.0000 (deboost -0.7120, 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.3177 (boost 2.3677, 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_R: 1.1492 -> 1.0804 (deboost -0.0688, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 1.6410 -> 2.0000 (boost 0.3590, worse) | predicted_H: 1.5305 -> 1.0000 (deboost -0.5305, worse) | AB rounded to 6 (raw=6.32), rates preserved: AVG=0.242 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0804 -> 1.0000 (deboost -0.0804, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4152 -> 0.1670 (deboost -0.2482, 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 -> 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.4152 (boost 0.2482, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668804",
"player_name": "Bryan Reynolds",
"position": "LF",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.04,
"predicted_AB": 3.95,
"predicted_AVG": 0.24,
"predicted_BB": 0.712,
"predicted_H": 0.95,
"predicted_HR": 0.13,
"predicted_OBP": 0.354,
"predicted_R": 0.672,
"predicted_RBI": 0.5,
"predicted_SLG": 0.42,
"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.3982,
"predicted_3B": 0.0493,
"predicted_AB": 6.3177,
"predicted_AVG": 0.2474,
"predicted_BB": 1.1251,
"predicted_H": 1.5865,
"predicted_HBP": 0.308,
"predicted_HR": 0.207,
"predicted_OBP": 0.3665,
"predicted_R": 1.1492,
"predicted_RBI": 0.8211,
"predicted_SLG": 0.4271,
"predicted_SO": 1.6293
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.212,
"after": 0.3982,
"delta": 0.1862,
"percent_delta": 0.8783,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0493,
"delta": 0.0093,
"percent_delta": 0.2325,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.95,
"after": 6.3177,
"delta": 2.3677,
"percent_delta": 0.5994,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2474,
"delta": 0.0074,
"percent_delta": 0.0308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.712,
"after": 1.1251,
"delta": 0.4131,
"percent_delta": 0.5802,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.5865,
"delta": 0.6365,
"percent_delta": 0.67,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.207,
"delta": 0.077,
"percent_delta": 0.5923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.354,
"after": 0.3665,
"delta": 0.0125,
"percent_delta": 0.0353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.672,
"after": 1.1492,
"delta": 0.4772,
"percent_delta": 0.7101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.8211,
"delta": 0.3211,
"percent_delta": 0.6422,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.42,
"after": 0.4271,
"delta": 0.0071,
"percent_delta": 0.0169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.984,
"after": 1.6293,
"delta": 0.6453,
"percent_delta": 0.6558,
"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.3177,
"delta": 2.3677,
"percent_delta": 0.5994,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 68
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3982,
"predicted_3B": 0.0493,
"predicted_AB": 6.3177,
"predicted_AVG": 0.2423,
"predicted_BB": 1.117,
"predicted_H": 1.5305,
"predicted_HBP": 0.308,
"predicted_HR": 0.1985,
"predicted_OBP": 0.3561,
"predicted_R": 1.0804,
"predicted_RBI": 0.7719,
"predicted_SLG": 0.4152,
"predicted_SO": 1.641
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3982,
"after": 0.3982,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0493,
"after": 0.0493,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3177,
"after": 6.3177,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2474,
"after": 0.2423,
"delta": -0.0051,
"percent_delta": -0.0206,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1251,
"after": 1.117,
"delta": -0.0081,
"percent_delta": -0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5865,
"after": 1.5305,
"delta": -0.056,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.308,
"after": 0.308,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.207,
"after": 0.1985,
"delta": -0.0085,
"percent_delta": -0.0411,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3665,
"after": 0.3561,
"delta": -0.0104,
"percent_delta": -0.0284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.1492,
"after": 1.0804,
"delta": -0.0688,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8211,
"after": 0.7719,
"delta": -0.0492,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4271,
"after": 0.4152,
"delta": -0.0119,
"percent_delta": -0.0279,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6293,
"after": 1.641,
"delta": 0.0117,
"percent_delta": 0.0072,
"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.1492,
"after": 1.0804,
"delta": -0.0688,
"percent_delta": -0.0599,
"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.242 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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3982,
"after": 0.0,
"delta": -0.3982,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0493,
"after": 0.0,
"delta": -0.0493,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.3177,
"after": 6.0,
"delta": -0.3177,
"percent_delta": -0.0503,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.117,
"after": 1.0,
"delta": -0.117,
"percent_delta": -0.1047,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5305,
"after": 1.0,
"delta": -0.5305,
"percent_delta": -0.3466,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.308,
"after": 0.0,
"delta": -0.308,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.7719,
"after": 1.0,
"delta": 0.2281,
"percent_delta": 0.2955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.641,
"after": 2.0,
"delta": 0.359,
"percent_delta": 0.2188,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.641,
"after": 2.0,
"delta": 0.359,
"percent_delta": 0.2188,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.5305,
"after": 1.0,
"delta": -0.5305,
"percent_delta": -0.3466,
"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": 1.0804,
"after": 1.0,
"delta": -0.0804,
"percent_delta": -0.0744,
"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.0804,
"after": 1.0,
"delta": -0.0804,
"percent_delta": -0.0744,
"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": 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.2423,
"after": 0.167,
"delta": -0.0753,
"percent_delta": -0.3108,
"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.3561,
"after": 0.286,
"delta": -0.0701,
"percent_delta": -0.1969,
"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.4152,
"after": 0.167,
"delta": -0.2482,
"percent_delta": -0.5978,
"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.4152,
"after": 0.167,
"delta": -0.2482,
"percent_delta": -0.5978,
"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": 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": 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": 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_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.2423,
"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.3561,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4152,
"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.167,
"after": 0.2423,
"delta": 0.0753,
"percent_delta": 0.4506,
"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.3561,
"delta": 0.0701,
"percent_delta": 0.2451,
"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.4152,
"delta": 0.2482,
"percent_delta": 1.486,
"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.4152,
"delta": 0.2482,
"percent_delta": 1.486,
"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": 1.0,
"delta": 0.788,
"percent_delta": 3.717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.95,
"after": 4.0,
"delta": 0.05,
"percent_delta": 0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2423,
"delta": 0.0023,
"percent_delta": 0.0096,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.712,
"after": 0.0,
"delta": -0.712,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.95,
"after": 1.0,
"delta": 0.05,
"percent_delta": 0.0526,
"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.354,
"after": 0.3561,
"delta": 0.0021,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.672,
"after": 0.0,
"delta": -0.672,
"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.42,
"after": 0.4152,
"delta": -0.0048,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.984,
"after": 2.0,
"delta": 1.016,
"percent_delta": 1.0325,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.984,
"after": 2.0,
"delta": 1.016,
"percent_delta": 1.0325,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.712,
"after": 0.0,
"delta": -0.712,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.212 | - |
| predicted_3B | 0.040 | - |
| predicted_AB | 3.950 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.712 | - |
| predicted_H | 0.950 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.354 | - |
| predicted_R | 0.672 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.420 | - |
| 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.398 | 0.186 |
| predicted_3B | 0.049 | 0.009 |
| predicted_AB | 6.318 | 2.368 |
| predicted_AVG | 0.247 | 0.007 |
| predicted_BB | 1.125 | 0.413 |
| predicted_H | 1.587 | 0.637 |
| predicted_HBP | 0.308 | - |
| predicted_HR | 0.207 | 0.077 |
| predicted_OBP | 0.366 | 0.013 |
| predicted_R | 1.149 | 0.477 |
| predicted_RBI | 0.821 | 0.321 |
| predicted_SLG | 0.427 | 0.007 |
| predicted_SO | 1.629 | 0.645 |
Step 3: 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.049 | 0.000 |
| predicted_AB | 6.318 | 0.000 |
| predicted_AVG | 0.242 | -0.005 |
| predicted_BB | 1.117 | -0.008 |
| predicted_H | 1.530 | -0.056 |
| predicted_HBP | 0.308 | 0.000 |
| predicted_HR | 0.199 | -0.008 |
| predicted_OBP | 0.356 | -0.010 |
| predicted_R | 1.080 | -0.069 |
| predicted_RBI | 0.772 | -0.049 |
| predicted_SLG | 0.415 | -0.012 |
| predicted_SO | 1.641 | 0.012 |
AB rounded to 6 (raw=6.32), rates preserved: AVG=0.242 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 | 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.398 |
| predicted_3B | 0.000 | -0.049 |
| predicted_AB | 6.000 | -0.318 |
| predicted_AVG | 0.167 | -0.075 |
| predicted_BB | 1.000 | -0.117 |
| predicted_H | 1.000 | -0.530 |
| predicted_HR | 0.000 | -0.199 |
| predicted_OBP | 0.286 | -0.070 |
| predicted_R | 1.000 | -0.080 |
| predicted_RBI | 1.000 | 0.228 |
| predicted_SLG | 0.167 | -0.248 |
| predicted_SO | 2.000 | 0.359 |
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 | 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 | 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 | 2.000 | 0.000 | 1.000 | 1.000 | 3.000 | 2.000 | 4.000 | 0.2222 | 0.3333 | 0.5000 | 0.2222 | 0.0556 | 0.0556 | 0.1111 | 0.2222 |
| last_10 | 0.20 | 10 | - | 35.000 | 8.000 | 2.000 | 0.000 | 1.000 | 3.000 | 8.000 | 7.000 | 10.000 | 0.2286 | 0.3778 | 0.3714 | 0.2286 | 0.0286 | 0.0857 | 0.2000 | 0.2857 |
| season | 0.60 | 68 | - | 910.000 | 253.000 | 53.000 | 10.000 | 24.000 | 157.000 | 168.000 | 178.000 | 246.000 | 0.2780 | 0.4032 | 0.4374 | 0.2780 | 0.0264 | 0.1725 | 0.1956 | 0.2703 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6330 |
| predicted_3B | 0.0610 |
| predicted_AB | 9.3030 |
| predicted_AVG | 0.2568 |
| predicted_BB | 1.6460 |
| predicted_H | 2.3890 |
| predicted_HBP | 0.3080 |
| predicted_HR | 0.3040 |
| predicted_OBP | 0.3823 |
| predicted_R | 1.7510 |
| predicted_RBI | 1.2260 |
| predicted_SLG | 0.4360 |
| predicted_SO | 2.4430 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2120 | 0.6330 | 0.3982 | model_form_blend |
| predicted_3B | 0.0400 | 0.0610 | 0.0493 | model_form_blend |
| predicted_AB | 3.9500 | 9.3030 | 6.3177 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2568 | 0.2474 | model_form_blend |
| predicted_BB | 0.7120 | 1.6460 | 1.1251 | model_form_blend |
| predicted_H | 0.9500 | 2.3890 | 1.5865 | model_form_blend |
| predicted_HBP | - | 0.3080 | 0.3080 | form_only |
| predicted_HR | 0.1300 | 0.3040 | 0.2070 | model_form_blend |
| predicted_OBP | 0.3540 | 0.3823 | 0.3665 | model_form_blend |
| predicted_R | 0.6720 | 1.7510 | 1.1492 | model_form_blend |
| predicted_RBI | 0.5000 | 1.2260 | 0.8211 | model_form_blend |
| predicted_SLG | 0.4200 | 0.4360 | 0.4271 | model_form_blend |
| predicted_SO | 0.9840 | 2.4430 | 1.6293 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 250 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.278 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF-RF |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 668804 |
| playerID | 668804 |
| playerName | Bryan Reynolds |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.5 |
| sl_bb_percent | 15.7 |
| sl_woba | 0.367 |
| sl_xwoba | 0.367 |
| sl_xba | 0.259 |
| sl_xslg | 0.437 |
| sl_sweet_spot_percent | 33.5 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 44.1 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 5.4 |
| sl_whiff_percent | 28.5 |
| 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.128 | 1.000 | 0.000 | Hitting_2B | 0.126 | 0.000 | 0.874 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.020 | 3.000 | 8.000 | Hitting_AB | 3.975 | 4.000 | -0.975 | -1.000 |
| predicted_AVG | 0.227 | 0.333 | 0.250 | Hitting_AVG | 0.192 | 0.250 | 0.141 | 0.083 |
| predicted_BB | 0.439 | 1.000 | 1.000 | Hitting_BB | 0.439 | 0.000 | 0.561 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.910 | 1.000 | 2.000 | Hitting_H | 0.763 | 1.000 | 0.237 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.126 | 0.000 | -0.126 | 0.000 |
| predicted_OBP | 0.298 | 0.500 | 0.333 | Hitting_OBP | 0.281 | 0.250 | 0.219 | 0.250 |
| predicted_R | 0.367 | 0.000 | 1.000 | Hitting_R | 0.364 | 0.000 | -0.364 | 0.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.525 | 1.000 | -0.525 | -1.000 |
| predicted_SLG | 0.346 | 0.667 | 0.250 | Hitting_SLG | 0.319 | 0.250 | 0.348 | 0.417 |
| predicted_SO | 1.306 | 0.000 | 3.000 | Hitting_SO | 1.293 | 2.000 | -1.293 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_2B: 0.1280 -> 1.0000 (boost 0.8720, better) |
| Biggest Deboost | predicted_SO: 1.3060 -> 0.0000 (deboost -1.3060, 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.0200 -> 7.7698 (boost 3.7498, better) | predicted_SLG: 0.3460 -> 0.3316 (deboost -0.0144, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.7256 -> 1.6647 (deboost -0.0609, 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: 2.4810 -> 3.0000 (boost 0.5190, worse) | predicted_2B: 0.2015 -> 0.0000 (deboost -0.2015, worse) | AB rounded to 8 (raw=7.77), rates preserved: AVG=0.214 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6195 -> 1.0000 (boost 0.3805, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2836 -> 0.3330 (boost 0.0494, better) | predicted_SLG: 0.3083 -> 0.2500 (deboost -0.0583, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3083 (boost 0.0583, better) | predicted_OBP: 0.3330 -> 0.2836 (deboost -0.0494, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "542303",
"player_name": "Marcell Ozuna",
"position": "DH",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.128,
"predicted_3B": 0.0,
"predicted_AB": 4.02,
"predicted_AVG": 0.227,
"predicted_BB": 0.439,
"predicted_H": 0.91,
"predicted_HR": 0.1,
"predicted_OBP": 0.298,
"predicted_R": 0.367,
"predicted_RBI": 0.51,
"predicted_SLG": 0.346,
"predicted_SO": 1.306
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2015,
"predicted_3B": 0.0009,
"predicted_AB": 7.7698,
"predicted_AVG": 0.224,
"predicted_BB": 0.7578,
"predicted_H": 1.7256,
"predicted_HBP": 0.114,
"predicted_HR": 0.1832,
"predicted_OBP": 0.2958,
"predicted_R": 0.659,
"predicted_RBI": 0.9887,
"predicted_SLG": 0.3316,
"predicted_SO": 2.4633
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.128,
"after": 0.2015,
"delta": 0.0735,
"percent_delta": 0.5742,
"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.02,
"after": 7.7698,
"delta": 3.7498,
"percent_delta": 0.9328,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.227,
"after": 0.224,
"delta": -0.003,
"percent_delta": -0.0132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.439,
"after": 0.7578,
"delta": 0.3188,
"percent_delta": 0.7262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.7256,
"delta": 0.8156,
"percent_delta": 0.8963,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1832,
"delta": 0.0832,
"percent_delta": 0.832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.2958,
"delta": -0.0022,
"percent_delta": -0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.367,
"after": 0.659,
"delta": 0.292,
"percent_delta": 0.7956,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.9887,
"delta": 0.4787,
"percent_delta": 0.9386,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.346,
"after": 0.3316,
"delta": -0.0144,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.306,
"after": 2.4633,
"delta": 1.1573,
"percent_delta": 0.8861,
"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.02,
"after": 7.7698,
"delta": 3.7498,
"percent_delta": 0.9328,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.346,
"after": 0.3316,
"delta": -0.0144,
"percent_delta": -0.0416,
"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": 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.2015,
"predicted_3B": 0.0009,
"predicted_AB": 7.7698,
"predicted_AVG": 0.2143,
"predicted_BB": 0.7523,
"predicted_H": 1.6647,
"predicted_HBP": 0.114,
"predicted_HR": 0.1757,
"predicted_OBP": 0.2836,
"predicted_R": 0.6195,
"predicted_RBI": 0.9295,
"predicted_SLG": 0.3083,
"predicted_SO": 2.481
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2015,
"after": 0.2015,
"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.7698,
"after": 7.7698,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.2143,
"delta": -0.0097,
"percent_delta": -0.0433,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7578,
"after": 0.7523,
"delta": -0.0055,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7256,
"after": 1.6647,
"delta": -0.0609,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.114,
"after": 0.114,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1832,
"after": 0.1757,
"delta": -0.0075,
"percent_delta": -0.0409,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2958,
"after": 0.2836,
"delta": -0.0122,
"percent_delta": -0.0412,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.659,
"after": 0.6195,
"delta": -0.0395,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9887,
"after": 0.9295,
"delta": -0.0592,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3316,
"after": 0.3083,
"delta": -0.0233,
"percent_delta": -0.0703,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.4633,
"after": 2.481,
"delta": 0.0177,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.7256,
"after": 1.6647,
"delta": -0.0609,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.77), rates preserved: AVG=0.214 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": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2015,
"after": 0.0,
"delta": -0.2015,
"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.7698,
"after": 8.0,
"delta": 0.2302,
"percent_delta": 0.0296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7523,
"after": 1.0,
"delta": 0.2477,
"percent_delta": 0.3293,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6647,
"after": 2.0,
"delta": 0.3353,
"percent_delta": 0.2014,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.114,
"after": 0.0,
"delta": -0.114,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1757,
"after": 0.0,
"delta": -0.1757,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9295,
"after": 1.0,
"delta": 0.0705,
"percent_delta": 0.0758,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.481,
"after": 3.0,
"delta": 0.519,
"percent_delta": 0.2092,
"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": 2.481,
"after": 3.0,
"delta": 0.519,
"percent_delta": 0.2092,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2015,
"after": 0.0,
"delta": -0.2015,
"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": 0.6195,
"after": 1.0,
"delta": 0.3805,
"percent_delta": 0.6142,
"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": 0.6195,
"after": 1.0,
"delta": 0.3805,
"percent_delta": 0.6142,
"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": 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.2143,
"after": 0.25,
"delta": 0.0357,
"percent_delta": 0.1666,
"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.2836,
"after": 0.333,
"delta": 0.0494,
"percent_delta": 0.1742,
"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.3083,
"after": 0.25,
"delta": -0.0583,
"percent_delta": -0.1891,
"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.2836,
"after": 0.333,
"delta": 0.0494,
"percent_delta": 0.1742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3083,
"after": 0.25,
"delta": -0.0583,
"percent_delta": -0.1891,
"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": 8.0,
"after": 3.0,
"delta": -5.0,
"percent_delta": -0.625,
"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": 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": 1,
"deboosted_metrics": 5,
"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": 8.0,
"after": 3.0,
"delta": -5.0,
"percent_delta": -0.625,
"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.2143,
"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.2836,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3083,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2143,
"delta": -0.0357,
"percent_delta": -0.143,
"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.2836,
"delta": -0.0494,
"percent_delta": -0.1483,
"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.3083,
"delta": 0.0583,
"percent_delta": 0.233,
"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.3083,
"delta": 0.0583,
"percent_delta": 0.233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2836,
"delta": -0.0494,
"percent_delta": -0.1483,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.128,
"after": 1.0,
"delta": 0.872,
"percent_delta": 6.8125,
"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.02,
"after": 3.0,
"delta": -1.02,
"percent_delta": -0.2537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.227,
"after": 0.2143,
"delta": -0.0127,
"percent_delta": -0.0559,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.439,
"after": 1.0,
"delta": 0.561,
"percent_delta": 1.2779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.91,
"after": 1.0,
"delta": 0.09,
"percent_delta": 0.0989,
"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.298,
"after": 0.2836,
"delta": -0.0144,
"percent_delta": -0.0483,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.346,
"after": 0.3083,
"delta": -0.0377,
"percent_delta": -0.109,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.306,
"after": 0.0,
"delta": -1.306,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.128,
"after": 1.0,
"delta": 0.872,
"percent_delta": 6.8125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.306,
"after": 0.0,
"delta": -1.306,
"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.128 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.227 | - |
| predicted_BB | 0.439 | - |
| predicted_H | 0.910 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.298 | - |
| predicted_R | 0.367 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.346 | - |
| predicted_SO | 1.306 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.202 | 0.074 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 7.770 | 3.750 |
| predicted_AVG | 0.224 | -0.003 |
| predicted_BB | 0.758 | 0.319 |
| predicted_H | 1.726 | 0.816 |
| predicted_HBP | 0.114 | - |
| predicted_HR | 0.183 | 0.083 |
| predicted_OBP | 0.296 | -0.002 |
| predicted_R | 0.659 | 0.292 |
| predicted_RBI | 0.989 | 0.479 |
| predicted_SLG | 0.332 | -0.014 |
| predicted_SO | 2.463 | 1.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.202 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 7.770 | 0.000 |
| predicted_AVG | 0.214 | -0.010 |
| predicted_BB | 0.752 | -0.006 |
| predicted_H | 1.665 | -0.061 |
| predicted_HBP | 0.114 | 0.000 |
| predicted_HR | 0.176 | -0.008 |
| predicted_OBP | 0.284 | -0.012 |
| predicted_R | 0.620 | -0.039 |
| predicted_RBI | 0.929 | -0.059 |
| predicted_SLG | 0.308 | -0.023 |
| predicted_SO | 2.481 | 0.018 |
AB rounded to 8 (raw=7.77), rates preserved: AVG=0.214 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 | 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.202 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 8.000 | 0.230 |
| predicted_AVG | 0.250 | 0.036 |
| predicted_BB | 1.000 | 0.248 |
| predicted_H | 2.000 | 0.335 |
| predicted_HR | 0.000 | -0.176 |
| predicted_OBP | 0.333 | 0.049 |
| predicted_R | 1.000 | 0.380 |
| predicted_RBI | 1.000 | 0.071 |
| predicted_SLG | 0.250 | -0.058 |
| predicted_SO | 3.000 | 0.519 |
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 | -5.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 | 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 | - | 17.000 | 5.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 1.000 | 5.000 | 0.2941 | 0.3333 | 0.2941 | 0.2941 | 0.0000 | 0.1177 | 0.0588 | 0.2941 |
| last_10 | 0.20 | 6 | - | 39.000 | 10.000 | 0.000 | 0.000 | 0.000 | 4.000 | 1.000 | 1.000 | 12.000 | 0.2564 | 0.2750 | 0.2564 | 0.2564 | 0.0000 | 0.1026 | 0.0256 | 0.3077 |
| season | 0.60 | 48 | - | 787.000 | 151.000 | 25.000 | 0.000 | 25.000 | 104.000 | 72.000 | 86.000 | 256.000 | 0.1919 | 0.2797 | 0.3189 | 0.1919 | 0.0318 | 0.1321 | 0.1093 | 0.3253 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2950 |
| predicted_3B | 0.0020 |
| predicted_AB | 12.5350 |
| predicted_AVG | 0.2203 |
| predicted_BB | 1.1630 |
| predicted_H | 2.7620 |
| predicted_HBP | 0.1140 |
| predicted_HR | 0.2890 |
| predicted_OBP | 0.2929 |
| predicted_R | 1.0300 |
| predicted_RBI | 1.5970 |
| predicted_SLG | 0.3133 |
| predicted_SO | 3.9340 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1280 | 0.2950 | 0.2015 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.0200 | 12.5350 | 7.7698 | model_form_blend |
| predicted_AVG | 0.2270 | 0.2203 | 0.2240 | model_form_blend |
| predicted_BB | 0.4390 | 1.1630 | 0.7578 | model_form_blend |
| predicted_H | 0.9100 | 2.7620 | 1.7256 | model_form_blend |
| predicted_HBP | - | 0.1140 | 0.1140 | form_only |
| predicted_HR | 0.1000 | 0.2890 | 0.1832 | model_form_blend |
| predicted_OBP | 0.2980 | 0.2929 | 0.2958 | model_form_blend |
| predicted_R | 0.3670 | 1.0300 | 0.6590 | model_form_blend |
| predicted_RBI | 0.5100 | 1.5970 | 0.9887 | model_form_blend |
| predicted_SLG | 0.3460 | 0.3133 | 0.3316 | model_form_blend |
| predicted_SO | 1.3060 | 3.9340 | 2.4633 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 198 |
| Season rows before report date | 198 |
| Report year | 2026 |
| Profile rows used | 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 | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.192 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 | 20260609_LAD@PIT |
| game_type | full |
| mlbID | 542303 |
| playerID | 542303 |
| playerName | Marcell Ozuna |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-09 |
| sl_k_percent | 29.1 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.264 |
| sl_xwoba | 0.308 |
| sl_xba | 0.227 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 39.2 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 39.2 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 21.9 |
| sl_whiff_percent | 30.4 |
| 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.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.389 | 4.000 | 6.000 | Hitting_AB | 3.389 | 4.000 | 0.611 | 0.000 |
| predicted_AVG | 0.226 | 0.250 | 0.167 | Hitting_AVG | 0.131 | 0.000 | 0.119 | 0.250 |
| predicted_BB | 0.500 | 0.000 | 1.000 | Hitting_BB | 0.500 | 0.000 | -0.500 | 0.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.444 | 0.000 | 0.556 | 1.000 |
| predicted_HR | 0.190 | 0.000 | 0.000 | Hitting_HR | 0.444 | 0.000 | -0.444 | 0.000 |
| predicted_OBP | 0.288 | 0.250 | 0.286 | Hitting_OBP | 0.243 | 0.000 | 0.007 | 0.250 |
| predicted_R | 0.444 | 1.000 | 1.000 | Hitting_R | 0.444 | 0.000 | 0.556 | 1.000 |
| predicted_RBI | 0.580 | 1.000 | 1.000 | Hitting_RBI | 1.167 | 0.000 | -0.167 | 1.000 |
| predicted_SLG | 0.427 | 0.250 | 0.167 | Hitting_SLG | 0.525 | 0.000 | -0.275 | 0.250 |
| predicted_SO | 1.889 | 0.000 | 3.000 | Hitting_SO | 1.889 | 2.000 | -1.889 | -2.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: 3.3890 -> 4.0000 (boost 0.6110, better) |
| Biggest Deboost | predicted_SO: 1.8890 -> 0.0000 (deboost -1.8890, 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.3890 -> 5.6244 (boost 2.2354, better) | predicted_AVG: 0.2260 -> 0.2026 (deboost -0.0234, 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_RBI: 1.3009 -> 1.2230 (deboost -0.0779, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 3 | 3 | 2 | 4 | predicted_AB: 5.6244 -> 6.0000 (boost 0.3756, better) | predicted_HR: 0.4369 -> 0.0000 (deboost -0.4369, worse) | AB rounded to 6 (raw=5.62), rates preserved: AVG=0.177 HR/AB=0.078 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6735 -> 1.0000 (boost 0.3265, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2706 -> 0.2860 (boost 0.0154, better) | predicted_SLG: 0.4203 -> 0.1670 (deboost -0.2533, 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_SO: 3.0000 -> 0.0000 (deboost -3.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.1670 -> 0.4203 (boost 0.2533, better) | predicted_OBP: 0.2860 -> 0.2706 (deboost -0.0154, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "699013",
"player_name": "Esmerlyn Valdez",
"position": "RF",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.389,
"predicted_AVG": 0.226,
"predicted_BB": 0.5,
"predicted_H": 0.74,
"predicted_HR": 0.19,
"predicted_OBP": 0.288,
"predicted_R": 0.444,
"predicted_RBI": 0.58,
"predicted_SLG": 0.427,
"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.0507,
"predicted_3B": 0.004,
"predicted_AB": 5.6244,
"predicted_AVG": 0.2026,
"predicted_BB": 0.7279,
"predicted_H": 1.0312,
"predicted_HBP": 0.026,
"predicted_HR": 0.4555,
"predicted_OBP": 0.2753,
"predicted_R": 0.7164,
"predicted_RBI": 1.3009,
"predicted_SLG": 0.4419,
"predicted_SO": 2.7638
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0507,
"delta": 0.0507,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.004,
"delta": 0.004,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.389,
"after": 5.6244,
"delta": 2.2354,
"percent_delta": 0.6596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2026,
"delta": -0.0234,
"percent_delta": -0.1035,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 0.7279,
"delta": 0.2279,
"percent_delta": 0.4558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.74,
"after": 1.0312,
"delta": 0.2912,
"percent_delta": 0.3935,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.19,
"after": 0.4555,
"delta": 0.2655,
"percent_delta": 1.3974,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2753,
"delta": -0.0127,
"percent_delta": -0.0441,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.444,
"after": 0.7164,
"delta": 0.2724,
"percent_delta": 0.6135,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 1.3009,
"delta": 0.7209,
"percent_delta": 1.2429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.427,
"after": 0.4419,
"delta": 0.0149,
"percent_delta": 0.0349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.889,
"after": 2.7638,
"delta": 0.8748,
"percent_delta": 0.4631,
"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.389,
"after": 5.6244,
"delta": 2.2354,
"percent_delta": 0.6596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2026,
"delta": -0.0234,
"percent_delta": -0.1035,
"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": 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.0507,
"predicted_3B": 0.004,
"predicted_AB": 5.6244,
"predicted_AVG": 0.1769,
"predicted_BB": 0.7227,
"predicted_H": 0.9948,
"predicted_HBP": 0.026,
"predicted_HR": 0.4369,
"predicted_OBP": 0.2706,
"predicted_R": 0.6735,
"predicted_RBI": 1.223,
"predicted_SLG": 0.4203,
"predicted_SO": 2.7837
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0507,
"after": 0.0507,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.6244,
"after": 5.6244,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2026,
"after": 0.1769,
"delta": -0.0257,
"percent_delta": -0.1269,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7279,
"after": 0.7227,
"delta": -0.0052,
"percent_delta": -0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0312,
"after": 0.9948,
"delta": -0.0364,
"percent_delta": -0.0353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.026,
"after": 0.026,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4555,
"after": 0.4369,
"delta": -0.0186,
"percent_delta": -0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2753,
"after": 0.2706,
"delta": -0.0047,
"percent_delta": -0.0171,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7164,
"after": 0.6735,
"delta": -0.0429,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.3009,
"after": 1.223,
"delta": -0.0779,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4419,
"after": 0.4203,
"delta": -0.0216,
"percent_delta": -0.0489,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.7638,
"after": 2.7837,
"delta": 0.0199,
"percent_delta": 0.0072,
"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_RBI",
"before": 1.3009,
"after": 1.223,
"delta": -0.0779,
"percent_delta": -0.0599,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.62), rates preserved: AVG=0.177 HR/AB=0.078",
"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": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0507,
"after": 0.0,
"delta": -0.0507,
"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": 5.6244,
"after": 6.0,
"delta": 0.3756,
"percent_delta": 0.0668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7227,
"after": 1.0,
"delta": 0.2773,
"percent_delta": 0.3837,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9948,
"after": 1.0,
"delta": 0.0052,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.4369,
"after": 0.0,
"delta": -0.4369,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.223,
"after": 1.0,
"delta": -0.223,
"percent_delta": -0.1823,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.7837,
"after": 3.0,
"delta": 0.2163,
"percent_delta": 0.0777,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 5.6244,
"after": 6.0,
"delta": 0.3756,
"percent_delta": 0.0668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4369,
"after": 0.0,
"delta": -0.4369,
"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": 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": 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.6735,
"after": 1.0,
"delta": 0.3265,
"percent_delta": 0.4848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 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": 0.6735,
"after": 1.0,
"delta": 0.3265,
"percent_delta": 0.4848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 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": 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": 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.1769,
"after": 0.167,
"delta": -0.0099,
"percent_delta": -0.056,
"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.2706,
"after": 0.286,
"delta": 0.0154,
"percent_delta": 0.0569,
"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.4203,
"after": 0.167,
"delta": -0.2533,
"percent_delta": -0.6027,
"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": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.2706,
"after": 0.286,
"delta": 0.0154,
"percent_delta": 0.0569,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4203,
"after": 0.167,
"delta": -0.2533,
"percent_delta": -0.6027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 3.0,
"after": 0.0,
"delta": -3.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_SO",
"before": 3.0,
"after": 0.0,
"delta": -3.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.1769,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2706,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4203,
"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.167,
"after": 0.1769,
"delta": 0.0099,
"percent_delta": 0.0591,
"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.2706,
"delta": -0.0154,
"percent_delta": -0.0539,
"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.167,
"after": 0.4203,
"delta": 0.2533,
"percent_delta": 1.517,
"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.4203,
"delta": 0.2533,
"percent_delta": 1.517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2706,
"delta": -0.0154,
"percent_delta": -0.0539,
"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.389,
"after": 4.0,
"delta": 0.611,
"percent_delta": 0.1803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.1769,
"delta": -0.0491,
"percent_delta": -0.2173,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"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.19,
"after": 0.0,
"delta": -0.19,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2706,
"delta": -0.0174,
"percent_delta": -0.0604,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.444,
"after": 1.0,
"delta": 0.556,
"percent_delta": 1.2523,
"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.427,
"after": 0.4203,
"delta": -0.0067,
"percent_delta": -0.0157,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.889,
"after": 0.0,
"delta": -1.889,
"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_AB",
"before": 3.389,
"after": 4.0,
"delta": 0.611,
"percent_delta": 0.1803,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.889,
"after": 0.0,
"delta": -1.889,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.389 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.500 | - |
| predicted_H | 0.740 | - |
| predicted_HR | 0.190 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.444 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.427 | - |
| 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.051 | 0.051 |
| predicted_3B | 0.004 | 0.004 |
| predicted_AB | 5.624 | 2.235 |
| predicted_AVG | 0.203 | -0.023 |
| predicted_BB | 0.728 | 0.228 |
| predicted_H | 1.031 | 0.291 |
| predicted_HBP | 0.026 | - |
| predicted_HR | 0.456 | 0.266 |
| predicted_OBP | 0.275 | -0.013 |
| predicted_R | 0.716 | 0.272 |
| predicted_RBI | 1.301 | 0.721 |
| predicted_SLG | 0.442 | 0.015 |
| predicted_SO | 2.764 | 0.875 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.051 | 0.000 |
| predicted_3B | 0.004 | 0.000 |
| predicted_AB | 5.624 | 0.000 |
| predicted_AVG | 0.177 | -0.026 |
| predicted_BB | 0.723 | -0.005 |
| predicted_H | 0.995 | -0.036 |
| predicted_HBP | 0.026 | 0.000 |
| predicted_HR | 0.437 | -0.019 |
| predicted_OBP | 0.271 | -0.005 |
| predicted_R | 0.673 | -0.043 |
| predicted_RBI | 1.223 | -0.078 |
| predicted_SLG | 0.420 | -0.022 |
| predicted_SO | 2.784 | 0.020 |
AB rounded to 6 (raw=5.62), rates preserved: AVG=0.177 HR/AB=0.078
| 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 | 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 | 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 | 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.051 |
| predicted_3B | 0.000 | -0.004 |
| predicted_AB | 6.000 | 0.376 |
| predicted_AVG | 0.167 | -0.010 |
| predicted_BB | 1.000 | 0.277 |
| predicted_H | 1.000 | 0.005 |
| predicted_HR | 0.000 | -0.437 |
| predicted_OBP | 0.286 | 0.015 |
| predicted_R | 1.000 | 0.327 |
| predicted_RBI | 1.000 | -0.223 |
| predicted_SLG | 0.167 | -0.253 |
| predicted_SO | 3.000 | 0.216 |
Attached 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 | 1.000 | 0.000 |
| RBI | 1.000 | 0.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 | - | 20.000 | 1.000 | 0.000 | 0.000 | 1.000 | 3.000 | 1.000 | 1.000 | 10.000 | 0.0500 | 0.0952 | 0.2000 | 0.0500 | 0.0500 | 0.1500 | 0.0500 | 0.5000 |
| last_10 | 0.20 | 3 | - | 39.000 | 6.000 | 0.000 | 0.000 | 6.000 | 17.000 | 6.000 | 5.000 | 20.000 | 0.1538 | 0.2500 | 0.6154 | 0.1538 | 0.1538 | 0.4359 | 0.1282 | 0.5128 |
| season | 0.60 | 5 | - | 61.000 | 8.000 | 0.000 | 0.000 | 8.000 | 21.000 | 8.000 | 9.000 | 34.000 | 0.1311 | 0.2429 | 0.5246 | 0.1311 | 0.1311 | 0.3443 | 0.1475 | 0.5574 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1400 |
| predicted_3B | 0.0110 |
| predicted_AB | 9.5600 |
| predicted_AVG | 0.1615 |
| predicted_BB | 1.1290 |
| predicted_H | 1.5440 |
| predicted_HBP | 0.0260 |
| predicted_HR | 0.9230 |
| predicted_OBP | 0.2529 |
| predicted_R | 1.1960 |
| predicted_RBI | 2.5700 |
| predicted_SLG | 0.4682 |
| predicted_SO | 4.3040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1400 | 0.0507 | model_form_blend |
| predicted_3B | 0.0000 | 0.0110 | 0.0040 | model_form_blend |
| predicted_AB | 3.3890 | 9.5600 | 5.6244 | model_form_blend |
| predicted_AVG | 0.2260 | 0.1615 | 0.2026 | model_form_blend |
| predicted_BB | 0.5000 | 1.1290 | 0.7279 | model_form_blend |
| predicted_H | 0.7400 | 1.5440 | 1.0312 | model_form_blend |
| predicted_HBP | - | 0.0260 | 0.0260 | form_only |
| predicted_HR | 0.1900 | 0.9230 | 0.4555 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2529 | 0.2753 | model_form_blend |
| predicted_R | 0.4440 | 1.1960 | 0.7164 | model_form_blend |
| predicted_RBI | 0.5800 | 2.5700 | 1.3009 | model_form_blend |
| predicted_SLG | 0.4270 | 0.4682 | 0.4419 | model_form_blend |
| predicted_SO | 1.8890 | 4.3040 | 2.7638 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 18 |
| Season rows before report date | 18 |
| Report year | 2026 |
| Profile rows used | 18 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.131 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 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 | RF |
| gameID | 20260527_CHC@PIT |
| game_type | full |
| mlbID | 699013 |
| playerID | 699013 |
| playerName | Esmerlyn Valdez |
| pos | OF |
| started | True |
| startingPosition | RF |
| team | PIT |
| teamID | 22 |
| game_date | 2026-05-27 |
| game_pk | 823376.0 |
| sl_k_percent | 50.0 |
| sl_bb_percent | 11.1 |
| sl_woba | 0.308 |
| sl_xwoba | 0.27 |
| sl_xba | 0.129 |
| sl_xslg | 0.392 |
| sl_sweet_spot_percent | 42.9 |
| sl_barrel_batted_rate | 28.6 |
| sl_hard_hit_percent | 71.4 |
| sl_exit_velocity_avg | 94.8 |
| sl_launch_angle_avg | 12.5 |
| sl_whiff_percent | 45.5 |
| sl_swing_percent | 44.0 |
| at_bat_number | 86.0 |
| ab_pitcher | 681799.0 |
| ab_pitcher_name | Roberts, Ethan |
| ab_home_team | PIT |
| ab_away_team | CHC |
| ab_game_type | R |
| ab_stand | R |
| ab_p_throws | R |
| ab_inning | 9.0 |
| ab_inning_topbot | Bot |
| ab_outs_when_up | 2.0 |
| ab_on_1b_start | 682848.0 |
| ab_balls_start | 0.0 |
| ab_strikes_start | 0.0 |
| ab_home_score_start | 4.0 |
| ab_away_score_start | 10.0 |
| ab_bat_score_start | 4.0 |
| ab_fld_score_start | 10.0 |
| ab_event | field_out |
| ab_event_description | Esmerlyn Valdez grounds out, shortstop Dansby Swanson to first baseman Michael Busch. |
| ab_event_type | X |
| ab_bb_type | ground_ball |
| ab_hit_location | 6.0 |
| ab_pitch_type_last | SI |
| ab_pitch_name_last | Sinker |
| ab_zone_last | 13.0 |
| ab_launch_speed_last | 101.3 |
| ab_launch_angle_last | -17.0 |
| ab_hit_distance_last | 4.0 |
| ab_estimated_ba_last | 0.189 |
| ab_estimated_woba_last | 0.17 |
| ab_estimated_slg_last | 0.197 |
| ab_woba_value | 0.0 |
| ab_woba_denom | 1.0 |
| ab_babip_value | 0.0 |
| ab_iso_value | 0.0 |
| ab_balls_end | 0.0 |
| ab_strikes_end | 1.0 |
| ab_home_score_end | 4.0 |
| ab_away_score_end | 10.0 |
| ab_bat_score_end | 4.0 |
| ab_fld_score_end | 10.0 |
| ab_pitch_count | 2.0 |
| ab_release_speed_avg | 89.25 |
| ab_release_spin_rate_avg | 2706.0 |
| ab_effective_speed_avg | 89.85 |
| ab_launch_speed_avg | 101.3 |
| ab_launch_angle_avg | -17.0 |
| ab_delta_run_exp_avg | -0.133 |
| ab_delta_home_win_exp_avg | -0.0005 |
| ab_delta_pitcher_run_exp_avg | 0.133 |
| ab_bat_speed_avg | 70.9 |
| ab_swing_length_avg | 7.4 |
| ab_launch_speed_max | 101.3 |
| ab_hit_distance_sc_max | 4.0 |
| ab_release_speed_max | 94.6 |
| ab_release_spin_rate_max | 2975.0 |
| ab_release_speed_min | 83.9 |
| ab_release_spin_rate_min | 2437.0 |
| ab_delta_run_exp_sum | -0.266 |
| ab_delta_home_win_exp_sum | -0.001 |
| ab_delta_pitcher_run_exp_sum | 0.266 |
| ab_result_is_hit | False |
| ab_result_is_walk | False |
| ab_result_is_strikeout | False |
| 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.147 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.474 | 3.000 | 4.000 | Hitting_AB | 0.000 | 0.000 | 3.000 | 3.000 |
| predicted_AVG | 0.289 | 0.000 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.337 | 1.000 | 0.000 | Hitting_BB | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.180 | 0.000 | 1.000 | Hitting_H | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.289 | 0.250 | 0.250 | Hitting_OBP | 1.000 | 1.000 | -0.750 | -0.750 |
| predicted_R | 0.439 | 0.000 | 0.000 | Hitting_R | 1.000 | 1.000 | -1.000 | -1.000 |
| predicted_RBI | 0.120 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.396 | 0.000 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.848 | 0.000 | 1.000 | Hitting_SO | 0.000 | 0.000 | 0.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.3370 -> 1.0000 (boost 0.6630, better) |
| Biggest Deboost | predicted_SO: 0.8480 -> 0.0000 (deboost -0.8480, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_H: 0.1800 -> 0.3041 (boost 0.1241, better) | predicted_AVG: 0.2890 -> 0.2829 (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_SLG: 0.3980 -> 0.1670 (deboost -0.2310, 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_AB: 3.5359 -> 4.0000 (boost 0.4641, better) | predicted_BB: 0.3285 -> 0.0000 (deboost -0.3285, worse) | AB rounded to 4 (raw=3.54), rates preserved: AVG=0.083 HR/AB=0.012 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.4216 -> 0.0000 (deboost -0.4216, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.0830 -> 0.2500 (boost 0.1670, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 4 | 1 | 3 | 2 | 2 | predicted_BB: 0.0000 -> 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 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.2500 -> 0.0830 (deboost -0.1670, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "804668",
"player_name": "Rafael Flores Jr.",
"position": "C",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.004,
"predicted_AB": 3.474,
"predicted_AVG": 0.289,
"predicted_BB": 0.337,
"predicted_H": 0.18,
"predicted_HR": 0.03,
"predicted_OBP": 0.289,
"predicted_R": 0.439,
"predicted_RBI": 0.12,
"predicted_SLG": 0.396,
"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.1536,
"predicted_3B": 0.0057,
"predicted_AB": 3.5359,
"predicted_AVG": 0.2829,
"predicted_BB": 0.3309,
"predicted_H": 0.3041,
"predicted_HBP": 0.035,
"predicted_HR": 0.0459,
"predicted_OBP": 0.2929,
"predicted_R": 0.4485,
"predicted_RBI": 0.1811,
"predicted_SLG": 0.398,
"predicted_SO": 0.8488
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.1536,
"delta": 0.0066,
"percent_delta": 0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0057,
"delta": 0.0017,
"percent_delta": 0.425,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.474,
"after": 3.5359,
"delta": 0.0619,
"percent_delta": 0.0178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.289,
"after": 0.2829,
"delta": -0.0061,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 0.3309,
"delta": -0.0061,
"percent_delta": -0.0181,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.18,
"after": 0.3041,
"delta": 0.1241,
"percent_delta": 0.6894,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0459,
"delta": 0.0159,
"percent_delta": 0.53,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.289,
"after": 0.2929,
"delta": 0.0039,
"percent_delta": 0.0135,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.439,
"after": 0.4485,
"delta": 0.0095,
"percent_delta": 0.0216,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.12,
"after": 0.1811,
"delta": 0.0611,
"percent_delta": 0.5092,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.396,
"after": 0.398,
"delta": 0.002,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.848,
"after": 0.8488,
"delta": 0.0008,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.18,
"after": 0.3041,
"delta": 0.1241,
"percent_delta": 0.6894,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.289,
"after": 0.2829,
"delta": -0.0061,
"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": 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.1536,
"predicted_3B": 0.0057,
"predicted_AB": 3.5359,
"predicted_AVG": 0.083,
"predicted_BB": 0.3285,
"predicted_H": 0.2934,
"predicted_HBP": 0.035,
"predicted_HR": 0.044,
"predicted_OBP": 0.1609,
"predicted_R": 0.4216,
"predicted_RBI": 0.1703,
"predicted_SLG": 0.167,
"predicted_SO": 0.8549
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1536,
"after": 0.1536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0057,
"after": 0.0057,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5359,
"after": 3.5359,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2829,
"after": 0.083,
"delta": -0.1999,
"percent_delta": -0.7066,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3309,
"after": 0.3285,
"delta": -0.0024,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3041,
"after": 0.2934,
"delta": -0.0107,
"percent_delta": -0.0352,
"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.0459,
"after": 0.044,
"delta": -0.0019,
"percent_delta": -0.0414,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2929,
"after": 0.1609,
"delta": -0.132,
"percent_delta": -0.4507,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4485,
"after": 0.4216,
"delta": -0.0269,
"percent_delta": -0.06,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1811,
"after": 0.1703,
"delta": -0.0108,
"percent_delta": -0.0596,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.167,
"delta": -0.231,
"percent_delta": -0.5804,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8488,
"after": 0.8549,
"delta": 0.0061,
"percent_delta": 0.0072,
"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.398,
"after": 0.167,
"delta": -0.231,
"percent_delta": -0.5804,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.54), rates preserved: AVG=0.083 HR/AB=0.012",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.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.1536,
"after": 0.0,
"delta": -0.1536,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0057,
"after": 0.0,
"delta": -0.0057,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5359,
"after": 4.0,
"delta": 0.4641,
"percent_delta": 0.1313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3285,
"after": 0.0,
"delta": -0.3285,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.2934,
"after": 0.0,
"delta": -0.2934,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.044,
"after": 0.0,
"delta": -0.044,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1703,
"after": 0.0,
"delta": -0.1703,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.8549,
"after": 1.0,
"delta": 0.1451,
"percent_delta": 0.1697,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5359,
"after": 4.0,
"delta": 0.4641,
"percent_delta": 0.1313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3285,
"after": 0.0,
"delta": -0.3285,
"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": 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.4216,
"after": 0.0,
"delta": -0.4216,
"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.4216,
"after": 0.0,
"delta": -0.4216,
"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.083,
"after": 0.25,
"delta": 0.167,
"percent_delta": 2.012,
"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.1609,
"after": 0.25,
"delta": 0.0891,
"percent_delta": 0.5538,
"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.167,
"after": 0.25,
"delta": 0.083,
"percent_delta": 0.497,
"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.083,
"after": 0.25,
"delta": 0.167,
"percent_delta": 2.012,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"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_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.083,
"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.1609,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.167,
"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.083,
"delta": -0.167,
"percent_delta": -0.6681,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.1609,
"delta": -0.0891,
"percent_delta": -0.3563,
"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.167,
"delta": -0.083,
"percent_delta": -0.3321,
"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.25,
"after": 0.083,
"delta": -0.167,
"percent_delta": -0.6681,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.147,
"after": 0.0,
"delta": -0.147,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"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.289,
"after": 0.083,
"delta": -0.206,
"percent_delta": -0.7128,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 1.0,
"delta": 0.663,
"percent_delta": 1.9674,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"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.289,
"after": 0.1609,
"delta": -0.1281,
"percent_delta": -0.4433,
"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.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.396,
"after": 0.167,
"delta": -0.229,
"percent_delta": -0.5783,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.848,
"after": 0.0,
"delta": -0.848,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.337,
"after": 1.0,
"delta": 0.663,
"percent_delta": 1.9674,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.848,
"after": 0.0,
"delta": -0.848,
"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.147 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 3.474 | - |
| predicted_AVG | 0.289 | - |
| predicted_BB | 0.337 | - |
| predicted_H | 0.180 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.289 | - |
| predicted_R | 0.439 | - |
| predicted_RBI | 0.120 | - |
| predicted_SLG | 0.396 | - |
| 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.154 | 0.007 |
| predicted_3B | 0.006 | 0.002 |
| predicted_AB | 3.536 | 0.062 |
| predicted_AVG | 0.283 | -0.006 |
| predicted_BB | 0.331 | -0.006 |
| predicted_H | 0.304 | 0.124 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.046 | 0.016 |
| predicted_OBP | 0.293 | 0.004 |
| predicted_R | 0.449 | 0.010 |
| predicted_RBI | 0.181 | 0.061 |
| predicted_SLG | 0.398 | 0.002 |
| predicted_SO | 0.849 | 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.154 | 0.000 |
| predicted_3B | 0.006 | 0.000 |
| predicted_AB | 3.536 | 0.000 |
| predicted_AVG | 0.083 | -0.200 |
| predicted_BB | 0.329 | -0.002 |
| predicted_H | 0.293 | -0.011 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.044 | -0.002 |
| predicted_OBP | 0.161 | -0.132 |
| predicted_R | 0.422 | -0.027 |
| predicted_RBI | 0.170 | -0.011 |
| predicted_SLG | 0.167 | -0.231 |
| predicted_SO | 0.855 | 0.006 |
AB rounded to 4 (raw=3.54), rates preserved: AVG=0.083 HR/AB=0.012
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.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 | 4.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.154 |
| predicted_3B | 0.000 | -0.006 |
| predicted_AB | 4.000 | 0.464 |
| predicted_AVG | 0.250 | 0.167 |
| predicted_BB | 0.000 | -0.329 |
| predicted_H | 1.000 | 0.707 |
| predicted_HR | 0.000 | -0.044 |
| predicted_OBP | 0.250 | 0.089 |
| predicted_R | 0.000 | -0.422 |
| predicted_RBI | 0.000 | -0.170 |
| predicted_SLG | 0.250 | 0.083 |
| predicted_SO | 1.000 | 0.145 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 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.2504 |
| predicted_BB | 0.2980 |
| predicted_H | 0.9680 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3135 |
| predicted_R | 0.4990 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.4089 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1470 | 0.1890 | 0.1536 | model_form_blend |
| predicted_3B | 0.0040 | 0.0150 | 0.0057 | model_form_blend |
| predicted_AB | 3.4740 | 3.8670 | 3.5359 | model_form_blend |
| predicted_AVG | 0.2890 | 0.2504 | 0.2829 | model_form_blend |
| predicted_BB | 0.3370 | 0.2980 | 0.3309 | model_form_blend |
| predicted_H | 0.1800 | 0.9680 | 0.3041 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.0300 | 0.1310 | 0.0459 | model_form_blend |
| predicted_OBP | 0.2890 | 0.3135 | 0.2929 | model_form_blend |
| predicted_R | 0.4390 | 0.4990 | 0.4485 | model_form_blend |
| predicted_RBI | 0.1200 | 0.5080 | 0.1811 | model_form_blend |
| predicted_SLG | 0.3960 | 0.4089 | 0.3980 | model_form_blend |
| predicted_SO | 0.8480 | 0.8530 | 0.8488 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| 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 | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| 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 | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 1 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260610_LAD@PIT |
| game_type | short |
| mlbID | 804668 |
| playerID | 804668 |
| playerName | Rafael Flores Jr. |
| pos | C |
| started | False |
| startingPosition | C |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.181 | 0.000 | 0.000 | Hitting_2B | 0.181 | 0.000 | -0.181 | 0.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 3.470 | 2.000 | 5.000 | Hitting_AB | 3.362 | 5.000 | -1.362 | -3.000 |
| predicted_AVG | 0.257 | 0.000 | 0.200 | Hitting_AVG | 0.290 | 0.400 | -0.290 | -0.400 |
| predicted_BB | 0.663 | 2.000 | 1.000 | Hitting_BB | 0.663 | 0.000 | 1.337 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.890 | 0.000 | 1.000 | Hitting_H | 0.975 | 2.000 | -0.975 | -2.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.121 | 1.000 | -0.121 | -1.000 |
| predicted_OBP | 0.355 | 0.500 | 0.333 | Hitting_OBP | 0.404 | 0.400 | 0.096 | 0.100 |
| predicted_R | 0.432 | 0.000 | 1.000 | Hitting_R | 0.432 | 1.000 | -0.432 | -1.000 |
| predicted_RBI | 0.470 | 0.000 | 1.000 | Hitting_RBI | 0.548 | 2.000 | -0.548 | -2.000 |
| predicted_SLG | 0.452 | 0.000 | 0.200 | Hitting_SLG | 0.463 | 1.000 | -0.463 | -1.000 |
| predicted_SO | 0.482 | 2.000 | 1.000 | Hitting_SO | 0.482 | 1.000 | 1.518 | 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_SO: 0.4820 -> 2.0000 (boost 1.5180, worse) |
| Biggest Deboost | predicted_AB: 3.4700 -> 2.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: 3.4700 -> 5.4299 (boost 1.9599, 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.3700 -> 0.3765 (boost 0.0065, better) | predicted_H: 1.4995 -> 1.4466 (deboost -0.0529, 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.7317 -> 1.0000 (boost 0.2683, better) | predicted_H: 1.4466 -> 1.0000 (deboost -0.4466, worse) | AB rounded to 5 (raw=5.43), rates preserved: AVG=0.266 HR/AB=0.050 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6765 -> 1.0000 (boost 0.3235, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4689 -> 0.2000 (deboost -0.2689, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_BB: 1.0000 -> 2.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.4689 (boost 0.2689, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "687462",
"player_name": "Spencer Horwitz",
"position": "1B",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.181,
"predicted_3B": 0.02,
"predicted_AB": 3.47,
"predicted_AVG": 0.257,
"predicted_BB": 0.663,
"predicted_H": 0.89,
"predicted_HR": 0.16,
"predicted_OBP": 0.355,
"predicted_R": 0.432,
"predicted_RBI": 0.47,
"predicted_SLG": 0.452,
"predicted_SO": 0.482
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.232,
"predicted_3B": 0.024,
"predicted_AB": 5.4299,
"predicted_AVG": 0.2703,
"predicted_BB": 0.9655,
"predicted_H": 1.4995,
"predicted_HBP": 0.051,
"predicted_HR": 0.2849,
"predicted_OBP": 0.37,
"predicted_R": 0.7196,
"predicted_RBI": 0.7783,
"predicted_SLG": 0.4731,
"predicted_SO": 0.8241
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 0.232,
"delta": 0.051,
"percent_delta": 0.2818,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.024,
"delta": 0.004,
"percent_delta": 0.2,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.47,
"after": 5.4299,
"delta": 1.9599,
"percent_delta": 0.5648,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2703,
"delta": 0.0133,
"percent_delta": 0.0518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.663,
"after": 0.9655,
"delta": 0.3025,
"percent_delta": 0.4563,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 1.4995,
"delta": 0.6095,
"percent_delta": 0.6848,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2849,
"delta": 0.1249,
"percent_delta": 0.7806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.355,
"after": 0.37,
"delta": 0.015,
"percent_delta": 0.0423,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.432,
"after": 0.7196,
"delta": 0.2876,
"percent_delta": 0.6657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.7783,
"delta": 0.3083,
"percent_delta": 0.656,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4731,
"delta": 0.0211,
"percent_delta": 0.0467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.482,
"after": 0.8241,
"delta": 0.3421,
"percent_delta": 0.7098,
"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.47,
"after": 5.4299,
"delta": 1.9599,
"percent_delta": 0.5648,
"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.232,
"predicted_3B": 0.024,
"predicted_AB": 5.4299,
"predicted_AVG": 0.2664,
"predicted_BB": 0.9585,
"predicted_H": 1.4466,
"predicted_HBP": 0.051,
"predicted_HR": 0.2732,
"predicted_OBP": 0.3765,
"predicted_R": 0.6765,
"predicted_RBI": 0.7317,
"predicted_SLG": 0.4689,
"predicted_SO": 0.83
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.232,
"after": 0.232,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.024,
"after": 0.024,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4299,
"after": 5.4299,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2703,
"after": 0.2664,
"delta": -0.0039,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.9655,
"after": 0.9585,
"delta": -0.007,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4995,
"after": 1.4466,
"delta": -0.0529,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.051,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2849,
"after": 0.2732,
"delta": -0.0117,
"percent_delta": -0.0411,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.37,
"after": 0.3765,
"delta": 0.0065,
"percent_delta": 0.0176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7196,
"after": 0.6765,
"delta": -0.0431,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7783,
"after": 0.7317,
"delta": -0.0466,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4731,
"after": 0.4689,
"delta": -0.0042,
"percent_delta": -0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.8241,
"after": 0.83,
"delta": 0.0059,
"percent_delta": 0.0072,
"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.37,
"after": 0.3765,
"delta": 0.0065,
"percent_delta": 0.0176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.4995,
"after": 1.4466,
"delta": -0.0529,
"percent_delta": -0.0353,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.43), rates preserved: AVG=0.266 HR/AB=0.050",
"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.232,
"after": 0.0,
"delta": -0.232,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.024,
"after": 0.0,
"delta": -0.024,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.4299,
"after": 5.0,
"delta": -0.4299,
"percent_delta": -0.0792,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9585,
"after": 1.0,
"delta": 0.0415,
"percent_delta": 0.0433,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4466,
"after": 1.0,
"delta": -0.4466,
"percent_delta": -0.3087,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2732,
"after": 0.0,
"delta": -0.2732,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7317,
"after": 1.0,
"delta": 0.2683,
"percent_delta": 0.3667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.83,
"after": 1.0,
"delta": 0.17,
"percent_delta": 0.2048,
"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.7317,
"after": 1.0,
"delta": 0.2683,
"percent_delta": 0.3667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.4466,
"after": 1.0,
"delta": -0.4466,
"percent_delta": -0.3087,
"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.6765,
"after": 1.0,
"delta": 0.3235,
"percent_delta": 0.4782,
"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.6765,
"after": 1.0,
"delta": 0.3235,
"percent_delta": 0.4782,
"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.2664,
"after": 0.2,
"delta": -0.0664,
"percent_delta": -0.2492,
"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.3765,
"after": 0.333,
"delta": -0.0435,
"percent_delta": -0.1155,
"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.4689,
"after": 0.2,
"delta": -0.2689,
"percent_delta": -0.5735,
"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.4689,
"after": 0.2,
"delta": -0.2689,
"percent_delta": -0.5735,
"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": 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": 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": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 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": 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.2664,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3765,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4689,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2664,
"delta": 0.0664,
"percent_delta": 0.332,
"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.333,
"after": 0.3765,
"delta": 0.0435,
"percent_delta": 0.1306,
"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.4689,
"delta": 0.2689,
"percent_delta": 1.3447,
"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.4689,
"delta": 0.2689,
"percent_delta": 1.3447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.181,
"after": 0.0,
"delta": -0.181,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.47,
"after": 2.0,
"delta": -1.47,
"percent_delta": -0.4236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.257,
"after": 0.2664,
"delta": 0.0094,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.663,
"after": 2.0,
"delta": 1.337,
"percent_delta": 2.0166,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 0.0,
"delta": -0.89,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.355,
"after": 0.3765,
"delta": 0.0215,
"percent_delta": 0.0606,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.432,
"after": 0.0,
"delta": -0.432,
"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.452,
"after": 0.4689,
"delta": 0.0169,
"percent_delta": 0.0374,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.482,
"after": 2.0,
"delta": 1.518,
"percent_delta": 3.1494,
"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.482,
"after": 2.0,
"delta": 1.518,
"percent_delta": 3.1494,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.47,
"after": 2.0,
"delta": -1.47,
"percent_delta": -0.4236,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.181 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 3.470 | - |
| predicted_AVG | 0.257 | - |
| predicted_BB | 0.663 | - |
| predicted_H | 0.890 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.355 | - |
| predicted_R | 0.432 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.452 | - |
| predicted_SO | 0.482 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.232 | 0.051 |
| predicted_3B | 0.024 | 0.004 |
| predicted_AB | 5.430 | 1.960 |
| predicted_AVG | 0.270 | 0.013 |
| predicted_BB | 0.966 | 0.302 |
| predicted_H | 1.500 | 0.610 |
| predicted_HBP | 0.051 | - |
| predicted_HR | 0.285 | 0.125 |
| predicted_OBP | 0.370 | 0.015 |
| predicted_R | 0.720 | 0.288 |
| predicted_RBI | 0.778 | 0.308 |
| predicted_SLG | 0.473 | 0.021 |
| predicted_SO | 0.824 | 0.342 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.232 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 5.430 | 0.000 |
| predicted_AVG | 0.266 | -0.004 |
| predicted_BB | 0.959 | -0.007 |
| predicted_H | 1.447 | -0.053 |
| predicted_HBP | 0.051 | 0.000 |
| predicted_HR | 0.273 | -0.012 |
| predicted_OBP | 0.377 | 0.007 |
| predicted_R | 0.676 | -0.043 |
| predicted_RBI | 0.732 | -0.047 |
| predicted_SLG | 0.469 | -0.004 |
| predicted_SO | 0.830 | 0.006 |
AB rounded to 5 (raw=5.43), rates preserved: AVG=0.266 HR/AB=0.050
| 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.232 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 5.000 | -0.430 |
| predicted_AVG | 0.200 | -0.066 |
| predicted_BB | 1.000 | 0.041 |
| predicted_H | 1.000 | -0.447 |
| predicted_HR | 0.000 | -0.273 |
| predicted_OBP | 0.333 | -0.043 |
| predicted_R | 1.000 | 0.324 |
| predicted_RBI | 1.000 | 0.268 |
| predicted_SLG | 0.200 | -0.269 |
| predicted_SO | 1.000 | 0.170 |
Attached 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 | 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 | -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 | 3.000 | 3.000 | 3.000 | 4.000 | 0.2632 | 0.3636 | 0.5789 | 0.2632 | 0.1053 | 0.1579 | 0.1579 | 0.2105 |
| last_10 | 0.20 | 10 | - | 42.000 | 13.000 | 1.000 | 0.000 | 3.000 | 4.000 | 6.000 | 5.000 | 6.000 | 0.3095 | 0.3830 | 0.5476 | 0.3095 | 0.0714 | 0.0952 | 0.1191 | 0.1429 |
| season | 0.60 | 62 | - | 669.000 | 194.000 | 36.000 | 4.000 | 24.000 | 109.000 | 86.000 | 132.000 | 96.000 | 0.2900 | 0.4041 | 0.4634 | 0.2900 | 0.0359 | 0.1629 | 0.1973 | 0.1435 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2970 |
| predicted_3B | 0.0290 |
| predicted_AB | 7.9270 |
| predicted_AVG | 0.2872 |
| predicted_BB | 1.3510 |
| predicted_H | 2.2760 |
| predicted_HBP | 0.0510 |
| predicted_HR | 0.4440 |
| predicted_OBP | 0.3890 |
| predicted_R | 1.0860 |
| predicted_RBI | 1.1710 |
| predicted_SLG | 0.5000 |
| predicted_SO | 1.2600 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1810 | 0.2970 | 0.2320 | model_form_blend |
| predicted_3B | 0.0200 | 0.0290 | 0.0240 | model_form_blend |
| predicted_AB | 3.4700 | 7.9270 | 5.4299 | model_form_blend |
| predicted_AVG | 0.2570 | 0.2872 | 0.2703 | model_form_blend |
| predicted_BB | 0.6630 | 1.3510 | 0.9655 | model_form_blend |
| predicted_H | 0.8900 | 2.2760 | 1.4995 | model_form_blend |
| predicted_HBP | - | 0.0510 | 0.0510 | form_only |
| predicted_HR | 0.1600 | 0.4440 | 0.2849 | model_form_blend |
| predicted_OBP | 0.3550 | 0.3890 | 0.3700 | model_form_blend |
| predicted_R | 0.4320 | 1.0860 | 0.7196 | model_form_blend |
| predicted_RBI | 0.4700 | 1.1710 | 0.7783 | model_form_blend |
| predicted_SLG | 0.4520 | 0.5000 | 0.4731 | model_form_blend |
| predicted_SO | 0.4820 | 1.2600 | 0.8241 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 199 |
| Season rows before report date | 199 |
| 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 | 2 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 2 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.29 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| 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 | 1B |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 687462 |
| playerID | 687462 |
| playerName | Spencer Horwitz |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 12.5 |
| sl_bb_percent | 13.8 |
| sl_woba | 0.379 |
| sl_xwoba | 0.334 |
| sl_xba | 0.233 |
| sl_xslg | 0.386 |
| sl_sweet_spot_percent | 28.0 |
| sl_barrel_batted_rate | 8.0 |
| sl_hard_hit_percent | 33.7 |
| sl_exit_velocity_avg | 86.3 |
| sl_launch_angle_avg | 16.4 |
| sl_whiff_percent | 14.0 |
| sl_swing_percent | 41.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.108 | 0.000 | 0.000 | Hitting_2B | 0.102 | 1.000 | -0.102 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.577 | 3.000 | 5.000 | Hitting_AB | 3.364 | 4.000 | -0.364 | -1.000 |
| predicted_AVG | 0.293 | 0.000 | 0.200 | Hitting_AVG | 0.272 | 0.750 | -0.272 | -0.750 |
| predicted_BB | 0.270 | 1.000 | 0.000 | Hitting_BB | 0.263 | 0.000 | 0.737 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.042 | 1.000 | -0.042 | -1.000 |
| predicted_H | 0.760 | 0.000 | 1.000 | Hitting_H | 0.915 | 3.000 | -0.915 | -3.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_OBP | 0.339 | 0.250 | 0.200 | Hitting_OBP | 0.332 | 0.750 | -0.082 | -0.500 |
| predicted_R | 0.477 | 0.000 | 1.000 | Hitting_R | 0.458 | 1.000 | -0.458 | -1.000 |
| predicted_RBI | 0.280 | 0.000 | 0.000 | Hitting_RBI | 0.119 | 0.000 | -0.119 | 0.000 |
| predicted_SLG | 0.405 | 0.000 | 0.200 | Hitting_SLG | 0.310 | 1.000 | -0.310 | -1.000 |
| predicted_SO | 0.775 | 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 | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.2700 -> 1.0000 (boost 0.7300, better) |
| Biggest Deboost | predicted_SO: 0.7750 -> 0.0000 (deboost -0.7750, 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.5770 -> 5.0252 (boost 1.4482, 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.4012 -> 0.3431 (deboost -0.0581, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.3236 -> 1.0000 (deboost -0.3236, worse) | AB rounded to 5 (raw=5.03), rates preserved: AVG=0.263 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5838 -> 1.0000 (boost 0.4162, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3431 -> 0.2000 (deboost -0.1431, 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 -> 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.3431 (boost 0.1431, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663968",
"player_name": "Jake Mangum",
"position": "CF",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.0,
"predicted_AB": 3.577,
"predicted_AVG": 0.293,
"predicted_BB": 0.27,
"predicted_H": 0.76,
"predicted_HR": 0.06,
"predicted_OBP": 0.339,
"predicted_R": 0.477,
"predicted_RBI": 0.28,
"predicted_SLG": 0.405,
"predicted_SO": 0.775
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2214,
"predicted_3B": 0.0009,
"predicted_AB": 5.0252,
"predicted_AVG": 0.3021,
"predicted_BB": 0.3122,
"predicted_H": 1.372,
"predicted_HBP": 0.043,
"predicted_HR": 0.0617,
"predicted_OBP": 0.3441,
"predicted_R": 0.621,
"predicted_RBI": 0.2947,
"predicted_SLG": 0.4012,
"predicted_SO": 0.9806
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.108,
"after": 0.2214,
"delta": 0.1134,
"percent_delta": 1.05,
"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.577,
"after": 5.0252,
"delta": 1.4482,
"percent_delta": 0.4049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.293,
"after": 0.3021,
"delta": 0.0091,
"percent_delta": 0.0311,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.27,
"after": 0.3122,
"delta": 0.0422,
"percent_delta": 0.1563,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.76,
"after": 1.372,
"delta": 0.612,
"percent_delta": 0.8053,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.0617,
"delta": 0.0017,
"percent_delta": 0.0283,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3441,
"delta": 0.0051,
"percent_delta": 0.015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.477,
"after": 0.621,
"delta": 0.144,
"percent_delta": 0.3019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.28,
"after": 0.2947,
"delta": 0.0147,
"percent_delta": 0.0525,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.405,
"after": 0.4012,
"delta": -0.0038,
"percent_delta": -0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.775,
"after": 0.9806,
"delta": 0.2056,
"percent_delta": 0.2653,
"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.577,
"after": 5.0252,
"delta": 1.4482,
"percent_delta": 0.4049,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 41
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2214,
"predicted_3B": 0.0009,
"predicted_AB": 5.0252,
"predicted_AVG": 0.2634,
"predicted_BB": 0.31,
"predicted_H": 1.3236,
"predicted_HBP": 0.043,
"predicted_HR": 0.0592,
"predicted_OBP": 0.3062,
"predicted_R": 0.5838,
"predicted_RBI": 0.277,
"predicted_SLG": 0.3431,
"predicted_SO": 0.9877
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2214,
"after": 0.2214,
"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.0252,
"after": 5.0252,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3021,
"after": 0.2634,
"delta": -0.0387,
"percent_delta": -0.1281,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3122,
"after": 0.31,
"delta": -0.0022,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.372,
"after": 1.3236,
"delta": -0.0484,
"percent_delta": -0.0353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.043,
"after": 0.043,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0617,
"after": 0.0592,
"delta": -0.0025,
"percent_delta": -0.0405,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3441,
"after": 0.3062,
"delta": -0.0379,
"percent_delta": -0.1101,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.621,
"after": 0.5838,
"delta": -0.0372,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2947,
"after": 0.277,
"delta": -0.0177,
"percent_delta": -0.0601,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4012,
"after": 0.3431,
"delta": -0.0581,
"percent_delta": -0.1448,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9806,
"after": 0.9877,
"delta": 0.0071,
"percent_delta": 0.0072,
"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.4012,
"after": 0.3431,
"delta": -0.0581,
"percent_delta": -0.1448,
"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.263 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.2214,
"after": 0.0,
"delta": -0.2214,
"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.0252,
"after": 5.0,
"delta": -0.0252,
"percent_delta": -0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 0.0,
"delta": -0.31,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3236,
"after": 1.0,
"delta": -0.3236,
"percent_delta": -0.2445,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.043,
"after": 0.0,
"delta": -0.043,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0592,
"after": 0.0,
"delta": -0.0592,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.277,
"after": 0.0,
"delta": -0.277,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9877,
"after": 1.0,
"delta": 0.0123,
"percent_delta": 0.0125,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3236,
"after": 1.0,
"delta": -0.3236,
"percent_delta": -0.2445,
"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.5838,
"after": 1.0,
"delta": 0.4162,
"percent_delta": 0.7129,
"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.5838,
"after": 1.0,
"delta": 0.4162,
"percent_delta": 0.7129,
"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.2634,
"after": 0.2,
"delta": -0.0634,
"percent_delta": -0.2407,
"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.3062,
"after": 0.2,
"delta": -0.1062,
"percent_delta": -0.3468,
"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.3431,
"after": 0.2,
"delta": -0.1431,
"percent_delta": -0.4171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3431,
"after": 0.2,
"delta": -0.1431,
"percent_delta": -0.4171,
"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": 5.0,
"after": 3.0,
"delta": -2.0,
"percent_delta": -0.4,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"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": 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.2634,
"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.3062,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3431,
"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.2,
"after": 0.2634,
"delta": 0.0634,
"percent_delta": 0.3169,
"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.3062,
"delta": 0.1062,
"percent_delta": 0.5309,
"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.3431,
"delta": 0.1431,
"percent_delta": 0.7157,
"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.3431,
"delta": 0.1431,
"percent_delta": 0.7157,
"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.108,
"after": 0.0,
"delta": -0.108,
"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.577,
"after": 3.0,
"delta": -0.577,
"percent_delta": -0.1613,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.293,
"after": 0.2634,
"delta": -0.0296,
"percent_delta": -0.101,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"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.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3062,
"delta": -0.0328,
"percent_delta": -0.0968,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.477,
"after": 0.0,
"delta": -0.477,
"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.405,
"after": 0.3431,
"delta": -0.0619,
"percent_delta": -0.1528,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.775,
"after": 0.0,
"delta": -0.775,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.27,
"after": 1.0,
"delta": 0.73,
"percent_delta": 2.7037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.775,
"after": 0.0,
"delta": -0.775,
"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.108 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.577 | - |
| predicted_AVG | 0.293 | - |
| predicted_BB | 0.270 | - |
| predicted_H | 0.760 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.477 | - |
| predicted_RBI | 0.280 | - |
| predicted_SLG | 0.405 | - |
| predicted_SO | 0.775 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.221 | 0.113 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 5.025 | 1.448 |
| predicted_AVG | 0.302 | 0.009 |
| predicted_BB | 0.312 | 0.042 |
| predicted_H | 1.372 | 0.612 |
| predicted_HBP | 0.043 | - |
| predicted_HR | 0.062 | 0.002 |
| predicted_OBP | 0.344 | 0.005 |
| predicted_R | 0.621 | 0.144 |
| predicted_RBI | 0.295 | 0.015 |
| predicted_SLG | 0.401 | -0.004 |
| predicted_SO | 0.981 | 0.206 |
Step 3: 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.001 | 0.000 |
| predicted_AB | 5.025 | 0.000 |
| predicted_AVG | 0.263 | -0.039 |
| predicted_BB | 0.310 | -0.002 |
| predicted_H | 1.324 | -0.048 |
| predicted_HBP | 0.043 | 0.000 |
| predicted_HR | 0.059 | -0.002 |
| predicted_OBP | 0.306 | -0.038 |
| predicted_R | 0.584 | -0.037 |
| predicted_RBI | 0.277 | -0.018 |
| predicted_SLG | 0.343 | -0.058 |
| predicted_SO | 0.988 | 0.007 |
AB rounded to 5 (raw=5.03), rates preserved: AVG=0.263 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 | 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.221 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | -0.025 |
| predicted_AVG | 0.200 | -0.063 |
| predicted_BB | 0.000 | -0.310 |
| predicted_H | 1.000 | -0.324 |
| predicted_HR | 0.000 | -0.059 |
| predicted_OBP | 0.200 | -0.106 |
| predicted_R | 1.000 | 0.416 |
| predicted_RBI | 0.000 | -0.277 |
| predicted_SLG | 0.200 | -0.143 |
| predicted_SO | 1.000 | 0.012 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -2.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 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 | 6.000 | 2.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 2.000 | 0.3529 | 0.3529 | 0.4706 | 0.3529 | 0.0000 | 0.0000 | 0.0000 | 0.1177 |
| last_10 | 0.20 | 10 | - | 33.000 | 14.000 | 2.000 | 0.000 | 1.000 | 3.000 | 4.000 | 1.000 | 4.000 | 0.4242 | 0.4286 | 0.5758 | 0.4242 | 0.0303 | 0.0909 | 0.0303 | 0.1212 |
| season | 0.60 | 41 | - | 397.000 | 108.000 | 12.000 | 0.000 | 1.000 | 14.000 | 53.000 | 30.000 | 86.000 | 0.2720 | 0.3287 | 0.3098 | 0.2720 | 0.0025 | 0.0353 | 0.0756 | 0.2166 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3710 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.9370 |
| predicted_AVG | 0.3142 |
| predicted_BB | 0.3680 |
| predicted_H | 2.1800 |
| predicted_HBP | 0.0430 |
| predicted_HR | 0.0640 |
| predicted_OBP | 0.3509 |
| predicted_R | 0.8110 |
| predicted_RBI | 0.3140 |
| predicted_SLG | 0.3961 |
| predicted_SO | 1.2520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1080 | 0.3710 | 0.2214 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.5770 | 6.9370 | 5.0252 | model_form_blend |
| predicted_AVG | 0.2930 | 0.3142 | 0.3021 | model_form_blend |
| predicted_BB | 0.2700 | 0.3680 | 0.3122 | model_form_blend |
| predicted_H | 0.7600 | 2.1800 | 1.3720 | model_form_blend |
| predicted_HBP | - | 0.0430 | 0.0430 | form_only |
| predicted_HR | 0.0600 | 0.0640 | 0.0617 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3509 | 0.3441 | model_form_blend |
| predicted_R | 0.4770 | 0.8110 | 0.6210 | model_form_blend |
| predicted_RBI | 0.2800 | 0.3140 | 0.2947 | model_form_blend |
| predicted_SLG | 0.4050 | 0.3961 | 0.4012 | model_form_blend |
| predicted_SO | 0.7750 | 1.2520 | 0.9806 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 118 |
| Season rows before report date | 118 |
| Report year | 2026 |
| Profile rows used | 111 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.272 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 1 |
| 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.75 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF-LF |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 663968 |
| playerID | 663968 |
| playerName | Jake Mangum |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.9 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.315 |
| sl_xwoba | 0.29 |
| sl_xba | 0.263 |
| sl_xslg | 0.329 |
| sl_sweet_spot_percent | 26.0 |
| sl_barrel_batted_rate | 1.0 |
| sl_hard_hit_percent | 26.0 |
| sl_exit_velocity_avg | 84.0 |
| sl_launch_angle_avg | 2.7 |
| sl_whiff_percent | 19.0 |
| sl_swing_percent | 60.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.106 | 0.000 | 0.000 | Hitting_2B | 0.102 | 1.000 | -0.102 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.506 | 4.000 | 5.000 | Hitting_AB | 3.386 | 4.000 | 0.614 | 0.000 |
| predicted_AVG | 0.249 | 0.000 | 0.200 | Hitting_AVG | 0.221 | 0.250 | -0.221 | -0.250 |
| predicted_BB | 0.224 | 0.000 | 0.000 | Hitting_BB | 0.216 | 0.000 | -0.216 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.011 | 0.000 | -0.011 | 0.000 |
| predicted_H | 0.660 | 0.000 | 1.000 | Hitting_H | 0.750 | 1.000 | -0.750 | -1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.312 | 0.000 | 0.200 | Hitting_OBP | 0.280 | 0.250 | -0.280 | -0.250 |
| predicted_R | 0.212 | 0.000 | 0.000 | Hitting_R | 0.205 | 1.000 | -0.205 | -1.000 |
| predicted_RBI | 0.260 | 0.000 | 0.000 | Hitting_RBI | 0.125 | 0.000 | -0.125 | 0.000 |
| predicted_SLG | 0.339 | 0.000 | 0.200 | Hitting_SLG | 0.252 | 0.500 | -0.252 | -0.500 |
| predicted_SO | 0.835 | 3.000 | 1.000 | Hitting_SO | 0.807 | 2.000 | 2.193 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.8350 -> 3.0000 (boost 2.1650, worse) |
| Biggest Deboost | predicted_H: 0.6600 -> 0.0000 (deboost -0.6600, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 6 | 2 | 5 | 3 | predicted_AB: 3.5060 -> 4.7447 (boost 1.2387, better) | predicted_SLG: 0.3390 -> 0.3214 (deboost -0.0176, 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.3214 -> 0.2738 (deboost -0.0476, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_AB: 4.7447 -> 5.0000 (boost 0.2553, better) | predicted_BB: 0.3996 -> 0.0000 (deboost -0.3996, worse) | AB rounded to 5 (raw=4.74), rates preserved: AVG=0.206 HR/AB=0.007 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4411 -> 0.0000 (deboost -0.4411, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.2738 -> 0.2000 (deboost -0.0738, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 1 | 2 | 0 | 3 | predicted_SO: 1.0000 -> 3.0000 (boost 2.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.2738 (boost 0.0738, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669707",
"player_name": "Jared Triolo",
"position": "SS",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.506,
"predicted_AVG": 0.249,
"predicted_BB": 0.224,
"predicted_H": 0.66,
"predicted_HR": 0.05,
"predicted_OBP": 0.312,
"predicted_R": 0.212,
"predicted_RBI": 0.26,
"predicted_SLG": 0.339,
"predicted_SO": 0.835
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2152,
"predicted_3B": 0.0009,
"predicted_AB": 4.7447,
"predicted_AVG": 0.2416,
"predicted_BB": 0.4025,
"predicted_H": 1.012,
"predicted_HBP": 0.064,
"predicted_HR": 0.0368,
"predicted_OBP": 0.31,
"predicted_R": 0.4692,
"predicted_RBI": 0.2821,
"predicted_SLG": 0.3214,
"predicted_SO": 1.144
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.106,
"after": 0.2152,
"delta": 0.1092,
"percent_delta": 1.0302,
"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.506,
"after": 4.7447,
"delta": 1.2387,
"percent_delta": 0.3533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2416,
"delta": -0.0074,
"percent_delta": -0.0297,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.224,
"after": 0.4025,
"delta": 0.1785,
"percent_delta": 0.7969,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 1.012,
"delta": 0.352,
"percent_delta": 0.5333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0368,
"delta": -0.0132,
"percent_delta": -0.264,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.31,
"delta": -0.002,
"percent_delta": -0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.212,
"after": 0.4692,
"delta": 0.2572,
"percent_delta": 1.2132,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.2821,
"delta": 0.0221,
"percent_delta": 0.085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3214,
"delta": -0.0176,
"percent_delta": -0.0519,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.835,
"after": 1.144,
"delta": 0.309,
"percent_delta": 0.3701,
"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.506,
"after": 4.7447,
"delta": 1.2387,
"percent_delta": 0.3533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.3214,
"delta": -0.0176,
"percent_delta": -0.0519,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 33
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2152,
"predicted_3B": 0.0009,
"predicted_AB": 4.7447,
"predicted_AVG": 0.2058,
"predicted_BB": 0.3996,
"predicted_H": 0.9763,
"predicted_HBP": 0.064,
"predicted_HR": 0.0353,
"predicted_OBP": 0.2675,
"predicted_R": 0.4411,
"predicted_RBI": 0.2652,
"predicted_SLG": 0.2738,
"predicted_SO": 1.1522
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2152,
"after": 0.2152,
"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.7447,
"after": 4.7447,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2416,
"after": 0.2058,
"delta": -0.0358,
"percent_delta": -0.1482,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4025,
"after": 0.3996,
"delta": -0.0029,
"percent_delta": -0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.012,
"after": 0.9763,
"delta": -0.0357,
"percent_delta": -0.0353,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.064,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0368,
"after": 0.0353,
"delta": -0.0015,
"percent_delta": -0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.31,
"after": 0.2675,
"delta": -0.0425,
"percent_delta": -0.1371,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4692,
"after": 0.4411,
"delta": -0.0281,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2821,
"after": 0.2652,
"delta": -0.0169,
"percent_delta": -0.0599,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3214,
"after": 0.2738,
"delta": -0.0476,
"percent_delta": -0.1481,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.144,
"after": 1.1522,
"delta": 0.0082,
"percent_delta": 0.0072,
"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.3214,
"after": 0.2738,
"delta": -0.0476,
"percent_delta": -0.1481,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.74), rates preserved: AVG=0.206 HR/AB=0.007",
"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.2152,
"after": 0.0,
"delta": -0.2152,
"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.7447,
"after": 5.0,
"delta": 0.2553,
"percent_delta": 0.0538,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3996,
"after": 0.0,
"delta": -0.3996,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9763,
"after": 1.0,
"delta": 0.0237,
"percent_delta": 0.0243,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.064,
"after": 0.0,
"delta": -0.064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0353,
"after": 0.0,
"delta": -0.0353,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2652,
"after": 0.0,
"delta": -0.2652,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1522,
"after": 1.0,
"delta": -0.1522,
"percent_delta": -0.1321,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.7447,
"after": 5.0,
"delta": 0.2553,
"percent_delta": 0.0538,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3996,
"after": 0.0,
"delta": -0.3996,
"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.4411,
"after": 0.0,
"delta": -0.4411,
"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.4411,
"after": 0.0,
"delta": -0.4411,
"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.2058,
"after": 0.2,
"delta": -0.0058,
"percent_delta": -0.0282,
"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.2675,
"after": 0.2,
"delta": -0.0675,
"percent_delta": -0.2523,
"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.2738,
"after": 0.2,
"delta": -0.0738,
"percent_delta": -0.2695,
"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.2738,
"after": 0.2,
"delta": -0.0738,
"percent_delta": -0.2695,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.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.2058,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2675,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2738,
"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.2,
"after": 0.2058,
"delta": 0.0058,
"percent_delta": 0.0288,
"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.2675,
"delta": 0.0675,
"percent_delta": 0.3373,
"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.2738,
"delta": 0.0738,
"percent_delta": 0.3691,
"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.2,
"after": 0.2738,
"delta": 0.0738,
"percent_delta": 0.3691,
"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.506,
"after": 4.0,
"delta": 0.494,
"percent_delta": 0.1409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2058,
"delta": -0.0432,
"percent_delta": -0.1735,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.224,
"after": 0.0,
"delta": -0.224,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.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.2675,
"delta": -0.0445,
"percent_delta": -0.1426,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.212,
"after": 0.0,
"delta": -0.212,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.26,
"after": 0.0,
"delta": -0.26,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.339,
"after": 0.2738,
"delta": -0.0652,
"percent_delta": -0.1923,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.835,
"after": 3.0,
"delta": 2.165,
"percent_delta": 2.5928,
"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.835,
"after": 3.0,
"delta": 2.165,
"percent_delta": 2.5928,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.106 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.506 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.224 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.212 | - |
| predicted_RBI | 0.260 | - |
| predicted_SLG | 0.339 | - |
| predicted_SO | 0.835 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.215 | 0.109 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.745 | 1.239 |
| predicted_AVG | 0.242 | -0.007 |
| predicted_BB | 0.403 | 0.179 |
| predicted_H | 1.012 | 0.352 |
| predicted_HBP | 0.064 | - |
| predicted_HR | 0.037 | -0.013 |
| predicted_OBP | 0.310 | -0.002 |
| predicted_R | 0.469 | 0.257 |
| predicted_RBI | 0.282 | 0.022 |
| predicted_SLG | 0.321 | -0.018 |
| predicted_SO | 1.144 | 0.309 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.215 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.745 | 0.000 |
| predicted_AVG | 0.206 | -0.036 |
| predicted_BB | 0.400 | -0.003 |
| predicted_H | 0.976 | -0.036 |
| predicted_HBP | 0.064 | 0.000 |
| predicted_HR | 0.035 | -0.002 |
| predicted_OBP | 0.268 | -0.042 |
| predicted_R | 0.441 | -0.028 |
| predicted_RBI | 0.265 | -0.017 |
| predicted_SLG | 0.274 | -0.048 |
| predicted_SO | 1.152 | 0.008 |
AB rounded to 5 (raw=4.74), rates preserved: AVG=0.206 HR/AB=0.007
| 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.215 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 5.000 | 0.255 |
| predicted_AVG | 0.200 | -0.006 |
| predicted_BB | 0.000 | -0.400 |
| predicted_H | 1.000 | 0.024 |
| predicted_HR | 0.000 | -0.035 |
| predicted_OBP | 0.200 | -0.068 |
| predicted_R | 0.000 | -0.441 |
| predicted_RBI | 0.000 | -0.265 |
| predicted_SLG | 0.200 | -0.074 |
| predicted_SO | 1.000 | -0.152 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 2.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 4.000 | 2.000 | 0.000 | 0.000 | 0.000 | 4.000 | 2.000 | 3.000 | 0.2667 | 0.3529 | 0.4000 | 0.2667 | 0.0000 | 0.0000 | 0.1333 | 0.2000 |
| last_10 | 0.20 | 10 | - | 32.000 | 7.000 | 2.000 | 0.000 | 0.000 | 3.000 | 6.000 | 6.000 | 10.000 | 0.2188 | 0.3421 | 0.2812 | 0.2188 | 0.0000 | 0.0938 | 0.1875 | 0.3125 |
| season | 0.60 | 33 | - | 298.000 | 66.000 | 9.000 | 0.000 | 0.000 | 11.000 | 18.000 | 19.000 | 71.000 | 0.2215 | 0.2795 | 0.2517 | 0.2215 | 0.0000 | 0.0369 | 0.0638 | 0.2383 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3630 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.4200 |
| predicted_AVG | 0.2317 |
| predicted_BB | 0.6440 |
| predicted_H | 1.4880 |
| predicted_HBP | 0.0640 |
| predicted_HR | 0.0190 |
| predicted_OBP | 0.3073 |
| predicted_R | 0.8170 |
| predicted_RBI | 0.3120 |
| predicted_SLG | 0.2976 |
| predicted_SO | 1.5620 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1060 | 0.3630 | 0.2152 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.5060 | 6.4200 | 4.7447 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2317 | 0.2416 | model_form_blend |
| predicted_BB | 0.2240 | 0.6440 | 0.4025 | model_form_blend |
| predicted_H | 0.6600 | 1.4880 | 1.0120 | model_form_blend |
| predicted_HBP | - | 0.0640 | 0.0640 | form_only |
| predicted_HR | 0.0500 | 0.0190 | 0.0368 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3073 | 0.3100 | model_form_blend |
| predicted_R | 0.2120 | 0.8170 | 0.4692 | model_form_blend |
| predicted_RBI | 0.2600 | 0.3120 | 0.2821 | model_form_blend |
| predicted_SLG | 0.3390 | 0.2976 | 0.3214 | model_form_blend |
| predicted_SO | 0.8350 | 1.5620 | 1.1440 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 85 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.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 | 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 | 2 |
| 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 | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 669707 |
| playerID | 669707 |
| playerName | Jared Triolo |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.8 |
| sl_bb_percent | 7.7 |
| sl_woba | 0.261 |
| sl_xwoba | 0.273 |
| sl_xba | 0.237 |
| sl_xslg | 0.295 |
| sl_sweet_spot_percent | 31.2 |
| sl_barrel_batted_rate | 1.3 |
| sl_hard_hit_percent | 33.8 |
| sl_exit_velocity_avg | 87.0 |
| sl_launch_angle_avg | 7.2 |
| sl_whiff_percent | 25.1 |
| sl_swing_percent | 42.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 1.769 | 3.000 | 1.231 | 0.000 |
| predicted_ER | 5.000 | 5.000 | 5.000 | Pitching_ER | 3.000 | 6.000 | 2.000 | -1.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 5.154 | 7.000 | -1.154 | -3.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 5.508 | 4.200 | -0.408 | 0.900 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 4.231 | 4.000 | 0.769 | 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": "656605",
"player_name": "Mitch Keller",
"position": "Starter",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement 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": 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": 3.0,
"predicted_ER": 5.0,
"predicted_H": 4.0,
"predicted_HR": 1.0,
"predicted_IP": 5.1,
"predicted_R": 5.0,
"predicted_SO": 5.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 5.0,
"after": 5.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": 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": 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 | 3.000 | - |
| predicted_ER | 5.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 | 26.000 | 24.000 | 32.000 | 9.000 | 20.000 | 3.000 | 8.3077 | 1.5769 | 0.9231 | 1.2308 | 0.3462 | 0.7692 | 0.1154 |
| last_10 | 0.35 | 10 | 55.000 | 37.000 | 55.000 | 18.000 | 44.000 | 5.000 | 6.0545 | 1.3273 | 0.6727 | 1.0000 | 0.3273 | 0.8000 | 0.0909 |
| season | 0.20 | 13 | 73.000 | 39.000 | 67.000 | 23.000 | 55.000 | 5.000 | 4.8082 | 1.2329 | 0.5343 | 0.9178 | 0.3151 | 0.7534 | 0.0685 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8410 |
| predicted_ER | 3.6710 |
| predicted_ERA | 6.1400 |
| predicted_H | 5.6610 |
| predicted_HR | 0.5890 |
| predicted_IP | 5.1000 |
| predicted_SO | 4.4180 |
| predicted_WHIP | 1.3941 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 1.8410 | 2.3827 | model_form_blend |
| predicted_ER | 5.0000 | 3.6710 | 4.2921 | model_form_blend |
| predicted_ERA | - | 6.1400 | 6.1400 | form_only |
| predicted_H | 4.0000 | 5.6610 | 4.8847 | model_form_blend |
| predicted_HR | 1.0000 | 0.5890 | 0.7811 | model_form_blend |
| predicted_IP | 5.1000 | 5.1000 | 5.1000 | model_form_blend |
| predicted_SO | 5.0000 | 4.4180 | 4.6900 | model_form_blend |
| predicted_WHIP | - | 1.3941 | 1.3941 | 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 | 4 |
| R | 5 |
| ER | 5 |
| BB | 3 |
| SO | 5 |
| HR | 1 |
| BF | 24 |
| 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 | 3 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 25 |
| Pitching_ER | 6 |
| Pitching_ERA | 4.81 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 5 |
| Pitching_H | 7 |
| Pitching_HBP | 1 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.2 |
| Pitching_Pitches | 99 |
| Pitching_R | 6 |
| Pitching_SO | 4 |
| Pitching_Strikes | 64 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_PIT@ATL |
| game_type | full |
| mlbID | 656605 |
| playerID | 656605 |
| playerName | Mitch Keller |
| pos | P |
| started | True |
| startingPosition | P |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-05 |
| sl_k_percent | 18.0 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.301 |
| sl_xwoba | 0.333 |
| sl_sweet_spot_percent | 37.7 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 39.0 |
| sl_whiff_percent | 20.9 |
| sl_swing_percent | 48.2 |
| sl_avg_best_speed | 76.298431909 |
| sl_avg_hyper_speed | 94.015473682 |
| 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.552 | 2.000 | 0.448 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.517 | 0.000 | -0.517 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.931 | 1.000 | 0.069 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.859 | 1.100 | 0.141 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.759 | 1.000 | -0.759 | -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": "642701",
"player_name": "Dennis Santana",
"position": "Middle Reliever",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 2.000 | 4.000 | 5.000 | 6.000 | 0.000 | 3.8571 | 1.9286 | 0.4286 | 0.8571 | 1.0714 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 6.000 | 9.000 | 7.000 | 12.000 | 1.000 | 5.5862 | 1.6552 | 0.6207 | 0.9310 | 0.7241 | 1.2414 | 0.1035 |
| season | 0.20 | 28 | 27.000 | 13.000 | 23.000 | 16.000 | 22.000 | 3.000 | 4.3333 | 1.4444 | 0.4815 | 0.8518 | 0.5926 | 0.8148 | 0.1111 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6170 |
| predicted_ER | 0.4970 |
| predicted_ERA | 4.4689 |
| predicted_H | 0.9200 |
| predicted_HR | 0.0980 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0600 |
| predicted_WHIP | 1.5371 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.6170 | 0.8293 | model_form_blend |
| predicted_ER | 0.0000 | 0.4970 | 0.2215 | model_form_blend |
| predicted_ERA | - | 4.4689 | 4.4689 | form_only |
| predicted_H | 1.0000 | 0.9200 | 0.9644 | model_form_blend |
| predicted_HR | 0.0000 | 0.0980 | 0.0437 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0600 | 0.4723 | model_form_blend |
| predicted_WHIP | - | 1.5371 | 1.5371 | 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 | 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 7 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.00 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 31 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260609_LAD@PIT |
| game_type | full |
| mlbID | 642701 |
| playerID | 642701 |
| playerName | Dennis Santana |
| pos | P |
| started | False |
| startingPosition | P |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-09 |
| sl_k_percent | 17.7 |
| sl_bb_percent | 12.9 |
| sl_woba | 0.353 |
| sl_xwoba | 0.349 |
| sl_sweet_spot_percent | 40.5 |
| sl_barrel_batted_rate | 9.5 |
| sl_hard_hit_percent | 38.1 |
| sl_whiff_percent | 24.7 |
| sl_swing_percent | 48.6 |
| sl_avg_best_speed | 77.79220119 |
| sl_avg_hyper_speed | 93.64055631 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.417 | 0.000 | -0.417 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.833 | 0.000 | -0.833 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.967 | 0.100 | 0.033 | 0.900 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.458 | 1.000 | -0.458 | 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": "681895",
"player_name": "Evan Sisk",
"position": "Middle Reliever",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.100 | 0.000 | 3.000 | 2.000 | 8.000 | 0.000 | 0.0000 | 0.9375 | 0.0000 | 0.5625 | 0.3750 | 1.5000 | 0.0000 |
| last_10 | 0.35 | 10 | 11.000 | 1.000 | 7.000 | 6.000 | 14.000 | 1.000 | 0.8182 | 1.1818 | 0.0909 | 0.6364 | 0.5454 | 1.2727 | 0.0909 |
| season | 0.20 | 24 | 28.100 | 4.000 | 20.000 | 10.000 | 35.000 | 1.000 | 1.2706 | 1.0588 | 0.1412 | 0.7059 | 0.3529 | 1.2353 | 0.0353 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4140 |
| predicted_ER | 0.2700 |
| predicted_ERA | 2.3493 |
| predicted_H | 0.8060 |
| predicted_HR | 0.0900 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2050 |
| predicted_WHIP | 1.1782 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4140 | 0.1866 | model_form_blend |
| predicted_ER | 0.0000 | 0.2700 | 0.1217 | model_form_blend |
| predicted_ERA | - | 2.3493 | 2.3493 | form_only |
| predicted_H | 0.0000 | 0.8060 | 0.3632 | model_form_blend |
| predicted_HR | 0.0000 | 0.0900 | 0.0406 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.2050 | 1.0924 | model_form_blend |
| predicted_WHIP | - | 1.1782 | 1.1782 | 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 | 0 |
| SO | 1 |
| HR | 0 |
| BF | 3 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 1 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.27 |
| Pitching_Flyouts | 0 |
| 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 | 8 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 5 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 681895 |
| playerID | 681895 |
| playerName | Evan Sisk |
| pos | P |
| started | False |
| startingPosition | P |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 31.3 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.272 |
| sl_xwoba | 0.242 |
| sl_sweet_spot_percent | 28.1 |
| sl_barrel_batted_rate | 3.1 |
| sl_hard_hit_percent | 31.3 |
| sl_whiff_percent | 27.5 |
| sl_swing_percent | 42.2 |
| sl_avg_best_speed | 74.963974375 |
| sl_avg_hyper_speed | 92.687484921 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.367 | 2.000 | -0.367 | -2.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.500 | 2.000 | 0.500 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.923 | 1.000 | 0.077 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.133 | 0.000 | -0.133 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "642397",
"player_name": "Gregory Soto",
"position": "Middle Reliever",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 2.000 | 2.000 | 1.000 | 4.000 | 1.000 | 3.6000 | 0.6000 | 0.4000 | 0.4000 | 0.2000 | 0.8000 | 0.2000 |
| last_10 | 0.35 | 10 | 10.100 | 5.000 | 6.000 | 4.000 | 9.000 | 1.000 | 4.3548 | 0.9677 | 0.4839 | 0.5806 | 0.3871 | 0.8710 | 0.0968 |
| season | 0.20 | 29 | 29.100 | 8.000 | 12.000 | 11.000 | 34.000 | 2.000 | 2.4545 | 0.7841 | 0.2727 | 0.4091 | 0.3750 | 1.1591 | 0.0682 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3300 |
| predicted_ER | 0.4420 |
| predicted_ERA | 3.9775 |
| predicted_H | 0.6940 |
| predicted_HR | 0.1390 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9150 |
| predicted_WHIP | 1.0246 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3300 | 0.1499 | model_form_blend |
| predicted_ER | 0.0000 | 0.4420 | 0.2008 | model_form_blend |
| predicted_ERA | - | 3.9775 | 3.9775 | form_only |
| predicted_H | 1.0000 | 0.6940 | 0.8610 | model_form_blend |
| predicted_HR | 0.0000 | 0.1390 | 0.0631 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.9150 | 0.9614 | model_form_blend |
| predicted_WHIP | - | 1.0246 | 1.0246 | 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 | 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.38 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 8 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 642397 |
| playerID | 642397 |
| playerName | Gregory Soto |
| pos | P |
| started | False |
| startingPosition | P |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 29.3 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.237 |
| sl_xwoba | 0.265 |
| sl_sweet_spot_percent | 26.5 |
| sl_barrel_batted_rate | 5.9 |
| sl_hard_hit_percent | 36.8 |
| sl_whiff_percent | 26.7 |
| sl_swing_percent | 42.6 |
| sl_avg_best_speed | 72.899219091 |
| sl_avg_hyper_speed | 93.176994697 |
| 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.769 | 3.000 | -0.769 | -2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.154 | 4.000 | -1.154 | -3.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 5.000 | 3.000 | -3.000 | -1.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 4.623 | 3.200 | -4.423 | -3.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 4.000 | 3.000 | -3.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_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": "669387",
"player_name": "Carmen Mlodzinski",
"position": "Middle Reliever",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement 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": 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": 1.0,
"predicted_ER": 1.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 0.2,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.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 | 22.200 | 8.000 | 20.000 | 10.000 | 11.000 | 3.000 | 3.1765 | 1.3235 | 0.3529 | 0.8823 | 0.4412 | 0.4853 | 0.1323 |
| last_10 | 0.35 | 10 | 48.100 | 24.000 | 48.000 | 17.000 | 37.000 | 5.000 | 4.4690 | 1.3448 | 0.4965 | 0.9931 | 0.3517 | 0.7655 | 0.1035 |
| season | 0.20 | 13 | 62.200 | 28.000 | 65.000 | 23.000 | 52.000 | 5.000 | 4.0213 | 1.4043 | 0.4468 | 1.0372 | 0.3670 | 0.8298 | 0.0798 |
| Metric | Value |
|---|---|
| predicted_BB | 1.3750 |
| predicted_ER | 1.5640 |
| predicted_ERA | 3.9580 |
| predicted_H | 3.3930 |
| predicted_HR | 0.4260 |
| predicted_IP | 3.2000 |
| predicted_SO | 2.5990 |
| predicted_WHIP | 1.3409 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 1.3750 | 1.1997 | model_form_blend |
| predicted_ER | 1.0000 | 1.5640 | 1.3004 | model_form_blend |
| predicted_ERA | - | 3.9580 | 3.9580 | form_only |
| predicted_H | 2.0000 | 3.3930 | 2.7420 | model_form_blend |
| predicted_HR | 1.0000 | 0.4260 | 0.6943 | model_form_blend |
| predicted_IP | 0.2000 | 3.2000 | 2.1000 | model_form_blend |
| predicted_SO | 1.0000 | 2.5990 | 1.8517 | model_form_blend |
| predicted_WHIP | - | 1.3409 | 1.3409 | 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 | 0.2 |
| H | 2 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 1 |
| HR | 1 |
| BF | 5 |
| Pitches | 11 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 17 |
| Pitching_ER | 4 |
| Pitching_ERA | 4.02 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 2 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 3.2 |
| Pitching_Pitches | 76 |
| Pitching_R | 4 |
| Pitching_SO | 3 |
| Pitching_Strikes | 44 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260610_LAD@PIT |
| game_type | full |
| mlbID | 669387 |
| playerID | 669387 |
| playerName | Carmen Mlodzinski |
| pos | P |
| started | False |
| startingPosition | P |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-10 |
| sl_k_percent | 19.3 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.326 |
| sl_xwoba | 0.348 |
| sl_sweet_spot_percent | 35.9 |
| sl_barrel_batted_rate | 7.8 |
| sl_hard_hit_percent | 50.5 |
| sl_whiff_percent | 21.3 |
| sl_swing_percent | 44.0 |
| sl_avg_best_speed | 81.99656375 |
| sl_avg_hyper_speed | 95.44649 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.538 | 2.000 | -0.538 | -2.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.500 | 0.000 | -0.500 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.846 | 1.000 | 1.154 | 1.000 |
| predicted_IP | 0.000 | 0.000 | 0.000 | Pitching_InningsPitched | 0.808 | 1.000 | -0.808 | -1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.308 | 2.000 | -1.308 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.1000 -> 0.0000 (deboost -0.1000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "682254",
"player_name": "Mason Montgomery",
"position": "Middle Reliever",
"team": "PIT",
"interpretation": "Boost/deboost is numeric movement 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": 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.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.100 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 5.000 | 5.000 | 6.000 | 6.000 | 0.000 | 9.0000 | 2.2000 | 1.0000 | 1.0000 | 1.2000 | 1.2000 | 0.0000 |
| last_10 | 0.35 | 10 | 11.200 | 6.000 | 8.000 | 6.000 | 12.000 | 1.000 | 4.6286 | 1.2000 | 0.5143 | 0.6857 | 0.5143 | 1.0286 | 0.0857 |
| season | 0.20 | 25 | 25.200 | 11.000 | 20.000 | 14.000 | 34.000 | 2.000 | 3.8571 | 1.3247 | 0.4286 | 0.7792 | 0.5454 | 1.3247 | 0.0779 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4360 |
| predicted_ER | 0.4380 |
| predicted_ERA | 5.4151 |
| predicted_H | 0.6570 |
| predicted_HR | 0.0680 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.7650 |
| predicted_WHIP | 1.5011 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4360 | 0.1919 | model_form_blend |
| predicted_ER | 0.0000 | 0.4380 | 0.1928 | model_form_blend |
| predicted_ERA | - | 5.4151 | 5.4151 | form_only |
| predicted_H | 2.0000 | 0.6570 | 1.4088 | model_form_blend |
| predicted_HR | 0.0000 | 0.0680 | 0.0299 | model_form_blend |
| predicted_IP | 0.1000 | 0.2000 | 0.1000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7650 | 0.3368 | model_form_blend |
| predicted_WHIP | - | 1.5011 | 1.5011 | 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 | 0.0 |
| H | 2 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 2 |
| 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 | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.56 |
| 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 | 25 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260607_PIT@ATL |
| game_type | full |
| mlbID | 682254 |
| playerID | 682254 |
| playerName | Mason Montgomery |
| pos | P |
| started | True |
| startingPosition | P |
| team | PIT |
| teamID | 22 |
| game_date | 2026-06-07 |
| sl_k_percent | 30.4 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.312 |
| sl_xwoba | 0.311 |
| sl_sweet_spot_percent | 26.6 |
| sl_barrel_batted_rate | 9.4 |
| sl_hard_hit_percent | 45.3 |
| sl_whiff_percent | 29.9 |
| sl_swing_percent | 49.6 |
| sl_avg_best_speed | 74.6878225 |
| sl_avg_hyper_speed | 95.159215 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | MIN 5 - 3 DET | MIN | 0.572 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | MIN 4 - 3 DET | MIN | - | advisory_box_score_draw | False |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 9.7000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5718 |
| 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.799 | 3.862 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 3 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 5 | 3 | 0.5718 | 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 | 4 | 3 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.46081292639138244,
"base_low_score_probability": 0.41831238779174146,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.04250053859964098,
"confidence": 0.6508,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.0,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.1016000000000001
},
"prediction": "normal_scoring",
"expected_total_runs": 8,
"pre_simulation_expected_total_runs": 9.7,
"low_score_model_expected_total_runs": 9.7,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 95,
"near_bucket_sample_size": 28,
"medium_bucket_sample_size": 95,
"wide_bucket_sample_size": 174,
"global_sample_size": 174,
"bucket_scope": "pooled_0.08",
"sparse_bucket": false,
"empirical_hit_rate": 0.5579,
"bayesian_hit_rate": 0.5487,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8407,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6265,
"calibrated_pick_probability": 0.5718,
"predicted_side": "away"
}{
"applied": false,
"home": {
"team": "DET",
"games": 68,
"wins": 28,
"losses": 40,
"win_pct": 0.4117647058823529,
"runs_scored": 274,
"runs_allowed": 294,
"run_differential": -20,
"run_differential_per_game": -0.29411764705882354,
"available": true
},
"away": {
"team": "MIN",
"games": 69,
"wins": 31,
"losses": 38,
"win_pct": 0.4492753623188406,
"runs_scored": 318,
"runs_allowed": 348,
"run_differential": -30,
"run_differential_per_game": -0.43478260869565216,
"available": true
},
"run_differential_edge_per_game": 0.1407,
"win_pct_edge": -0.0375,
"quality_edge": 0.0844,
"margin_adjustment": 0.0,
"reason": "season quality edge below action threshold"
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "MIN",
"guardrail_predicted_team": "MIN",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "MIN",
"output_opponent_team": "DET",
"final_score_winner": "MIN",
"pre_simulation_winner": "MIN",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 5,
"home_runs": 3,
"score_text": "MIN 5 - 3 DET",
"winner": "MIN"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "MIN 4 - 3 DET",
"winner": "MIN"
},
"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": "DET",
"games": 68,
"wins": 28,
"losses": 40,
"win_pct": 0.4117647058823529,
"runs_scored": 274,
"runs_allowed": 294,
"run_differential": -20,
"run_differential_per_game": -0.29411764705882354,
"available": true
},
"away": {
"team": "MIN",
"games": 69,
"wins": 31,
"losses": 38,
"win_pct": 0.4492753623188406,
"runs_scored": 318,
"runs_allowed": 348,
"run_differential": -30,
"run_differential_per_game": -0.43478260869565216,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.4446,
"final_margin": -1.4446,
"margin_cap": 1.5,
"season_quality_edge": 0.0844,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.571838,
"final_confidence": 0.571838,
"confidence_cap": 0.66,
"score_gap": 1.4446,
"calibration_sample_size": 95,
"calibration_empirical_hit_rate": 0.5579,
"calibration_bayesian_hit_rate": 0.5487,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.0844,
"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": "MIN 5 - 3 DET",
"winner": "MIN"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "MIN 4 - 3 DET",
"winner": "MIN"
},
"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": 5,
"home_runs": 3,
"confidence": 0.5718380000000001,
"home_win_probability": 0.42816199999999993,
"away_win_probability": 0.5718380000000001,
"predicted_score_text": "MIN 5 - 3 DET",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "MIN",
"original_runs": 5,
"run_delta": 0.149,
"adjusted_runs": 5,
"lineup": {
"players_used": 9,
"total_weight": 52.0,
"quality": -0.0274566643631786,
"contact": -0.16620564125464643,
"power": 0.09179411586739278,
"discipline": -0.14911770241354702,
"xwoba": 0.3130769230769231,
"recent_xwoba": 0.3130769230769231,
"barrel": 9.505769230769232,
"ab_hard_contact": -0.041348451882924714,
"ab_bat_speed": 69.97697213051855,
"ab_strikeout_rate": 0.23714218670118917,
"available_players": 9,
"top_players": [
{
"player_id": "621439",
"player_name": "Byron Buxton",
"position": "CF",
"weight": 8.0,
"quality": 0.5399412798922699,
"contact": 0.2563794599782296,
"power": 1.4693797127574906,
"discipline": -0.5724929344638191,
"xwoba": 0.339,
"recent_xwoba": 0.339,
"barrel": 18.5,
"ab_hard_contact": 0.4098799694355107,
"ab_bat_speed": 72.5943463356974,
"ab_strikeout_rate": 0.26063829787234044,
"available": 1.0
},
{
"player_id": "686797",
"player_name": "Brooks Lee",
"position": "3B",
"weight": 6.0,
"quality": -0.593510644146042,
"contact": -0.715489212972047,
"power": -0.677857560677371,
"discipline": -0.0005817428185850293,
"xwoba": 0.275,
"recent_xwoba": 0.275,
"barrel": 5.2,
"ab_hard_contact": -0.46838930878552937,
"ab_bat_speed": 68.15155555555556,
"ab_strikeout_rate": 0.1830128205128205,
"available": 1.0
},
{
"player_id": "665019",
"player_name": "Kody Clemens",
"position": "1B",
"weight": 6.0,
"quality": 0.42500993202130183,
"contact": 0.5338828619598035,
"power": 1.0218751855278307,
"discipline": -0.3593430086845021,
"xwoba": 0.336,
"recent_xwoba": 0.336,
"barrel": 13.8,
"ab_hard_contact": 0.8070275200804231,
"ab_bat_speed": 68.88689750290361,
"ab_strikeout_rate": 0.2534883720930233,
"available": 1.0
},
{
"player_id": "668885",
"player_name": "Austin Martin",
"position": "RF",
"weight": 6.0,
"quality": -0.358518924665094,
"contact": -0.34634486132369585,
"power": -1.0007849439132808,
"discipline": 0.7885219867851445,
"xwoba": 0.312,
"recent_xwoba": 0.312,
"barrel": 2.6,
"ab_hard_contact": -0.3974131639799151,
"ab_bat_speed": 65.9339172979798,
"ab_strikeout_rate": 0.1659090909090909,
"available": 1.0
},
{
"player_id": "663616",
"player_name": "Trevor Larnach",
"position": "LF",
"weight": 5.0,
"quality": -0.28300502312375875,
"contact": -0.4008597778451821,
"power": -0.6738440794987511,
"discipline": 0.5439647594596246,
"xwoba": 0.318,
"recent_xwoba": 0.318,
"barrel": 5.6,
"ab_hard_contact": -0.6345958756893235,
"ab_bat_speed": 69.1452445799458,
"ab_strikeout_rate": 0.20325203252032523,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "672456",
"player_name": "Keider Montero",
"quality": -0.1640299557890591,
"contact": 0.13287417190055556,
"command": -0.6795240390353172,
"movement": -0.14901358768656492,
"xwoba": 0.307,
"whiff": 16.7,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "DET",
"original_runs": 3,
"run_delta": 0.1817,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 52.0,
"quality": 0.2511052157591043,
"contact": 0.06445632861965482,
"power": 0.20445930565571954,
"discipline": 0.24491385855016318,
"xwoba": 0.32707692307692304,
"recent_xwoba": 0.32707692307692304,
"barrel": 9.534615384615384,
"ab_hard_contact": 0.2425377614660271,
"ab_bat_speed": 70.06124018232094,
"ab_strikeout_rate": 0.2320515598034129,
"available_players": 9,
"top_players": [
{
"player_id": "693307",
"player_name": "Dillon Dingler",
"position": "DH",
"weight": 6.0,
"quality": 1.2480840968203861,
"contact": 1.5449115071975223,
"power": 1.6026078520989928,
"discipline": 0.14739819787564132,
"xwoba": 0.403,
"recent_xwoba": 0.403,
"barrel": 13.4,
"ab_hard_contact": 0.8544427562655623,
"ab_bat_speed": 70.76914492225461,
"ab_strikeout_rate": 0.22267573696145126,
"available": 1.0
},
{
"player_id": "682985",
"player_name": "Riley Greene",
"position": "LF",
"weight": 6.0,
"quality": 0.7713010009030049,
"contact": 0.8291924920312824,
"power": 1.0749969350562547,
"discipline": 0.07771679197994974,
"xwoba": 0.365,
"recent_xwoba": 0.365,
"barrel": 13.1,
"ab_hard_contact": 0.69765298683937,
"ab_bat_speed": 73.88058946608946,
"ab_strikeout_rate": 0.275,
"available": 1.0
},
{
"player_id": "656716",
"player_name": "Zach McKinstry",
"position": "CF",
"weight": 5.0,
"quality": -0.49280909859724464,
"contact": -1.2814767913832195,
"power": -1.4092972472933145,
"discipline": 0.7732257205513785,
"xwoba": 0.258,
"recent_xwoba": 0.258,
"barrel": 2.9,
"ab_hard_contact": -0.7162306601520172,
"ab_bat_speed": 67.8376129032258,
"ab_strikeout_rate": 0.1765625,
"available": 1.0
},
{
"player_id": "805808",
"player_name": "Kevin McGonigle",
"position": "SS",
"weight": 7.0,
"quality": 0.6868922177399315,
"contact": 0.8568578911845403,
"power": 0.36158611015877,
"discipline": 1.3747173909616806,
"xwoba": 0.373,
"recent_xwoba": 0.373,
"barrel": 8.8,
"ab_hard_contact": 0.4404841079372914,
"ab_bat_speed": 70.23888689228312,
"ab_strikeout_rate": 0.13228511530398324,
"available": 1.0
},
{
"player_id": "679529",
"player_name": "Spencer Torkelson",
"position": "1B",
"weight": 6.0,
"quality": 0.12878194784002825,
"contact": -0.21391689593568847,
"power": 0.6182239155590342,
"discipline": -0.21152483059500618,
"xwoba": 0.317,
"recent_xwoba": 0.317,
"barrel": 13.5,
"ab_hard_contact": 0.39628783499019077,
"ab_bat_speed": 71.87393518518519,
"ab_strikeout_rate": 0.33209876543209876,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "805673",
"player_name": "Zebby Matthews",
"quality": 0.01455312529626719,
"contact": 0.14843628205079387,
"command": -0.12880975332103142,
"movement": 0.02870696728669746,
"xwoba": 0.298,
"whiff": 23.8,
"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": "MIN 5 - 3 DET",
"confidence": 0.5718380000000001,
"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": "MIN 5 - 3 DET",
"winner": "MIN"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "MIN 4 - 3 DET",
"winner": "MIN"
},
"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 MIN | True | 1.0082 | 1.0082 | 1 | 9 | 0 |
| Home DET | True | 1.0297 | 1.0297 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Kody Clemens | 112 | 1.0411 | 0.5482 | neutral | 0.3360 | 0.2510 | 0.4510 | 13.80 | 44.50 | 92.60 | 16.70 | 25.40 | 22.50 | 6.60 | -0.4000 |
| LF | Trevor Larnach | 181 | 0.9934 | -0.0882 | neutral | 0.3180 | 0.2380 | 0.3480 | 5.60 | 29.60 | 86.40 | 12.20 | 27.40 | 20.20 | 13.50 | -0.6286 |
| CF | Byron Buxton | 40 | 1.0574 | 0.7652 | negative_batter_regression | 0.3390 | 0.2380 | 0.4950 | 18.50 | 46.40 | 90.40 | 22.20 | 31.40 | 26.40 | 7.40 | -1.1429 |
| DH | Josh Bell | 502 | 1.0166 | 0.2218 | neutral | 0.3030 | 0.2330 | 0.4070 | 9.90 | 41.40 | 89.60 | 13.60 | 25.80 | 23.90 | 6.80 | 0.4286 |
| 3B | Brooks Lee | 203 | 0.9534 | -0.6220 | negative_batter_regression | 0.2750 | 0.2230 | 0.3380 | 5.20 | 30.20 | 87.50 | 12.50 | 22.20 | 17.50 | 7 | -1.1714 |
| 2B | Royce Lewis | 381 | 0.9954 | -0.0612 | neutral | 0.2910 | 0.2060 | 0.3370 | 11 | 39 | 87.90 | 15.30 | 35.70 | 27.90 | 10.30 | 0.6857 |
| C | Victor Caratini | 400 | 1.0276 | 0.3678 | positive_batter_regression | 0.3320 | 0.2460 | 0.3820 | 6.50 | 39 | 88.60 | 11.90 | 21.20 | 20.10 | 8.70 | 1.6000 |
| SS | Tristan Gray | 389 | 1.0056 | 0.0743 | neutral | 0.3040 | 0.2490 | 0.3860 | 7.70 | 41.80 | 89.70 | 14.80 | 35.10 | 30.40 | 5.60 | -0.0286 |
| RF | Austin Martin | 120 | 0.9832 | -0.2243 | neutral | 0.3120 | 0.2400 | 0.3250 | 2.60 | 27.80 | 86.50 | 11.30 | 20.10 | 17.50 | 12.60 | -0.2571 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RF | Kerry Carpenter | 336 | 0.9912 | -0.1171 | negative_batter_regression | 0.2900 | 0.1980 | 0.3720 | 11 | 45.80 | 91 | 22.20 | 32.10 | 32.90 | 8.20 | -1.6286 |
| SS | Kevin McGonigle | 4 | 1.0761 | 1.0150 | neutral | 0.3730 | 0.2750 | 0.4590 | 8.80 | 37.60 | 88 | 21.50 | 14.50 | 13.20 | 14.60 | 0.2286 |
| 2B | Gleyber Torres | 60 | 1.0067 | 0.0898 | neutral | 0.3360 | 0.2530 | 0.3730 | 6.10 | 29.60 | 84.80 | 7.20 | 21.50 | 18.20 | 15.30 | -0.4857 |
| LF | Riley Greene | 65 | 1.0838 | 1.1170 | neutral | 0.3650 | 0.2630 | 0.4660 | 13.10 | 51.20 | 91.30 | 16 | 30 | 27.70 | 12.60 | -0.3143 |
| 3B | Colt Keith | 462 | 1.0068 | 0.0912 | neutral | 0.3010 | 0.2580 | 0.3840 | 5.60 | 41.30 | 88.50 | 13.10 | 22.70 | 20.90 | 5.60 | 0.5714 |
| DH | Dillon Dingler | 23 | 1.1257 | 1.6755 | positive_batter_regression | 0.4030 | 0.2940 | 0.5700 | 13.40 | 52 | 90.90 | 17 | 20.90 | 20.20 | 8.70 | 1.0286 |
| 1B | Spencer Torkelson | 527 | 1.0335 | 0.4467 | neutral | 0.3170 | 0.2110 | 0.4000 | 13.50 | 44.40 | 90.40 | 20.30 | 29.90 | 32 | 11.60 | 0.0286 |
| CF | Zach McKinstry | 541 | 0.9636 | -0.4854 | neutral | 0.2580 | 0.1960 | 0.2730 | 2.90 | 23.10 | 85 | 14.20 | 15.70 | 18.20 | 11.50 | 0.5143 |
| C | Jake Rogers | 377 | 0.9802 | -0.2636 | neutral | 0.2580 | 0.1810 | 0.3270 | 10.80 | 35.10 | 86.70 | 32 | 29.70 | 31.70 | 7.90 | 0.4857 |
{
"home": {
"applied": true,
"offense_factor": 1.0297,
"raw_average_factor": 1.0297,
"team_espn_average_rank": 266.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "RF",
"player_id": "681481",
"player_name": "Kerry Carpenter",
"offense_factor": 0.9912,
"quality_score": -0.1171,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "681481",
"espn_id": 42714,
"player_name": "Kerry Carpenter",
"team": "DET",
"role": "batter",
"espn_rank": 336,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 336,
"gp_value": 45.0,
"gp_rank": 247,
"ab_value": 128.0,
"ab_rank": 252,
"r_value": 14.0,
"r_rank": 264,
"h_value": 30.0,
"h_rank": 249,
"avg_value": 0.234375,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 337,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 26.0,
"rbi_rank": 127,
"tb_value": 64.0,
"tb_rank": 816,
"bb_value": 12.0,
"bb_rank": 233,
"so_value": 48.0,
"so_rank": 125,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3082191,
"obp_rank": "-",
"slg_value": 0.5,
"slg_rank": "-",
"ops_value": 0.8082191,
"ops_rank": null,
"war_value": 0.01,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 116.0,
"k_percent": 32.9,
"bb_percent": 8.2,
"woba": 0.347,
"xwoba": 0.29,
"xba": 0.198,
"xslg": 0.372,
"sweet_spot_percent": 36.1,
"barrel_batted_rate": 11.0,
"hard_hit_percent": 45.8,
"exit_velocity_avg": 91.0,
"launch_angle_avg": 22.2,
"whiff_percent": 32.1,
"swing_percent": 49.3
},
"components": {
"expected_quality": 0.0068,
"regression_edge": -1.6286,
"xwoba_edge": -0.4,
"xba_edge": -1.1429,
"xslg_edge": -0.0286,
"barrel_edge": 0.9111,
"hard_hit_edge": 1.0429,
"exit_velocity_edge": 0.88,
"sweet_spot_edge": 0.4667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "SS",
"player_id": "805808",
"player_name": "Kevin McGonigle",
"offense_factor": 1.0761,
"quality_score": 1.015,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805808",
"espn_id": 5149072,
"player_name": "Kevin McGonigle",
"team": "DET",
"role": "batter",
"espn_rank": 4,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 4,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 243.0,
"ab_rank": 53,
"r_value": 43.0,
"r_rank": 18,
"h_value": 69.0,
"h_rank": 28,
"avg_value": 0.2839506,
"avg_rank": 24.0,
"2b_value": 14.0,
"2b_rank": 31,
"3b_value": 3.0,
"3b_rank": 5,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 24.0,
"rbi_rank": 151,
"tb_value": 101.0,
"tb_rank": 639,
"bb_value": 42.0,
"bb_rank": 13,
"so_value": 38.0,
"so_rank": 191,
"sb_value": 9.0,
"sb_rank": 41,
"obp_value": 0.3937282,
"obp_rank": "7",
"slg_value": 0.4156378,
"slg_rank": "85",
"ops_value": 0.809366,
"ops_rank": 92.0,
"war_value": 3.42,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 237.0,
"k_percent": 13.2,
"bb_percent": 14.6,
"woba": 0.365,
"xwoba": 0.373,
"xba": 0.275,
"xslg": 0.459,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 37.6,
"exit_velocity_avg": 88.0,
"launch_angle_avg": 21.5,
"whiff_percent": 14.5,
"swing_percent": 41.7
},
"components": {
"expected_quality": 1.143,
"regression_edge": 0.2286,
"xwoba_edge": 1.9714,
"xba_edge": 1.0571,
"xslg_edge": 1.2143,
"barrel_edge": 0.4222,
"hard_hit_edge": -0.1286,
"exit_velocity_edge": -0.32,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "650402",
"player_name": "Gleyber Torres",
"offense_factor": 1.0067,
"quality_score": 0.0898,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "650402",
"espn_id": 33804,
"player_name": "Gleyber Torres",
"team": "DET",
"role": "batter",
"espn_rank": 60,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 60,
"gp_value": 39.0,
"gp_rank": 291,
"ab_value": 145.0,
"ab_rank": 227,
"r_value": 24.0,
"r_rank": 157,
"h_value": 41.0,
"h_rank": 181,
"avg_value": 0.2827586,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 55.0,
"tb_rank": 1462,
"bb_value": 27.0,
"bb_rank": 63,
"so_value": 32.0,
"so_rank": 235,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3977272,
"obp_rank": "-",
"slg_value": 0.3793103,
"slg_rank": "-",
"ops_value": 0.7770375,
"ops_rank": null,
"war_value": 1.69,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 144.0,
"k_percent": 18.2,
"bb_percent": 15.3,
"woba": 0.353,
"xwoba": 0.336,
"xba": 0.253,
"xslg": 0.373,
"sweet_spot_percent": 37.4,
"barrel_batted_rate": 6.1,
"hard_hit_percent": 29.6,
"exit_velocity_avg": 84.8,
"launch_angle_avg": 7.2,
"whiff_percent": 21.5,
"swing_percent": 39.0
},
"components": {
"expected_quality": 0.2387,
"regression_edge": -0.4857,
"xwoba_edge": 0.9143,
"xba_edge": 0.4286,
"xslg_edge": -0.0143,
"barrel_edge": -0.1778,
"hard_hit_edge": -1.2714,
"exit_velocity_edge": -1.6,
"sweet_spot_edge": 0.6833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "682985",
"player_name": "Riley Greene",
"offense_factor": 1.0838,
"quality_score": 1.117,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682985",
"espn_id": 42179,
"player_name": "Riley Greene",
"team": "DET",
"role": "batter",
"espn_rank": 65,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 65,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 246.0,
"ab_rank": 44,
"r_value": 35.0,
"r_rank": 58,
"h_value": 74.0,
"h_rank": 12,
"avg_value": 0.300813,
"avg_rank": 14.0,
"2b_value": 16.0,
"2b_rank": 14,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 111.0,
"tb_rank": 686,
"bb_value": 36.0,
"bb_rank": 25,
"so_value": 79.0,
"so_rank": 16,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3929824,
"obp_rank": "8",
"slg_value": 0.4512195,
"slg_rank": "57",
"ops_value": 0.8442019,
"ops_rank": 65.0,
"war_value": 1.64,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 232.0,
"k_percent": 27.7,
"bb_percent": 12.6,
"woba": 0.376,
"xwoba": 0.365,
"xba": 0.263,
"xslg": 0.466,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 13.1,
"hard_hit_percent": 51.2,
"exit_velocity_avg": 91.3,
"launch_angle_avg": 16.0,
"whiff_percent": 30.0,
"swing_percent": 45.4
},
"components": {
"expected_quality": 1.35,
"regression_edge": -0.3143,
"xwoba_edge": 1.7429,
"xba_edge": 0.7143,
"xslg_edge": 1.3143,
"barrel_edge": 1.3778,
"hard_hit_edge": 1.8143,
"exit_velocity_edge": 1.0,
"sweet_spot_edge": 0.9,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "690993",
"player_name": "Colt Keith",
"offense_factor": 1.0068,
"quality_score": 0.0912,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "690993",
"espn_id": 4683384,
"player_name": "Colt Keith",
"team": "DET",
"role": "batter",
"espn_rank": 462,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 462,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 183.0,
"ab_rank": 164,
"r_value": 22.0,
"r_rank": 179,
"h_value": 47.0,
"h_rank": 143,
"avg_value": 0.2568306,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 7.0,
"rbi_rank": 352,
"tb_value": 59.0,
"tb_rank": 1618,
"bb_value": 11.0,
"bb_rank": 252,
"so_value": 41.0,
"so_rank": 164,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3010204,
"obp_rank": "-",
"slg_value": 0.3224043,
"slg_rank": "-",
"ops_value": 0.6234247,
"ops_rank": null,
"war_value": -0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 160.0,
"k_percent": 20.9,
"bb_percent": 5.6,
"woba": 0.281,
"xwoba": 0.301,
"xba": 0.258,
"xslg": 0.384,
"sweet_spot_percent": 35.7,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 41.3,
"exit_velocity_avg": 88.5,
"launch_angle_avg": 13.1,
"whiff_percent": 22.7,
"swing_percent": 43.1
},
"components": {
"expected_quality": 0.0528,
"regression_edge": 0.5714,
"xwoba_edge": -0.0857,
"xba_edge": 0.5714,
"xslg_edge": 0.1429,
"barrel_edge": -0.2889,
"hard_hit_edge": 0.4,
"exit_velocity_edge": -0.12,
"sweet_spot_edge": 0.4,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "693307",
"player_name": "Dillon Dingler",
"offense_factor": 1.1257,
"quality_score": 1.6755,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "693307",
"espn_id": 4345620,
"player_name": "Dillon Dingler",
"team": "DET",
"role": "batter",
"espn_rank": 23,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 23,
"gp_value": 61.0,
"gp_rank": 136,
"ab_value": 223.0,
"ab_rank": 107,
"r_value": 32.0,
"r_rank": 75,
"h_value": 55.0,
"h_rank": 98,
"avg_value": 0.2466367,
"avg_rank": 92.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 16.0,
"hr_rank": 12,
"rbi_value": 49.0,
"rbi_rank": 5,
"tb_value": 116.0,
"tb_rank": 543,
"bb_value": 22.0,
"bb_rank": 105,
"so_value": 51.0,
"so_rank": 106,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3266932,
"obp_rank": "93",
"slg_value": 0.5201793,
"slg_rank": "19",
"ops_value": 0.8468725,
"ops_rank": 112.0,
"war_value": 2.48,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 203.0,
"k_percent": 20.2,
"bb_percent": 8.7,
"woba": 0.367,
"xwoba": 0.403,
"xba": 0.294,
"xslg": 0.57,
"sweet_spot_percent": 41.6,
"barrel_batted_rate": 13.4,
"hard_hit_percent": 52.0,
"exit_velocity_avg": 90.9,
"launch_angle_avg": 17.0,
"whiff_percent": 20.9,
"swing_percent": 47.3
},
"components": {
"expected_quality": 1.944,
"regression_edge": 1.0286,
"xwoba_edge": 2.5,
"xba_edge": 1.6,
"xslg_edge": 2.5,
"barrel_edge": 1.4444,
"hard_hit_edge": 1.9286,
"exit_velocity_edge": 0.84,
"sweet_spot_edge": 1.3833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "679529",
"player_name": "Spencer Torkelson",
"offense_factor": 1.0335,
"quality_score": 0.4467,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "679529",
"espn_id": 4424286,
"player_name": "Spencer Torkelson",
"team": "DET",
"role": "batter",
"espn_rank": 527,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 527,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 223.0,
"ab_rank": 107,
"r_value": 23.0,
"r_rank": 165,
"h_value": 47.0,
"h_rank": 143,
"avg_value": 0.2107623,
"avg_rank": 148.0,
"2b_value": 14.0,
"2b_rank": 31,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 25.0,
"rbi_rank": 138,
"tb_value": 88.0,
"tb_rank": 744,
"bb_value": 30.0,
"bb_rank": 45,
"so_value": 83.0,
"so_rank": 11,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3127413,
"obp_rank": "114",
"slg_value": 0.3946188,
"slg_rank": "109",
"ops_value": 0.7073601,
"ops_rank": 223.0,
"war_value": -0.57,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 32.0,
"bb_percent": 11.6,
"woba": 0.316,
"xwoba": 0.317,
"xba": 0.211,
"xslg": 0.4,
"sweet_spot_percent": 45.8,
"barrel_batted_rate": 13.5,
"hard_hit_percent": 44.4,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 20.3,
"whiff_percent": 29.9,
"swing_percent": 42.2
},
"components": {
"expected_quality": 0.5318,
"regression_edge": 0.0286,
"xwoba_edge": 0.3714,
"xba_edge": -0.7714,
"xslg_edge": 0.3714,
"barrel_edge": 1.4667,
"hard_hit_edge": 0.8429,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": 2.0833,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "CF",
"player_id": "656716",
"player_name": "Zach McKinstry",
"offense_factor": 0.9636,
"quality_score": -0.4854,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656716",
"espn_id": 38420,
"player_name": "Zach McKinstry",
"team": "DET",
"role": "batter",
"espn_rank": 541,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 541,
"gp_value": 44.0,
"gp_rank": 253,
"ab_value": 127.0,
"ab_rank": 254,
"r_value": 7.0,
"r_rank": 372,
"h_value": 23.0,
"h_rank": 297,
"avg_value": 0.1811023,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 337,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 9.0,
"rbi_rank": 317,
"tb_value": 31.0,
"tb_rank": 1794,
"bb_value": 17.0,
"bb_rank": 171,
"so_value": 27.0,
"so_rank": 281,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2739726,
"obp_rank": "-",
"slg_value": 0.2440944,
"slg_rank": "-",
"ops_value": 0.518067,
"ops_rank": null,
"war_value": -0.76,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 111.0,
"k_percent": 18.2,
"bb_percent": 11.5,
"woba": 0.24,
"xwoba": 0.258,
"xba": 0.196,
"xslg": 0.273,
"sweet_spot_percent": 27.9,
"barrel_batted_rate": 2.9,
"hard_hit_percent": 23.1,
"exit_velocity_avg": 85.0,
"launch_angle_avg": 14.2,
"whiff_percent": 15.7,
"swing_percent": 49.0
},
"components": {
"expected_quality": -1.2024,
"regression_edge": 0.5143,
"xwoba_edge": -1.3143,
"xba_edge": -1.2,
"xslg_edge": -1.4429,
"barrel_edge": -0.8889,
"hard_hit_edge": -2.2,
"exit_velocity_edge": -1.52,
"sweet_spot_edge": -0.9,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "668670",
"player_name": "Jake Rogers",
"offense_factor": 0.9802,
"quality_score": -0.2636,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668670",
"espn_id": 39900,
"player_name": "Jake Rogers",
"team": "DET",
"role": "batter",
"espn_rank": 377,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 377,
"gp_value": 19.0,
"gp_rank": 400,
"ab_value": 54.0,
"ab_rank": 392,
"r_value": 5.0,
"r_rank": 402,
"h_value": 9.0,
"h_rank": 409,
"avg_value": 0.1666666,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 374,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 5.0,
"rbi_rank": 390,
"tb_value": 16.0,
"tb_rank": 1943,
"bb_value": 5.0,
"bb_rank": 364,
"so_value": 20.0,
"so_rank": 335,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2419354,
"obp_rank": "-",
"slg_value": 0.2962962,
"slg_rank": "-",
"ops_value": 0.5382316,
"ops_rank": null,
"war_value": -0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 53.0,
"k_percent": 31.7,
"bb_percent": 7.9,
"woba": 0.241,
"xwoba": 0.258,
"xba": 0.181,
"xslg": 0.327,
"sweet_spot_percent": 32.4,
"barrel_batted_rate": 10.8,
"hard_hit_percent": 35.1,
"exit_velocity_avg": 86.7,
"launch_angle_avg": 32.0,
"whiff_percent": 29.7,
"swing_percent": 43.9
},
"components": {
"expected_quality": -0.7603,
"regression_edge": 0.4857,
"xwoba_edge": -1.3143,
"xba_edge": -1.6286,
"xslg_edge": -0.6714,
"barrel_edge": 0.8667,
"hard_hit_edge": -0.4857,
"exit_velocity_edge": -0.84,
"sweet_spot_edge": -0.15,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0082,
"raw_average_factor": 1.0082,
"team_espn_average_rank": 258.67,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "1B",
"player_id": "665019",
"player_name": "Kody Clemens",
"offense_factor": 1.0411,
"quality_score": 0.5482,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665019",
"espn_id": 41311,
"player_name": "Kody Clemens",
"team": "MIN",
"role": "batter",
"espn_rank": 112,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 112,
"gp_value": 56.0,
"gp_rank": 173,
"ab_value": 192.0,
"ab_rank": 145,
"r_value": 27.0,
"r_rank": 122,
"h_value": 48.0,
"h_rank": 137,
"avg_value": 0.25,
"avg_rank": 84.0,
"2b_value": 14.0,
"2b_rank": 31,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 21.0,
"rbi_rank": 178,
"tb_value": 93.0,
"tb_rank": 398,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 48.0,
"so_rank": 125,
"sb_value": 6.0,
"sb_rank": 70,
"obp_value": 0.3175355,
"obp_rank": "111",
"slg_value": 0.484375,
"slg_rank": "35",
"ops_value": 0.8019105,
"ops_rank": 146.0,
"war_value": 1.11,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 163.0,
"k_percent": 22.5,
"bb_percent": 6.6,
"woba": 0.35,
"xwoba": 0.336,
"xba": 0.251,
"xslg": 0.451,
"sweet_spot_percent": 36.3,
"barrel_batted_rate": 13.8,
"hard_hit_percent": 44.5,
"exit_velocity_avg": 92.6,
"launch_angle_avg": 16.7,
"whiff_percent": 25.4,
"swing_percent": 48.4
},
"components": {
"expected_quality": 0.9255,
"regression_edge": -0.4,
"xwoba_edge": 0.9143,
"xba_edge": 0.3714,
"xslg_edge": 1.1,
"barrel_edge": 1.5333,
"hard_hit_edge": 0.8571,
"exit_velocity_edge": 1.52,
"sweet_spot_edge": 0.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "663616",
"player_name": "Trevor Larnach",
"offense_factor": 0.9934,
"quality_score": -0.0882,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663616",
"espn_id": 41205,
"player_name": "Trevor Larnach",
"team": "MIN",
"role": "batter",
"espn_rank": 181,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 181,
"gp_value": 55.0,
"gp_rank": 181,
"ab_value": 164.0,
"ab_rank": 199,
"r_value": 29.0,
"r_rank": 104,
"h_value": 42.0,
"h_rank": 174,
"avg_value": 0.2560975,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 63.0,
"tb_rank": 1074,
"bb_value": 26.0,
"bb_rank": 67,
"so_value": 39.0,
"so_rank": 179,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3678756,
"obp_rank": "-",
"slg_value": 0.3841463,
"slg_rank": "-",
"ops_value": 0.7520219,
"ops_rank": null,
"war_value": 0.58,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 152.0,
"k_percent": 20.2,
"bb_percent": 13.5,
"woba": 0.34,
"xwoba": 0.318,
"xba": 0.238,
"xslg": 0.348,
"sweet_spot_percent": 37.6,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 29.6,
"exit_velocity_avg": 86.4,
"launch_angle_avg": 12.2,
"whiff_percent": 27.4,
"swing_percent": 41.5
},
"components": {
"expected_quality": -0.0461,
"regression_edge": -0.6286,
"xwoba_edge": 0.4,
"xba_edge": 0.0,
"xslg_edge": -0.3714,
"barrel_edge": -0.2889,
"hard_hit_edge": -1.2714,
"exit_velocity_edge": -0.96,
"sweet_spot_edge": 0.7167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "621439",
"player_name": "Byron Buxton",
"offense_factor": 1.0574,
"quality_score": 0.7652,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "621439",
"espn_id": 32655,
"player_name": "Byron Buxton",
"team": "MIN",
"role": "batter",
"espn_rank": 40,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 40,
"gp_value": 57.0,
"gp_rank": 166,
"ab_value": 235.0,
"ab_rank": 82,
"r_value": 43.0,
"r_rank": 18,
"h_value": 61.0,
"h_rank": 68,
"avg_value": 0.2595744,
"avg_rank": 71.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 20.0,
"hr_rank": 3,
"rbi_value": 32.0,
"rbi_rank": 73,
"tb_value": 133.0,
"tb_rank": 308,
"bb_value": 19.0,
"bb_rank": 144,
"so_value": 68.0,
"so_rank": 34,
"sb_value": 6.0,
"sb_rank": 70,
"obp_value": 0.3217054,
"obp_rank": "104",
"slg_value": 0.5659574,
"slg_rank": "4",
"ops_value": 0.8876628,
"ops_rank": 108.0,
"war_value": 2.12,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 215.0,
"k_percent": 26.4,
"bb_percent": 7.4,
"woba": 0.379,
"xwoba": 0.339,
"xba": 0.238,
"xslg": 0.495,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 18.5,
"hard_hit_percent": 46.4,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 22.2,
"whiff_percent": 31.4,
"swing_percent": 53.7
},
"components": {
"expected_quality": 1.0965,
"regression_edge": -1.1429,
"xwoba_edge": 1.0,
"xba_edge": 0.0,
"xslg_edge": 1.7286,
"barrel_edge": 2.5,
"hard_hit_edge": 1.1286,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "DH",
"player_id": "605137",
"player_name": "Josh Bell",
"offense_factor": 1.0166,
"quality_score": 0.2218,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "605137",
"espn_id": 32517,
"player_name": "Josh Bell",
"team": "MIN",
"role": "batter",
"espn_rank": 502,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 502,
"gp_value": 66.0,
"gp_rank": 45,
"ab_value": 242.0,
"ab_rank": 55,
"r_value": 32.0,
"r_rank": 75,
"h_value": 55.0,
"h_rank": 98,
"avg_value": 0.2272727,
"avg_rank": 131.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 38.0,
"rbi_rank": 34,
"tb_value": 88.0,
"tb_rank": 843,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 63.0,
"so_rank": 52,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2840909,
"obp_rank": "146",
"slg_value": 0.3636363,
"slg_rank": "128",
"ops_value": 0.6477272,
"ops_rank": 18.0,
"war_value": -0.43,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 213.0,
"k_percent": 23.9,
"bb_percent": 6.8,
"woba": 0.288,
"xwoba": 0.303,
"xba": 0.233,
"xslg": 0.407,
"sweet_spot_percent": 33.7,
"barrel_batted_rate": 9.9,
"hard_hit_percent": 41.4,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 13.6,
"whiff_percent": 25.8,
"swing_percent": 51.5
},
"components": {
"expected_quality": 0.1966,
"regression_edge": 0.4286,
"xwoba_edge": -0.0286,
"xba_edge": -0.1429,
"xslg_edge": 0.4714,
"barrel_edge": 0.6667,
"hard_hit_edge": 0.4143,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.0667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "686797",
"player_name": "Brooks Lee",
"offense_factor": 0.9534,
"quality_score": -0.622,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "686797",
"espn_id": 4629081,
"player_name": "Brooks Lee",
"team": "MIN",
"role": "batter",
"espn_rank": 203,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 203,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 235.0,
"ab_rank": 82,
"r_value": 29.0,
"r_rank": 104,
"h_value": 57.0,
"h_rank": 87,
"avg_value": 0.2425531,
"avg_rank": 101.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 10.0,
"hr_rank": 54,
"rbi_value": 38.0,
"rbi_rank": 34,
"tb_value": 98.0,
"tb_rank": 509,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 45.0,
"so_rank": 140,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3007812,
"obp_rank": "128",
"slg_value": 0.4170212,
"slg_rank": "84",
"ops_value": 0.7178024,
"ops_rank": 212.0,
"war_value": 0.48,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 207.0,
"k_percent": 17.5,
"bb_percent": 7.0,
"woba": 0.316,
"xwoba": 0.275,
"xba": 0.223,
"xslg": 0.338,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 5.2,
"hard_hit_percent": 30.2,
"exit_velocity_avg": 87.5,
"launch_angle_avg": 12.5,
"whiff_percent": 22.2,
"swing_percent": 51.8
},
"components": {
"expected_quality": -0.578,
"regression_edge": -1.1714,
"xwoba_edge": -0.8286,
"xba_edge": -0.4286,
"xslg_edge": -0.5143,
"barrel_edge": -0.3778,
"hard_hit_edge": -1.1857,
"exit_velocity_edge": -0.52,
"sweet_spot_edge": 0.1,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "668904",
"player_name": "Royce Lewis",
"offense_factor": 0.9954,
"quality_score": -0.0612,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668904",
"espn_id": 40635,
"player_name": "Royce Lewis",
"team": "MIN",
"role": "batter",
"espn_rank": 381,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 381,
"gp_value": 35.0,
"gp_rank": 318,
"ab_value": 119.0,
"ab_rank": 269,
"r_value": 12.0,
"r_rank": 298,
"h_value": 21.0,
"h_rank": 315,
"avg_value": 0.1764705,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 14.0,
"rbi_rank": 256,
"tb_value": 37.0,
"tb_rank": 1531,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 38.0,
"so_rank": 191,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.2720588,
"obp_rank": "-",
"slg_value": 0.3109243,
"slg_rank": "-",
"ops_value": 0.5829831,
"ops_rank": null,
"war_value": -0.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 119.0,
"k_percent": 27.9,
"bb_percent": 10.3,
"woba": 0.267,
"xwoba": 0.291,
"xba": 0.206,
"xslg": 0.337,
"sweet_spot_percent": 31.7,
"barrel_batted_rate": 11.0,
"hard_hit_percent": 39.0,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 15.3,
"whiff_percent": 35.7,
"swing_percent": 48.6
},
"components": {
"expected_quality": -0.2432,
"regression_edge": 0.6857,
"xwoba_edge": -0.3714,
"xba_edge": -0.9143,
"xslg_edge": -0.5286,
"barrel_edge": 0.9111,
"hard_hit_edge": 0.0714,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": -0.2667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "605170",
"player_name": "Victor Caratini",
"offense_factor": 1.0276,
"quality_score": 0.3678,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "605170",
"espn_id": 33229,
"player_name": "Victor Caratini",
"team": "MIN",
"role": "batter",
"espn_rank": 400,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 400,
"gp_value": 49.0,
"gp_rank": 220,
"ab_value": 153.0,
"ab_rank": 216,
"r_value": 10.0,
"r_rank": 324,
"h_value": 32.0,
"h_rank": 236,
"avg_value": 0.2091503,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 23.0,
"rbi_rank": 157,
"tb_value": 45.0,
"tb_rank": 1551,
"bb_value": 16.0,
"bb_rank": 181,
"so_value": 37.0,
"so_rank": 198,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3043478,
"obp_rank": "-",
"slg_value": 0.2941176,
"slg_rank": "-",
"ops_value": 0.5984654,
"ops_rank": null,
"war_value": -0.12,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 148.0,
"k_percent": 20.1,
"bb_percent": 8.7,
"woba": 0.276,
"xwoba": 0.332,
"xba": 0.246,
"xslg": 0.382,
"sweet_spot_percent": 39.8,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 39.0,
"exit_velocity_avg": 88.6,
"launch_angle_avg": 11.9,
"whiff_percent": 21.2,
"swing_percent": 42.4
},
"components": {
"expected_quality": 0.3753,
"regression_edge": 1.6,
"xwoba_edge": 0.8,
"xba_edge": 0.2286,
"xslg_edge": 0.1143,
"barrel_edge": -0.0889,
"hard_hit_edge": 0.0714,
"exit_velocity_edge": -0.08,
"sweet_spot_edge": 1.0833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "SS",
"player_id": "656484",
"player_name": "Tristan Gray",
"offense_factor": 1.0056,
"quality_score": 0.0743,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656484",
"espn_id": 39918,
"player_name": "Tristan Gray",
"team": "MIN",
"role": "batter",
"espn_rank": 389,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 389,
"gp_value": 41.0,
"gp_rank": 274,
"ab_value": 113.0,
"ab_rank": 280,
"r_value": 13.0,
"r_rank": 285,
"h_value": 29.0,
"h_rank": 256,
"avg_value": 0.2566371,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 26.0,
"rbi_rank": 127,
"tb_value": 45.0,
"tb_rank": 1472,
"bb_value": 7.0,
"bb_rank": 320,
"so_value": 38.0,
"so_rank": 191,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.298387,
"obp_rank": "-",
"slg_value": 0.39823,
"slg_rank": "-",
"ops_value": 0.696617,
"ops_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 90.0,
"k_percent": 30.4,
"bb_percent": 5.6,
"woba": 0.305,
"xwoba": 0.304,
"xba": 0.249,
"xslg": 0.386,
"sweet_spot_percent": 44.3,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 41.8,
"exit_velocity_avg": 89.7,
"launch_angle_avg": 14.8,
"whiff_percent": 35.1,
"swing_percent": 56.3
},
"components": {
"expected_quality": 0.1965,
"regression_edge": -0.0286,
"xwoba_edge": 0.0,
"xba_edge": 0.3143,
"xslg_edge": 0.1714,
"barrel_edge": 0.1778,
"hard_hit_edge": 0.4714,
"exit_velocity_edge": 0.36,
"sweet_spot_edge": 1.8333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "668885",
"player_name": "Austin Martin",
"offense_factor": 0.9832,
"quality_score": -0.2243,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668885",
"espn_id": 4297998,
"player_name": "Austin Martin",
"team": "MIN",
"role": "batter",
"espn_rank": 120,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 120,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 189.0,
"ab_rank": 154,
"r_value": 26.0,
"r_rank": 136,
"h_value": 47.0,
"h_rank": 143,
"avg_value": 0.2486772,
"avg_rank": 85.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 63.0,
"tb_rank": 1452,
"bb_value": 28.0,
"bb_rank": 58,
"so_value": 39.0,
"so_rank": 179,
"sb_value": 8.0,
"sb_rank": 50,
"obp_value": 0.3587443,
"obp_rank": "42",
"slg_value": 0.3333333,
"slg_rank": "146",
"ops_value": 0.6920776,
"ops_rank": 104.0,
"war_value": 1.04,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 173.0,
"k_percent": 17.5,
"bb_percent": 12.6,
"woba": 0.321,
"xwoba": 0.312,
"xba": 0.24,
"xslg": 0.325,
"sweet_spot_percent": 32.5,
"barrel_batted_rate": 2.6,
"hard_hit_percent": 27.8,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 11.3,
"whiff_percent": 20.1,
"swing_percent": 39.4
},
"components": {
"expected_quality": -0.2899,
"regression_edge": -0.2571,
"xwoba_edge": 0.2286,
"xba_edge": 0.0571,
"xslg_edge": -0.7,
"barrel_edge": -0.9556,
"hard_hit_edge": -1.5286,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": -0.1333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"reason": "Baseball Savant hitter xwOBA, xBA, xSLG, exit velocity, launch angle, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted offense; ESPN rank is attached for reporting only"
}Source: data/all_players_stats.csv embedded Savant pitcher and movement features. Starter quality modifies opposing run scoring and pitcher strikeout/walk/homer expectations.
| Team | Pitcher | Available | ESPN Rank | Quality | Sample Wt | Run Prev | K Factor | BB Factor | HR Factor | Regression | xwOBA | wOBA | K% | BB% | Whiff% | Barrel% | HardHit% |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away MIN | True | 163 | 0.0148 | 0.4500 | 0.9987 | 0.9918 | 0.9784 | 1.0278 | neutral | 0.2980 | 0.3050 | 21.30 | 6.60 | 23.80 | 11.60 | 38.40 | |
| Home DET | True | 42 | -0.1937 | 0.8800 | 1.0165 | 0.9251 | 0.9490 | 1.0420 | neutral | 0.3070 | 0.2850 | 16.70 | 6.10 | 16.70 | 9.50 | 41.10 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away MIN | True | None | 90 | 89.38 | 2261 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0185 | |
| Home DET | True | None | 78 | 89.67 | 2353 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0026 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0145 |
| home_runs_vs_away_pitcher | 0.9994 |
| home_pitcher_quality_edge | -0.2085 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "672456",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 220.0,
"k_percent": 16.7,
"bb_percent": 6.1,
"woba": 0.285,
"xwoba": 0.307,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 9.5,
"hard_hit_percent": 41.1,
"avg_best_speed": 80.732,
"avg_hyper_speed": 94.1487,
"whiff_percent": 16.7,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.038,
"command_and_miss": -0.6857,
"regression_edge": -0.6286,
"xwoba_edge": 0.2286,
"barrel_edge": -0.4889,
"hard_hit_edge": -0.3857,
"whiff_edge": -1.2714,
"bb_edge": 0.725,
"pitch_design_score": -0.0026
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "672456",
"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": 89.66742418639122,
"release_spin_rate": 2352.76848000055,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.66742418639122,
"release_spin_rate": 2352.76848000055,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6674,
"release_spin_rate": 2352.7685,
"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.0026,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0185,
"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.1937,
"sample_weight": 0.88,
"run_prevention_factor": 1.0165,
"strikeout_factor": 0.9251,
"walk_factor": 0.949,
"homer_factor": 1.042,
"woba_minus_xwoba": -0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672456",
"espn_id": 5182933,
"player_name": "Keider Montero",
"team": "DET",
"role": "pitcher",
"espn_rank": 42,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 42,
"gp_value": 12.0,
"gp_rank": 325,
"gs_value": 12.0,
"gs_rank": 70,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 3.9545,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 66.0,
"ip_rank": 73,
"h_value": 52.0,
"h_rank": 104,
"er_value": 29.0,
"er_rank": 78,
"hr_value": 8.0,
"hr_rank": 67,
"bb_value": 16.0,
"bb_rank": 159,
"k_value": 44.0,
"k_rank": 125,
"k_per_9_value": 6.0,
"k_per_9_rank": 46,
"whip_value": 1.0303,
"whip_rank": null,
"war_value": 1.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "805673",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 73.0,
"k_percent": 21.3,
"bb_percent": 6.6,
"woba": 0.305,
"xwoba": 0.298,
"sweet_spot_percent": 29.1,
"barrel_batted_rate": 11.6,
"hard_hit_percent": 38.4,
"avg_best_speed": 79.8154,
"avg_hyper_speed": 93.9962,
"whiff_percent": 23.8,
"swing_percent": 45.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0536,
"command_and_miss": -0.06,
"regression_edge": 0.2,
"xwoba_edge": 0.4857,
"barrel_edge": -0.9556,
"hard_hit_edge": 0.0,
"whiff_edge": -0.2571,
"bb_edge": 0.6,
"pitch_design_score": -0.0185
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "805673",
"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": 89.38274333698429,
"release_spin_rate": 2261.3620153340635,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.38274333698429,
"release_spin_rate": 2261.3620153340635,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3827,
"release_spin_rate": 2261.362,
"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.0185,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1324,
"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.0148,
"sample_weight": 0.45,
"run_prevention_factor": 0.9987,
"strikeout_factor": 0.9918,
"walk_factor": 0.9784,
"homer_factor": 1.0278,
"woba_minus_xwoba": 0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805673",
"espn_id": 4791597,
"player_name": "Zebby Matthews",
"team": "MIN",
"role": "pitcher",
"espn_rank": 163,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 163,
"gp_value": 5.0,
"gp_rank": 468,
"gs_value": 5.0,
"gs_rank": 160,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 4.1538,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 30.1,
"ip_rank": 210,
"h_value": 25.0,
"h_rank": 246,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 26.0,
"k_rank": 264,
"k_per_9_value": 7.714286,
"k_per_9_rank": 33,
"whip_value": 1.0879,
"whip_rank": null,
"war_value": 0.58,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0145,
"home_runs_vs_away_pitcher": 0.9994,
"home_pitcher_quality_edge": -0.2085
},
"score_before": {
"away_runs": 4.688,
"home_runs": 3.3134
},
"score_after": {
"away_runs": 4.756,
"home_runs": 3.3115,
"home_win_probability": 0.3735
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away MIN | 14-48 | 0.226 | 1.20 | 3.80 | -161 | cold | average | |
| Home DET | 21-40 | 0.344 | 1.30 | 3.20 | -118 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away MIN | 31-38 | 0.449 | -30 | -0.435 | True |
| Home DET | 28-40 | 0.412 | -20 | -0.294 | True |
| Signal | - | - | 0.141 | 0.084 | applied=False |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target MIN | - | - | 5 | - | - | - | - |
| Game target DET | - | - | 3 | - | - | - | - |
| Player finalized MIN | 52 | 10 | 7 | 1 | 7 | 4 | 12 |
| Player finalized DET | 52 | 13 | 6 | 0 | 6 | 7 | 14 |
| Player model fractional MIN | 52.77 | 11.91 | 6.93 | 2.17 | 6.80 | 4.89 | 13.47 |
| Player model fractional DET | 50.40 | 12.23 | 6.63 | 1.87 | 6.90 | 6.70 | 13.75 |
| Simulation box MIN | 36 | 9 | 4 | 1 | 4 | 3 | 8 |
| Simulation box DET | 35 | 8 | 3 | 1 | 3 | 5 | 7 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away MIN | Starter | Zebby Matthews | 6 | 1 | 6 | 4 | 2 | 4.26 | 1.21 | True |
| Away MIN | Middle Reliever | Anthony Banda | 1 | 0 | 1 | 2 | 0 | 2.54 | 1.28 | True |
| Away MIN | Middle Reliever | Travis Adams | 1 | 2 | 0 | 2 | 2 | 6.61 | 1.54 | True |
| Away MIN | Middle Reliever | Yoendrys Gómez | 1 | 0 | 0 | 0 | 1 | 3.21 | 1.30 | True |
| Home DET | Starter | Keider Montero | 5.20 | 1 | 6 | 5 | 2 | 4.55 | 1.17 | True |
| Home DET | Middle Reliever | Kyle Finnegan | 1 | 0 | 1 | 1 | 0 | 3.56 | 1.29 | True |
| Home DET | Middle Reliever | Will Vest | 1 | 0 | 0 | 0 | 0 | 6.01 | 1.47 | True |
| Home DET | Middle Reliever | Tyler Holton | 1.10 | 3 | 1 | 3 | 1 | 3.93 | 1.49 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | MIN | batter | DH | Josh Bell | neutral | 8 | 4 | 4 | 4 | 4 | predicted_H | 2.0700 | boost | better |
| away | MIN | batter | CF | Byron Buxton | better | 11 | 7 | 4 | 8 | 3 | predicted_H | 1.9100 | boost | better |
| home | DET | batter | RF | Kerry Carpenter | worse | 11 | 4 | 7 | 3 | 8 | predicted_SO | 1.7440 | boost | worse |
| away | MIN | batter | RF | Austin Martin | better | 11 | 5 | 6 | 6 | 5 | predicted_RBI | 1.7300 | boost | better |
| home | DET | batter | SS | Kevin McGonigle | better | 12 | 7 | 5 | 8 | 4 | predicted_RBI | 1.5200 | boost | better |
| away | MIN | batter | 1B | Kody Clemens | worse | 11 | 2 | 9 | 1 | 10 | predicted_AB | 1.3540 | boost | better |
| away | MIN | batter | C | Victor Caratini | worse | 10 | 2 | 8 | 1 | 9 | predicted_AB | -1.3500 | deboost | worse |
| away | MIN | batter | 3B | Brooks Lee | worse | 10 | 3 | 7 | 2 | 8 | predicted_SO | 1.2880 | boost | worse |
| away | MIN | batter | 2B | Royce Lewis | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -1.1630 | deboost | better |
| home | DET | batter | LF | Riley Greene | better | 11 | 5 | 6 | 6 | 5 | predicted_AB | 1.0800 | boost | better |
| home | DET | batter | C | Jake Rogers | worse | 12 | 1 | 11 | 2 | 10 | predicted_AB | 1.0700 | boost | better |
| home | DET | batter | DH | Dillon Dingler | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_H | 1.0200 | boost | better |
| home | DET | batter | 2B | Gleyber Torres | better | 11 | 5 | 6 | 6 | 5 | predicted_H | 0.9100 | boost | better |
| away | MIN | batter | SS | Tristan Gray | worse | 11 | 3 | 8 | 4 | 7 | predicted_AB | 0.7810 | boost | better |
| home | DET | batter | 3B | Colt Keith | worse | 11 | 4 | 7 | 5 | 6 | predicted_RBI | 0.7700 | boost | better |
| home | DET | batter | 1B | Spencer Torkelson | worse | 10 | 3 | 7 | 2 | 8 | predicted_H | -0.7700 | deboost | worse |
| home | DET | batter | CF | Zach McKinstry | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -0.6690 | deboost | better |
| away | MIN | batter | LF | Trevor Larnach | worse | 10 | 3 | 7 | 2 | 8 | predicted_R | -0.6300 | deboost | worse |
| home | DET | pitcher | Starter | Keider Montero | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| home | DET | pitcher | Middle Reliever | Tyler Holton | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.4333 | boost | better |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Zebby Matthews |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.0148 |
| ESPN Rank | 163 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0185 |
| Avg Velo | 89.3827 |
| Avg Spin | 2261.3620 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 1 |
| Pre H | 4 |
| Pre BB | 2 |
| Pre SO | 6 |
| Season ERA | 4.1538 |
| Season WHIP | 1.0879 |
| Role Avg IP | 6.0670 |
| Recent Avg IP | 6.0670 |
| Last Start IP | 7 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"opponent": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"edges": {
"quality_edge": -0.0289,
"offense_edge": 0.0507,
"opponent_offense_edge": -0.1036,
"defense_strength": -0.0943,
"opponent_defense_weakness": -0.052,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0002,
"run_prevention": 0.9943,
"strikeout": 1.0074
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "805673",
"profile": {
"available": true,
"pitcher_id": "805673",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 73.0,
"k_percent": 21.3,
"bb_percent": 6.6,
"woba": 0.305,
"xwoba": 0.298,
"sweet_spot_percent": 29.1,
"barrel_batted_rate": 11.6,
"hard_hit_percent": 38.4,
"avg_best_speed": 79.8154,
"avg_hyper_speed": 93.9962,
"whiff_percent": 23.8,
"swing_percent": 45.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0536,
"command_and_miss": -0.06,
"regression_edge": 0.2,
"xwoba_edge": 0.4857,
"barrel_edge": -0.9556,
"hard_hit_edge": 0.0,
"whiff_edge": -0.2571,
"bb_edge": 0.6,
"pitch_design_score": -0.0185
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "805673",
"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": 89.38274333698429,
"release_spin_rate": 2261.3620153340635,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.38274333698429,
"release_spin_rate": 2261.3620153340635,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3827,
"release_spin_rate": 2261.362,
"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.0185,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1324,
"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.0148,
"sample_weight": 0.45,
"run_prevention_factor": 0.9987,
"strikeout_factor": 0.9918,
"walk_factor": 0.9784,
"homer_factor": 1.0278,
"woba_minus_xwoba": 0.007,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805673",
"espn_id": 4791597,
"player_name": "Zebby Matthews",
"team": "MIN",
"role": "pitcher",
"espn_rank": 163,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 163,
"gp_value": 5.0,
"gp_rank": 468,
"gs_value": 5.0,
"gs_rank": 160,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 4.1538,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 30.1,
"ip_rank": 210,
"h_value": 25.0,
"h_rank": 246,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 26.0,
"k_rank": 264,
"k_per_9_value": 7.714286,
"k_per_9_rank": 33,
"whip_value": 1.0879,
"whip_rank": null,
"war_value": 0.58,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 0.9994,
"adjusted": 3
},
"predicted_H": {
"original": 5.0,
"factor": 0.9994,
"adjusted": 5
},
"predicted_BB": {
"original": 2.0,
"factor": 0.9903,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0125,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9963,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 30.1,
"ER": 14,
"H": 25,
"BB": 8,
"SO": 26,
"HR": 5,
"ERA": 4.153846153846154,
"WHIP": 1.087912087912088,
"K9": 7.714285714285714,
"HR9": 1.4835164835164836,
"games_pitched": 5,
"quality_starts": 4,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 5,
"error_prone": false
},
"games_count": 5,
"latest_game_date": "2026-06-05T00:00:00"
}{
"available": true,
"pitcher_id": "805673",
"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": 89.38274333698429,
"release_spin_rate": 2261.3620153340635,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.38274333698429,
"release_spin_rate": 2261.3620153340635,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3827,
"release_spin_rate": 2261.362,
"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.0185,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1324,
"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": 5.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5,
"prior_weight": 0.5
},
"role": "pitcher",
"player_id": "805673",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 5,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 30.1,
"ER": 14.0,
"R": 14.0,
"H": 25.0,
"BB": 8.0,
"SO": 26.0,
"HR": 5.0,
"BF": 122.0,
"Pitches": 471.0
},
"per_game": {
"IP": 6.0,
"ER": 2.8,
"R": 2.8,
"H": 5.0,
"BB": 1.6,
"SO": 5.2,
"HR": 1.0,
"BF": 24.4,
"Pitches": 94.2
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.0879,
"ER_per_IP": 0.46154,
"H_per_IP": 0.82418,
"BB_per_IP": 0.26374,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.16484
}
},
"last_10": {
"games": 5,
"totals": {
"IP": 30.1,
"ER": 14.0,
"R": 14.0,
"H": 25.0,
"BB": 8.0,
"SO": 26.0,
"HR": 5.0,
"BF": 122.0,
"Pitches": 471.0
},
"per_game": {
"IP": 6.0,
"ER": 2.8,
"R": 2.8,
"H": 5.0,
"BB": 1.6,
"SO": 5.2,
"HR": 1.0,
"BF": 24.4,
"Pitches": 94.2
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.0879,
"ER_per_IP": 0.46154,
"H_per_IP": 0.82418,
"BB_per_IP": 0.26374,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.16484
}
},
"season": {
"games": 5,
"totals": {
"IP": 30.1,
"ER": 14.0,
"R": 14.0,
"H": 25.0,
"BB": 8.0,
"SO": 26.0,
"HR": 5.0,
"BF": 122.0,
"Pitches": 471.0
},
"per_game": {
"IP": 6.0,
"ER": 2.8,
"R": 2.8,
"H": 5.0,
"BB": 1.6,
"SO": 5.2,
"HR": 1.0,
"BF": 24.4,
"Pitches": 94.2
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.0879,
"ER_per_IP": 0.46154,
"H_per_IP": 0.82418,
"BB_per_IP": 0.26374,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.16484
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.843,
"predicted_H": 5.352,
"predicted_BB": 1.886,
"predicted_SO": 5.379,
"predicted_HR": 0.917,
"predicted_ERA": 4.2641,
"predicted_WHIP": 1.2064
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5613,
"form_weight": 0.4388,
"form_reliability": 0.5,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5,
"prior_weight": 0.5
},
"applied_metrics": {
"predicted_IP": {
"model": 6.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.843,
"final": 1.8086,
"source": "model_form_blend"
},
"predicted_H": {
"model": 4.0,
"form": 5.352,
"final": 4.5932,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.886,
"final": 1.95,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 5.379,
"final": 5.7275,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.917,
"final": 0.4023,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2641,
"final": 4.2641,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2064,
"final": 1.2064,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Anthony Banda |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0027 |
| ESPN Rank | 473 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0273 |
| Avg Velo | 89.2265 |
| Avg Spin | 2069.3956 |
| 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 | 4.6552 |
| Season WHIP | 1.2414 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"opponent": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"edges": {
"quality_edge": -0.0289,
"offense_edge": 0.0507,
"opponent_offense_edge": -0.1036,
"defense_strength": -0.0943,
"opponent_defense_weakness": -0.052,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0002,
"run_prevention": 0.9943,
"strikeout": 1.0074
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "607455",
"profile": {
"available": true,
"pitcher_id": "607455",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 104.0,
"k_percent": 21.1,
"bb_percent": 10.2,
"woba": 0.317,
"xwoba": 0.311,
"sweet_spot_percent": 26.8,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 39.0,
"avg_best_speed": 81.3645,
"avg_hyper_speed": 94.2566,
"whiff_percent": 26.5,
"swing_percent": 45.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.0173,
"command_and_miss": -0.1179,
"regression_edge": 0.1714,
"xwoba_edge": 0.1143,
"barrel_edge": 0.2444,
"hard_hit_edge": -0.0857,
"whiff_edge": 0.1286,
"bb_edge": -0.3,
"pitch_design_score": -0.0273
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "607455",
"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.22646847858407,
"release_spin_rate": 2069.3955743633032,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.22646847858407,
"release_spin_rate": 2069.3955743633032,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2265,
"release_spin_rate": 2069.3956,
"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.0273,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1949,
"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.0027,
"sample_weight": 0.45,
"run_prevention_factor": 1.0002,
"strikeout_factor": 0.9982,
"walk_factor": 1.0108,
"homer_factor": 0.9912,
"woba_minus_xwoba": 0.006,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "607455",
"espn_id": 34542,
"player_name": "Anthony Banda",
"team": "MIN",
"role": "pitcher",
"espn_rank": 473,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 473,
"gp_value": 32.0,
"gp_rank": 8,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.6551,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 9.0,
"hld_rank": 24,
"ip_value": 29.0,
"ip_rank": 238,
"h_value": 23.0,
"h_rank": 265,
"er_value": 15.0,
"er_rank": 189,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 13.0,
"bb_rank": 206,
"k_value": 27.0,
"k_rank": 255,
"k_per_9_value": 8.37931,
"k_per_9_rank": 28,
"whip_value": 1.2413,
"whip_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0001,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0001,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0049,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.996,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9992,
"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": 0,
"H": 4,
"BB": 5,
"SO": 9,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.9310344827586208,
"K9": 8.379310344827587,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "607455",
"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.22646847858407,
"release_spin_rate": 2069.3955743633032,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.22646847858407,
"release_spin_rate": 2069.3955743633032,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2265,
"release_spin_rate": 2069.3956,
"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.0273,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1949,
"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.729,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.534,
"prior_weight": 0.466
},
"role": "pitcher",
"player_id": "607455",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 0.0,
"R": 1.0,
"H": 3.0,
"BB": 4.0,
"SO": 7.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 90.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.2,
"H": 0.6,
"BB": 0.8,
"SO": 1.4,
"HR": 0.0,
"BF": 4.4,
"Pitches": 18.0
},
"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": 9.2,
"ER": 0.0,
"R": 1.0,
"H": 4.0,
"BB": 5.0,
"SO": 9.0,
"HR": 0.0,
"BF": 37.0,
"Pitches": 154.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.1,
"H": 0.4,
"BB": 0.5,
"SO": 0.9,
"HR": 0.0,
"BF": 3.7,
"Pitches": 15.4
},
"rates": {
"ERA": 0.0,
"WHIP": 0.931,
"ER_per_IP": 0.0,
"H_per_IP": 0.41379,
"BB_per_IP": 0.51724,
"SO_per_IP": 0.93103,
"HR_per_IP": 0.0
}
},
"season": {
"games": 32,
"totals": {
"IP": 29.0,
"ER": 15.0,
"R": 17.0,
"H": 23.0,
"BB": 13.0,
"SO": 27.0,
"HR": 2.0,
"BF": 128.0,
"Pitches": 517.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4688,
"R": 0.5312,
"H": 0.7188,
"BB": 0.4062,
"SO": 0.8438,
"HR": 0.0625,
"BF": 4.0,
"Pitches": 16.1562
},
"rates": {
"ERA": 4.6552,
"WHIP": 1.2414,
"ER_per_IP": 0.51724,
"H_per_IP": 0.7931,
"BB_per_IP": 0.44828,
"SO_per_IP": 0.93103,
"HR_per_IP": 0.06897
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.282,
"predicted_H": 0.764,
"predicted_BB": 0.521,
"predicted_SO": 1.07,
"predicted_HR": 0.073,
"predicted_ERA": 2.5356,
"predicted_WHIP": 1.2844
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5469,
"form_weight": 0.4531,
"form_reliability": 0.534,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.729,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.534,
"prior_weight": 0.466
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.282,
"final": 0.1278,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.764,
"final": 1.4399,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.521,
"final": 0.2361,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.07,
"final": 1.0317,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.073,
"final": 0.0331,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5356,
"final": 2.5356,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2844,
"final": 1.2844,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Travis Adams |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0448 |
| ESPN Rank | 605 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0211 |
| Avg Velo | 89.3371 |
| Avg Spin | 2344.9974 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 2 |
| Pre H | 2 |
| Pre BB | 2 |
| Pre SO | 0 |
| Season ERA | 7.4250 |
| Season WHIP | 1.5750 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"opponent": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"edges": {
"quality_edge": -0.0289,
"offense_edge": 0.0507,
"opponent_offense_edge": -0.1036,
"defense_strength": -0.0943,
"opponent_defense_weakness": -0.052,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0002,
"run_prevention": 0.9943,
"strikeout": 1.0074
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "701519",
"profile": {
"available": true,
"pitcher_id": "701519",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 46.0,
"k_percent": 25.8,
"bb_percent": 9.7,
"woba": 0.353,
"xwoba": 0.319,
"sweet_spot_percent": 35.0,
"barrel_batted_rate": 10.0,
"hard_hit_percent": 30.0,
"avg_best_speed": 73.1953,
"avg_hyper_speed": 93.6678,
"whiff_percent": 27.9,
"swing_percent": 47.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1223,
"command_and_miss": 0.2793,
"regression_edge": 0.9714,
"xwoba_edge": -0.1143,
"barrel_edge": -0.6,
"hard_hit_edge": 1.2,
"whiff_edge": 0.3286,
"bb_edge": -0.175,
"pitch_design_score": -0.0211
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "701519",
"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.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 89.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3371,
"release_spin_rate": 2344.9974,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0211,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1507,
"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.0448,
"sample_weight": 0.45,
"run_prevention_factor": 0.9962,
"strikeout_factor": 1.0139,
"walk_factor": 1.0063,
"homer_factor": 1.0015,
"woba_minus_xwoba": 0.034,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "701519",
"espn_id": 4424951,
"player_name": "Travis Adams",
"team": "MIN",
"role": "pitcher",
"espn_rank": 605,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 605,
"gp_value": 10.0,
"gp_rank": 380,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 7.425,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 1.0,
"hld_rank": 192,
"ip_value": 13.1,
"ip_rank": 437,
"h_value": 15.0,
"h_rank": 391,
"er_value": 11.0,
"er_rank": 265,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 6.0,
"bb_rank": 414,
"k_value": 16.0,
"k_rank": 380,
"k_per_9_value": 10.8,
"k_per_9_rank": 23,
"whip_value": 1.575,
"whip_rank": null,
"war_value": -0.39,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9983,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9983,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0028,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0007,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0063,
"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": 11,
"H": 15,
"BB": 6,
"SO": 16,
"HR": 3,
"ERA": 7.425,
"WHIP": 1.575,
"K9": 10.799999999999999,
"HR9": 2.025,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "701519",
"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.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 89.33713054415583,
"release_spin_rate": 2344.997365972707,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.3371,
"release_spin_rate": 2344.9974,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.0211,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1507,
"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": 2.634,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.345,
"prior_weight": 0.655
},
"role": "pitcher",
"player_id": "701519",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 10,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 8.0,
"R": 8.0,
"H": 9.0,
"BB": 3.0,
"SO": 7.0,
"HR": 3.0,
"BF": 28.0,
"Pitches": 111.0
},
"per_game": {
"IP": 1.0,
"ER": 1.6,
"R": 1.6,
"H": 1.8,
"BB": 0.6,
"SO": 1.4,
"HR": 0.6,
"BF": 5.6,
"Pitches": 22.2
},
"rates": {
"ERA": 13.5,
"WHIP": 2.25,
"ER_per_IP": 1.5,
"H_per_IP": 1.6875,
"BB_per_IP": 0.5625,
"SO_per_IP": 1.3125,
"HR_per_IP": 0.5625
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 11.0,
"R": 11.0,
"H": 15.0,
"BB": 6.0,
"SO": 16.0,
"HR": 3.0,
"BF": 62.0,
"Pitches": 232.0
},
"per_game": {
"IP": 1.1,
"ER": 1.1,
"R": 1.1,
"H": 1.5,
"BB": 0.6,
"SO": 1.6,
"HR": 0.3,
"BF": 6.2,
"Pitches": 23.2
},
"rates": {
"ERA": 7.425,
"WHIP": 1.575,
"ER_per_IP": 0.825,
"H_per_IP": 1.125,
"BB_per_IP": 0.45,
"SO_per_IP": 1.2,
"HR_per_IP": 0.225
}
},
"season": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 11.0,
"R": 11.0,
"H": 15.0,
"BB": 6.0,
"SO": 16.0,
"HR": 3.0,
"BF": 62.0,
"Pitches": 232.0
},
"per_game": {
"IP": 1.1,
"ER": 1.1,
"R": 1.1,
"H": 1.5,
"BB": 0.6,
"SO": 1.6,
"HR": 0.3,
"BF": 6.2,
"Pitches": 23.2
},
"rates": {
"ERA": 7.425,
"WHIP": 1.575,
"ER_per_IP": 0.825,
"H_per_IP": 1.125,
"BB_per_IP": 0.45,
"SO_per_IP": 1.2,
"HR_per_IP": 0.225
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.771,
"predicted_H": 1.183,
"predicted_BB": 0.437,
"predicted_SO": 1.102,
"predicted_HR": 0.247,
"predicted_ERA": 6.6058,
"predicted_WHIP": 1.5421
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6267,
"form_weight": 0.3733,
"form_reliability": 0.345,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.634,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.345,
"prior_weight": 0.655
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 0.771,
"final": 1.5413,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 1.183,
"final": 1.695,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 0.437,
"final": 1.4166,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.102,
"final": 0.4113,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.247,
"final": 0.7189,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.6058,
"final": 6.6058,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5421,
"final": 1.5421,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Yoendrys Gómez |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.3024 |
| ESPN Rank | 198 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 3.8969 |
| Season WHIP | 1.3608 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"opponent": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"edges": {
"quality_edge": -0.0289,
"offense_edge": 0.0507,
"opponent_offense_edge": -0.1036,
"defense_strength": -0.0943,
"opponent_defense_weakness": -0.052,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 1.0002,
"run_prevention": 0.9943,
"strikeout": 1.0074
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "672782",
"profile": {
"available": true,
"pitcher_id": "672782",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 109.0,
"k_percent": 22.4,
"bb_percent": 11.9,
"woba": 0.321,
"xwoba": 0.364,
"sweet_spot_percent": 35.2,
"barrel_batted_rate": 11.9,
"hard_hit_percent": 41.7,
"avg_best_speed": 78.669,
"avg_hyper_speed": 94.516,
"whiff_percent": 24.7,
"swing_percent": 46.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.8834,
"command_and_miss": -0.2093,
"regression_edge": -1.2286,
"xwoba_edge": -1.4,
"barrel_edge": -1.0222,
"hard_hit_edge": -0.4714,
"whiff_edge": -0.1286,
"bb_edge": -0.725,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "672782",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.3024,
"sample_weight": 0.45,
"run_prevention_factor": 1.0257,
"strikeout_factor": 0.9969,
"walk_factor": 1.0261,
"homer_factor": 1.0642,
"woba_minus_xwoba": -0.043,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "672782",
"espn_id": 42898,
"player_name": "Yoendrys Gomez",
"team": "MIN",
"role": "pitcher",
"espn_rank": 198,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 198,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.8969,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 5.0,
"sv_rank": 24,
"hld_value": 5.0,
"hld_rank": 79,
"ip_value": 32.1,
"ip_rank": 183,
"h_value": 27.0,
"h_rank": 213,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 17.0,
"bb_rank": 139,
"k_value": 32.0,
"k_rank": 196,
"k_per_9_value": 8.907217,
"k_per_9_rank": 28,
"whip_value": 1.3608,
"whip_rank": null,
"war_value": 0.41,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0116,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0116,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0117,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0289,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9986,
"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": 7,
"BB": 5,
"SO": 13,
"HR": 0,
"ERA": 1.8620689655172415,
"WHIP": 1.2413793103448276,
"K9": 12.10344827586207,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "672782",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.387,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5609,
"prior_weight": 0.4391
},
"role": "pitcher",
"player_id": "672782",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 3.0,
"SO": 6.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 89.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.6,
"SO": 1.2,
"HR": 0.0,
"BF": 4.0,
"Pitches": 17.8
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.2857,
"ER_per_IP": 0.21429,
"H_per_IP": 0.64286,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 2.0,
"R": 3.0,
"H": 7.0,
"BB": 5.0,
"SO": 13.0,
"HR": 0.0,
"BF": 41.0,
"Pitches": 173.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.3,
"H": 0.7,
"BB": 0.5,
"SO": 1.3,
"HR": 0.0,
"BF": 4.1,
"Pitches": 17.3
},
"rates": {
"ERA": 1.8621,
"WHIP": 1.2414,
"ER_per_IP": 0.2069,
"H_per_IP": 0.72414,
"BB_per_IP": 0.51724,
"SO_per_IP": 1.34483,
"HR_per_IP": 0.0
}
},
"season": {
"games": 26,
"totals": {
"IP": 32.1,
"ER": 14.0,
"R": 16.0,
"H": 27.0,
"BB": 17.0,
"SO": 32.0,
"HR": 5.0,
"BF": 143.0,
"Pitches": 553.0
},
"per_game": {
"IP": 1.1,
"ER": 0.5385,
"R": 0.6154,
"H": 1.0385,
"BB": 0.6538,
"SO": 1.2308,
"HR": 0.1923,
"BF": 5.5,
"Pitches": 21.2692
},
"rates": {
"ERA": 3.8969,
"WHIP": 1.3608,
"ER_per_IP": 0.43299,
"H_per_IP": 0.83505,
"BB_per_IP": 0.52577,
"SO_per_IP": 0.98969,
"HR_per_IP": 0.15464
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.37,
"predicted_H": 0.85,
"predicted_BB": 0.501,
"predicted_SO": 1.152,
"predicted_HR": 0.082,
"predicted_ERA": 3.2103,
"predicted_WHIP": 1.3026
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5355,
"form_weight": 0.4645,
"form_reliability": 0.5609,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.387,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5609,
"prior_weight": 0.4391
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.37,
"final": 0.1719,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.85,
"final": 0.3948,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.501,
"final": 0.7682,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.152,
"final": 0.5351,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.082,
"final": 0.0381,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2103,
"final": 3.2103,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3026,
"final": 1.3026,
"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.242 | 0.000 | 0.000 | Hitting_2B | 0.240 | 1.000 | -0.240 | -1.000 |
| predicted_3B | 0.034 | 0.000 | 0.000 | Hitting_3B | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_AB | 3.646 | 5.000 | 6.000 | Hitting_AB | 3.626 | 2.000 | 1.374 | 3.000 |
| predicted_AVG | 0.252 | 0.000 | 0.167 | Hitting_AVG | 0.234 | 0.500 | -0.234 | -0.500 |
| predicted_BB | 0.331 | 0.000 | 0.000 | Hitting_BB | 0.330 | 0.000 | -0.330 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_H | 0.400 | 0.000 | 1.000 | Hitting_H | 0.849 | 1.000 | -0.849 | -1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.140 | 0.000 | -0.140 | 0.000 |
| predicted_OBP | 0.302 | 0.000 | 0.167 | Hitting_OBP | 0.317 | 0.500 | -0.317 | -0.500 |
| predicted_R | 0.483 | 0.000 | 1.000 | Hitting_R | 0.480 | 0.000 | -0.480 | 0.000 |
| predicted_RBI | 0.190 | 0.000 | 1.000 | Hitting_RBI | 0.408 | 0.000 | -0.408 | 0.000 |
| predicted_SLG | 0.494 | 0.000 | 0.167 | Hitting_SLG | 0.435 | 1.000 | -0.435 | -1.000 |
| predicted_SO | 0.921 | 1.000 | 1.000 | Hitting_SO | 0.916 | 0.000 | 0.084 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 1 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_AB: 3.6460 -> 5.0000 (boost 1.3540, better) |
| Biggest Deboost | predicted_R: 0.4830 -> 0.0000 (deboost -0.4830, 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.6460 -> 5.7188 (boost 2.0728, 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.5171 -> 0.4427 (deboost -0.0744, 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.4904 -> 1.0000 (boost 0.5096, better) | predicted_2B: 0.4748 -> 0.0000 (deboost -0.4748, worse) | AB rounded to 6 (raw=5.72), rates preserved: AVG=0.221 HR/AB=0.039 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8663 -> 1.0000 (boost 0.1337, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4427 -> 0.1670 (deboost -0.2757, 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 -> 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.4427 (boost 0.2757, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665019",
"player_name": "Kody Clemens",
"position": "1B",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.242,
"predicted_3B": 0.034,
"predicted_AB": 3.646,
"predicted_AVG": 0.252,
"predicted_BB": 0.331,
"predicted_H": 0.4,
"predicted_HR": 0.08,
"predicted_OBP": 0.302,
"predicted_R": 0.483,
"predicted_RBI": 0.19,
"predicted_SLG": 0.494,
"predicted_SO": 0.921
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4748,
"predicted_3B": 0.0577,
"predicted_AB": 5.7188,
"predicted_AVG": 0.2666,
"predicted_BB": 0.4082,
"predicted_H": 1.272,
"predicted_HBP": 0.152,
"predicted_HR": 0.226,
"predicted_OBP": 0.3182,
"predicted_R": 0.8754,
"predicted_RBI": 0.4956,
"predicted_SLG": 0.5171,
"predicted_SO": 1.3314
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.242,
"after": 0.4748,
"delta": 0.2328,
"percent_delta": 0.962,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0577,
"delta": 0.0237,
"percent_delta": 0.6971,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.646,
"after": 5.7188,
"delta": 2.0728,
"percent_delta": 0.5685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2666,
"delta": 0.0146,
"percent_delta": 0.0579,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.331,
"after": 0.4082,
"delta": 0.0772,
"percent_delta": 0.2332,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4,
"after": 1.272,
"delta": 0.872,
"percent_delta": 2.18,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.226,
"delta": 0.146,
"percent_delta": 1.825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.302,
"after": 0.3182,
"delta": 0.0162,
"percent_delta": 0.0536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.483,
"after": 0.8754,
"delta": 0.3924,
"percent_delta": 0.8124,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.19,
"after": 0.4956,
"delta": 0.3056,
"percent_delta": 1.6084,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.494,
"after": 0.5171,
"delta": 0.0231,
"percent_delta": 0.0468,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.921,
"after": 1.3314,
"delta": 0.4104,
"percent_delta": 0.4456,
"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.646,
"after": 5.7188,
"delta": 2.0728,
"percent_delta": 0.5685,
"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.4748,
"predicted_3B": 0.0577,
"predicted_AB": 5.7188,
"predicted_AVG": 0.221,
"predicted_BB": 0.4087,
"predicted_H": 1.2641,
"predicted_HBP": 0.152,
"predicted_HR": 0.2259,
"predicted_OBP": 0.273,
"predicted_R": 0.8663,
"predicted_RBI": 0.4904,
"predicted_SLG": 0.4427,
"predicted_SO": 1.3298
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4748,
"after": 0.4748,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0577,
"after": 0.0577,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.7188,
"after": 5.7188,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2666,
"after": 0.221,
"delta": -0.0456,
"percent_delta": -0.171,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4082,
"after": 0.4087,
"delta": 0.0005,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.272,
"after": 1.2641,
"delta": -0.0079,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.152,
"after": 0.152,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.226,
"after": 0.2259,
"delta": -0.0001,
"percent_delta": -0.0004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3182,
"after": 0.273,
"delta": -0.0452,
"percent_delta": -0.142,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8754,
"after": 0.8663,
"delta": -0.0091,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4956,
"after": 0.4904,
"delta": -0.0052,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5171,
"after": 0.4427,
"delta": -0.0744,
"percent_delta": -0.1439,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3314,
"after": 1.3298,
"delta": -0.0016,
"percent_delta": -0.0012,
"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.5171,
"after": 0.4427,
"delta": -0.0744,
"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.72), rates preserved: AVG=0.221 HR/AB=0.039",
"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.4748,
"after": 0.0,
"delta": -0.4748,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0577,
"after": 0.0,
"delta": -0.0577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.7188,
"after": 6.0,
"delta": 0.2812,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4087,
"after": 0.0,
"delta": -0.4087,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2641,
"after": 1.0,
"delta": -0.2641,
"percent_delta": -0.2089,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.152,
"after": 0.0,
"delta": -0.152,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2259,
"after": 0.0,
"delta": -0.2259,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4904,
"after": 1.0,
"delta": 0.5096,
"percent_delta": 1.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3298,
"after": 1.0,
"delta": -0.3298,
"percent_delta": -0.248,
"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.4904,
"after": 1.0,
"delta": 0.5096,
"percent_delta": 1.0392,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4748,
"after": 0.0,
"delta": -0.4748,
"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.8663,
"after": 1.0,
"delta": 0.1337,
"percent_delta": 0.1543,
"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.8663,
"after": 1.0,
"delta": 0.1337,
"percent_delta": 0.1543,
"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.221,
"after": 0.167,
"delta": -0.054,
"percent_delta": -0.2443,
"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.273,
"after": 0.167,
"delta": -0.106,
"percent_delta": -0.3883,
"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.4427,
"after": 0.167,
"delta": -0.2757,
"percent_delta": -0.6228,
"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.4427,
"after": 0.167,
"delta": -0.2757,
"percent_delta": -0.6228,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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": 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.221,
"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.273,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4427,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.221,
"delta": 0.054,
"percent_delta": 0.3236,
"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.273,
"delta": 0.106,
"percent_delta": 0.6347,
"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.4427,
"delta": 0.2757,
"percent_delta": 1.6511,
"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.4427,
"delta": 0.2757,
"percent_delta": 1.6511,
"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.242,
"after": 0.0,
"delta": -0.242,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0,
"delta": -0.034,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.646,
"after": 5.0,
"delta": 1.354,
"percent_delta": 0.3714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.221,
"delta": -0.031,
"percent_delta": -0.123,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.331,
"after": 0.0,
"delta": -0.331,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.302,
"after": 0.273,
"delta": -0.029,
"percent_delta": -0.096,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.483,
"after": 0.0,
"delta": -0.483,
"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.494,
"after": 0.4427,
"delta": -0.0513,
"percent_delta": -0.1038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.921,
"after": 1.0,
"delta": 0.079,
"percent_delta": 0.0858,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 2,
"deboosted_metrics": 9,
"better_metrics": 1,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.646,
"after": 5.0,
"delta": 1.354,
"percent_delta": 0.3714,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.483,
"after": 0.0,
"delta": -0.483,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.242 | - |
| predicted_3B | 0.034 | - |
| predicted_AB | 3.646 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.331 | - |
| predicted_H | 0.400 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.302 | - |
| predicted_R | 0.483 | - |
| predicted_RBI | 0.190 | - |
| predicted_SLG | 0.494 | - |
| predicted_SO | 0.921 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.233 |
| predicted_3B | 0.058 | 0.024 |
| predicted_AB | 5.719 | 2.073 |
| predicted_AVG | 0.267 | 0.015 |
| predicted_BB | 0.408 | 0.077 |
| predicted_H | 1.272 | 0.872 |
| predicted_HBP | 0.152 | - |
| predicted_HR | 0.226 | 0.146 |
| predicted_OBP | 0.318 | 0.016 |
| predicted_R | 0.875 | 0.392 |
| predicted_RBI | 0.496 | 0.306 |
| predicted_SLG | 0.517 | 0.023 |
| predicted_SO | 1.331 | 0.410 |
Step 3: 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.058 | 0.000 |
| predicted_AB | 5.719 | 0.000 |
| predicted_AVG | 0.221 | -0.046 |
| predicted_BB | 0.409 | 0.001 |
| predicted_H | 1.264 | -0.008 |
| predicted_HBP | 0.152 | 0.000 |
| predicted_HR | 0.226 | -0.000 |
| predicted_OBP | 0.273 | -0.045 |
| predicted_R | 0.866 | -0.009 |
| predicted_RBI | 0.490 | -0.005 |
| predicted_SLG | 0.443 | -0.074 |
| predicted_SO | 1.330 | -0.002 |
AB rounded to 6 (raw=5.72), rates preserved: AVG=0.221 HR/AB=0.039
| 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.475 |
| predicted_3B | 0.000 | -0.058 |
| predicted_AB | 6.000 | 0.281 |
| predicted_AVG | 0.167 | -0.054 |
| predicted_BB | 0.000 | -0.409 |
| predicted_H | 1.000 | -0.264 |
| predicted_HR | 0.000 | -0.226 |
| predicted_OBP | 0.167 | -0.106 |
| predicted_R | 1.000 | 0.134 |
| predicted_RBI | 1.000 | 0.510 |
| predicted_SLG | 0.167 | -0.276 |
| 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 | 5.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 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 | 7.000 | 3.000 | 0.000 | 1.000 | 1.000 | 4.000 | 0.000 | 3.000 | 0.3889 | 0.3889 | 0.7222 | 0.3889 | 0.0556 | 0.0556 | 0.0000 | 0.1667 |
| last_10 | 0.20 | 10 | - | 38.000 | 13.000 | 4.000 | 1.000 | 3.000 | 5.000 | 8.000 | 1.000 | 7.000 | 0.3421 | 0.3590 | 0.7368 | 0.3421 | 0.0790 | 0.1316 | 0.0263 | 0.1842 |
| season | 0.60 | 55 | - | 649.000 | 152.000 | 43.000 | 6.000 | 25.000 | 73.000 | 86.000 | 59.000 | 164.000 | 0.2342 | 0.3173 | 0.4345 | 0.2342 | 0.0385 | 0.1125 | 0.0909 | 0.2527 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7730 |
| predicted_3B | 0.0880 |
| predicted_AB | 8.3740 |
| predicted_AVG | 0.2853 |
| predicted_BB | 0.5070 |
| predicted_H | 2.3890 |
| predicted_HBP | 0.1520 |
| predicted_HR | 0.4130 |
| predicted_OBP | 0.3389 |
| predicted_R | 1.3780 |
| predicted_RBI | 0.8870 |
| predicted_SLG | 0.5468 |
| predicted_SO | 1.8570 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2420 | 0.7730 | 0.4748 | model_form_blend |
| predicted_3B | 0.0340 | 0.0880 | 0.0577 | model_form_blend |
| predicted_AB | 3.6460 | 8.3740 | 5.7188 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2853 | 0.2666 | model_form_blend |
| predicted_BB | 0.3310 | 0.5070 | 0.4082 | model_form_blend |
| predicted_H | 0.4000 | 2.3890 | 1.2720 | model_form_blend |
| predicted_HBP | - | 0.1520 | 0.1520 | form_only |
| predicted_HR | 0.0800 | 0.4130 | 0.2260 | model_form_blend |
| predicted_OBP | 0.3020 | 0.3389 | 0.3182 | model_form_blend |
| predicted_R | 0.4830 | 1.3780 | 0.8754 | model_form_blend |
| predicted_RBI | 0.1900 | 0.8870 | 0.4956 | model_form_blend |
| predicted_SLG | 0.4940 | 0.5468 | 0.5171 | model_form_blend |
| predicted_SO | 0.9210 | 1.8570 | 1.3314 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 178 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.234 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.5 |
| 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 | 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 | 20260610_MIN@DET |
| game_type | ph |
| mlbID | 665019 |
| note | Doubled for Kreidler in the 6th. |
| playerID | 665019 |
| playerName | Kody Clemens |
| pos | 1B |
| started | False |
| startingPosition | PH |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.35 |
| sl_xwoba | 0.336 |
| sl_xba | 0.251 |
| sl_xslg | 0.451 |
| sl_sweet_spot_percent | 36.3 |
| sl_barrel_batted_rate | 13.8 |
| sl_hard_hit_percent | 44.5 |
| sl_exit_velocity_avg | 92.6 |
| sl_launch_angle_avg | 16.7 |
| sl_whiff_percent | 25.4 |
| 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.194 | 0.000 | 0.000 | Hitting_2B | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_AB | 3.461 | 4.000 | 5.000 | Hitting_AB | 3.399 | 2.000 | 0.601 | 2.000 |
| predicted_AVG | 0.236 | 0.000 | 0.200 | Hitting_AVG | 0.271 | 0.000 | -0.271 | 0.000 |
| predicted_BB | 0.521 | 1.000 | 1.000 | Hitting_BB | 0.530 | 0.000 | 0.470 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.024 | 0.000 | -0.024 | 0.000 |
| predicted_H | 0.340 | 0.000 | 1.000 | Hitting_H | 0.923 | 0.000 | -0.923 | 0.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.054 | 0.000 | -0.054 | 0.000 |
| predicted_OBP | 0.301 | 0.200 | 0.333 | Hitting_OBP | 0.378 | 0.333 | -0.178 | -0.133 |
| predicted_R | 0.630 | 0.000 | 1.000 | Hitting_R | 0.619 | 0.000 | -0.619 | 0.000 |
| predicted_RBI | 0.160 | 0.000 | 0.000 | Hitting_RBI | 0.345 | 0.000 | -0.345 | 0.000 |
| predicted_SLG | 0.368 | 0.000 | 0.200 | Hitting_SLG | 0.392 | 0.000 | -0.392 | 0.000 |
| predicted_SO | 0.794 | 1.000 | 1.000 | Hitting_SO | 0.780 | 1.000 | 0.220 | 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.4610 -> 4.0000 (boost 0.5390, better) |
| Biggest Deboost | predicted_R: 0.6300 -> 0.0000 (deboost -0.6300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.4610 -> 5.2381 (boost 1.7771, 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.3672 -> 0.3056 (deboost -0.0616, 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.7249 -> 1.0000 (boost 0.2751, better) | predicted_RBI: 0.3587 -> 0.0000 (deboost -0.3587, worse) | AB rounded to 5 (raw=5.24), rates preserved: AVG=0.188 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 | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9342 -> 1.0000 (boost 0.0658, 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.3056 -> 0.2000 (deboost -0.1056, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 0 | 3 | 0 | 3 | - | predicted_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.3056 (boost 0.1056, 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": "663616",
"player_name": "Trevor Larnach",
"position": "LF",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.194,
"predicted_3B": 0.03,
"predicted_AB": 3.461,
"predicted_AVG": 0.236,
"predicted_BB": 0.521,
"predicted_H": 0.34,
"predicted_HR": 0.04,
"predicted_OBP": 0.301,
"predicted_R": 0.63,
"predicted_RBI": 0.16,
"predicted_SLG": 0.368,
"predicted_SO": 0.794
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3138,
"predicted_3B": 0.0339,
"predicted_AB": 5.2381,
"predicted_AVG": 0.2388,
"predicted_BB": 0.724,
"predicted_H": 0.9887,
"predicted_HBP": 0.231,
"predicted_HR": 0.0789,
"predicted_OBP": 0.3214,
"predicted_R": 0.944,
"predicted_RBI": 0.3625,
"predicted_SLG": 0.3672,
"predicted_SO": 1.3005
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.3138,
"delta": 0.1198,
"percent_delta": 0.6175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0339,
"delta": 0.0039,
"percent_delta": 0.13,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.461,
"after": 5.2381,
"delta": 1.7771,
"percent_delta": 0.5135,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.2388,
"delta": 0.0028,
"percent_delta": 0.0119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.521,
"after": 0.724,
"delta": 0.203,
"percent_delta": 0.3896,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.34,
"after": 0.9887,
"delta": 0.6487,
"percent_delta": 1.9079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0789,
"delta": 0.0389,
"percent_delta": 0.9725,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.301,
"after": 0.3214,
"delta": 0.0204,
"percent_delta": 0.0678,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.63,
"after": 0.944,
"delta": 0.314,
"percent_delta": 0.4984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.16,
"after": 0.3625,
"delta": 0.2025,
"percent_delta": 1.2656,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.368,
"after": 0.3672,
"delta": -0.0008,
"percent_delta": -0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.794,
"after": 1.3005,
"delta": 0.5065,
"percent_delta": 0.6379,
"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.461,
"after": 5.2381,
"delta": 1.7771,
"percent_delta": 0.5135,
"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": 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.3138,
"predicted_3B": 0.0339,
"predicted_AB": 5.2381,
"predicted_AVG": 0.1876,
"predicted_BB": 0.7249,
"predicted_H": 0.9826,
"predicted_HBP": 0.231,
"predicted_HR": 0.0789,
"predicted_OBP": 0.2863,
"predicted_R": 0.9342,
"predicted_RBI": 0.3587,
"predicted_SLG": 0.3056,
"predicted_SO": 1.2989
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3138,
"after": 0.3138,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0339,
"after": 0.0339,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2381,
"after": 5.2381,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2388,
"after": 0.1876,
"delta": -0.0512,
"percent_delta": -0.2144,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.724,
"after": 0.7249,
"delta": 0.0009,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9887,
"after": 0.9826,
"delta": -0.0061,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.231,
"after": 0.231,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0789,
"after": 0.0789,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3214,
"after": 0.2863,
"delta": -0.0351,
"percent_delta": -0.1092,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.944,
"after": 0.9342,
"delta": -0.0098,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3625,
"after": 0.3587,
"delta": -0.0038,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3672,
"after": 0.3056,
"delta": -0.0616,
"percent_delta": -0.1678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3005,
"after": 1.2989,
"delta": -0.0016,
"percent_delta": -0.0012,
"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.3672,
"after": 0.3056,
"delta": -0.0616,
"percent_delta": -0.1678,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.24), rates preserved: AVG=0.188 HR/AB=0.015",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3138,
"after": 0.0,
"delta": -0.3138,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0339,
"after": 0.0,
"delta": -0.0339,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2381,
"after": 5.0,
"delta": -0.2381,
"percent_delta": -0.0455,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7249,
"after": 1.0,
"delta": 0.2751,
"percent_delta": 0.3795,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9826,
"after": 1.0,
"delta": 0.0174,
"percent_delta": 0.0177,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.231,
"after": 0.0,
"delta": -0.231,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0789,
"after": 0.0,
"delta": -0.0789,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3587,
"after": 0.0,
"delta": -0.3587,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2989,
"after": 1.0,
"delta": -0.2989,
"percent_delta": -0.2301,
"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.7249,
"after": 1.0,
"delta": 0.2751,
"percent_delta": 0.3795,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3587,
"after": 0.0,
"delta": -0.3587,
"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": 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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"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": 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": 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.9342,
"after": 1.0,
"delta": 0.0658,
"percent_delta": 0.0704,
"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.9342,
"after": 1.0,
"delta": 0.0658,
"percent_delta": 0.0704,
"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": 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.1876,
"after": 0.2,
"delta": 0.0124,
"percent_delta": 0.0661,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3056,
"after": 0.2,
"delta": -0.1056,
"percent_delta": -0.3455,
"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.3056,
"after": 0.2,
"delta": -0.1056,
"percent_delta": -0.3455,
"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": 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": 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": 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.1876,
"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.2863,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3056,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.1876,
"delta": -0.0124,
"percent_delta": -0.0621,
"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.2863,
"delta": -0.0467,
"percent_delta": -0.1401,
"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.3056,
"delta": 0.1056,
"percent_delta": 0.528,
"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.3056,
"delta": 0.1056,
"percent_delta": 0.528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2863,
"delta": -0.0467,
"percent_delta": -0.1401,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.194,
"after": 0.0,
"delta": -0.194,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.461,
"after": 4.0,
"delta": 0.539,
"percent_delta": 0.1557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.236,
"after": 0.1876,
"delta": -0.0484,
"percent_delta": -0.2051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.521,
"after": 1.0,
"delta": 0.479,
"percent_delta": 0.9194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.34,
"after": 0.0,
"delta": -0.34,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.301,
"after": 0.2863,
"delta": -0.0147,
"percent_delta": -0.0488,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.368,
"after": 0.3056,
"delta": -0.0624,
"percent_delta": -0.1696,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.794,
"after": 1.0,
"delta": 0.206,
"percent_delta": 0.2594,
"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.461,
"after": 4.0,
"delta": 0.539,
"percent_delta": 0.1557,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.194 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.461 | - |
| predicted_AVG | 0.236 | - |
| predicted_BB | 0.521 | - |
| predicted_H | 0.340 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.301 | - |
| predicted_R | 0.630 | - |
| predicted_RBI | 0.160 | - |
| predicted_SLG | 0.368 | - |
| predicted_SO | 0.794 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.314 | 0.120 |
| predicted_3B | 0.034 | 0.004 |
| predicted_AB | 5.238 | 1.777 |
| predicted_AVG | 0.239 | 0.003 |
| predicted_BB | 0.724 | 0.203 |
| predicted_H | 0.989 | 0.649 |
| predicted_HBP | 0.231 | - |
| predicted_HR | 0.079 | 0.039 |
| predicted_OBP | 0.321 | 0.020 |
| predicted_R | 0.944 | 0.314 |
| predicted_RBI | 0.362 | 0.202 |
| predicted_SLG | 0.367 | -0.001 |
| predicted_SO | 1.300 | 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.314 | 0.000 |
| predicted_3B | 0.034 | 0.000 |
| predicted_AB | 5.238 | 0.000 |
| predicted_AVG | 0.188 | -0.051 |
| predicted_BB | 0.725 | 0.001 |
| predicted_H | 0.983 | -0.006 |
| predicted_HBP | 0.231 | 0.000 |
| predicted_HR | 0.079 | 0.000 |
| predicted_OBP | 0.286 | -0.035 |
| predicted_R | 0.934 | -0.010 |
| predicted_RBI | 0.359 | -0.004 |
| predicted_SLG | 0.306 | -0.062 |
| predicted_SO | 1.299 | -0.002 |
AB rounded to 5 (raw=5.24), rates preserved: AVG=0.188 HR/AB=0.015
| 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 | 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 | 5.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 | 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 | 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.314 |
| predicted_3B | 0.000 | -0.034 |
| predicted_AB | 5.000 | -0.238 |
| predicted_AVG | 0.200 | 0.012 |
| predicted_BB | 1.000 | 0.275 |
| predicted_H | 1.000 | 0.017 |
| predicted_HR | 0.000 | -0.079 |
| predicted_OBP | 0.333 | 0.047 |
| predicted_R | 1.000 | 0.066 |
| predicted_RBI | 0.000 | -0.359 |
| predicted_SLG | 0.200 | -0.106 |
| predicted_SO | 1.000 | -0.299 |
Attached 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 | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 2.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 1.000 | 4.000 | 0.1538 | 0.2667 | 0.2308 | 0.1538 | 0.0000 | 0.0000 | 0.0769 | 0.3077 |
| last_10 | 0.20 | 10 | - | 29.000 | 7.000 | 2.000 | 0.000 | 1.000 | 3.000 | 6.000 | 4.000 | 9.000 | 0.2414 | 0.3529 | 0.4138 | 0.2414 | 0.0345 | 0.1035 | 0.1379 | 0.3103 |
| season | 0.60 | 52 | - | 571.000 | 155.000 | 32.000 | 5.000 | 9.000 | 57.000 | 104.000 | 86.000 | 131.000 | 0.2715 | 0.3754 | 0.3923 | 0.2715 | 0.0158 | 0.0998 | 0.1506 | 0.2294 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4680 |
| predicted_3B | 0.0390 |
| predicted_AB | 7.5240 |
| predicted_AVG | 0.2423 |
| predicted_BB | 0.9850 |
| predicted_H | 1.8230 |
| predicted_HBP | 0.2310 |
| predicted_HR | 0.1290 |
| predicted_OBP | 0.3476 |
| predicted_R | 1.3480 |
| predicted_RBI | 0.6230 |
| predicted_SLG | 0.3662 |
| predicted_SO | 1.9520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1940 | 0.4680 | 0.3138 | model_form_blend |
| predicted_3B | 0.0300 | 0.0390 | 0.0339 | model_form_blend |
| predicted_AB | 3.4610 | 7.5240 | 5.2381 | model_form_blend |
| predicted_AVG | 0.2360 | 0.2423 | 0.2388 | model_form_blend |
| predicted_BB | 0.5210 | 0.9850 | 0.7240 | model_form_blend |
| predicted_H | 0.3400 | 1.8230 | 0.9887 | model_form_blend |
| predicted_HBP | - | 0.2310 | 0.2310 | form_only |
| predicted_HR | 0.0400 | 0.1290 | 0.0789 | model_form_blend |
| predicted_OBP | 0.3010 | 0.3476 | 0.3214 | model_form_blend |
| predicted_R | 0.6300 | 1.3480 | 0.9440 | model_form_blend |
| predicted_RBI | 0.1600 | 0.6230 | 0.3625 | model_form_blend |
| predicted_SLG | 0.3680 | 0.3662 | 0.3672 | model_form_blend |
| predicted_SO | 0.7940 | 1.9520 | 1.3005 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 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.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 | 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 | 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 | 20260609_MIN@DET |
| game_type | full |
| mlbID | 663616 |
| playerID | 663616 |
| playerName | Trevor Larnach |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-09 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 13.5 |
| sl_woba | 0.34 |
| sl_xwoba | 0.318 |
| sl_xba | 0.238 |
| sl_xslg | 0.348 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 29.6 |
| sl_exit_velocity_avg | 86.4 |
| sl_launch_angle_avg | 12.2 |
| sl_whiff_percent | 27.4 |
| sl_swing_percent | 41.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.220 | 0.000 | 0.000 | Hitting_2B | 0.220 | 0.000 | -0.220 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 4.660 | 5.000 | 8.000 | Hitting_AB | 4.264 | 4.000 | 0.736 | 1.000 |
| predicted_AVG | 0.234 | 0.600 | 0.250 | Hitting_AVG | 0.269 | 0.500 | 0.331 | 0.100 |
| predicted_BB | 0.344 | 0.000 | 1.000 | Hitting_BB | 0.344 | 1.000 | -0.344 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.090 | 3.000 | 2.000 | Hitting_H | 1.145 | 2.000 | 1.855 | 1.000 |
| predicted_HR | 0.320 | 1.000 | 1.000 | Hitting_HR | 0.379 | 1.000 | 0.621 | 0.000 |
| predicted_OBP | 0.322 | 0.600 | 0.333 | Hitting_OBP | 0.329 | 0.600 | 0.271 | 0.000 |
| predicted_R | 0.833 | 1.000 | 1.000 | Hitting_R | 0.833 | 1.000 | 0.167 | 0.000 |
| predicted_RBI | 0.650 | 2.000 | 1.000 | Hitting_RBI | 0.617 | 3.000 | 1.383 | -1.000 |
| predicted_SLG | 0.509 | 1.200 | 0.625 | Hitting_SLG | 0.595 | 1.250 | 0.605 | -0.050 |
| predicted_SO | 1.242 | 1.000 | 2.000 | Hitting_SO | 1.242 | 0.000 | -0.242 | 1.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_H: 1.0900 -> 3.0000 (boost 1.9100, better) |
| Biggest Deboost | predicted_BB: 0.3440 -> 0.0000 (deboost -0.3440, 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.6600 -> 7.6631 (boost 3.0031, 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.5523 -> 0.5672 (boost 0.0149, better) | predicted_OBP: 0.3270 -> 0.3140 (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 | 7 | 3 | 4 | 4 | 3 | predicted_BB: 0.6546 -> 1.0000 (boost 0.3454, better) | predicted_2B: 0.2823 -> 0.0000 (deboost -0.2823, worse) | AB rounded to 8 (raw=7.66), rates preserved: AVG=0.255 HR/AB=0.090 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.3391 -> 1.0000 (deboost -0.3391, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.5672 -> 0.6250 (boost 0.0578, better) | predicted_AVG: 0.2554 -> 0.2500 (deboost -0.0054, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 2 | 3 | 3 | 2 | predicted_H: 2.0000 -> 3.0000 (boost 1.0000, better) | predicted_AB: 8.0000 -> 5.0000 (deboost -3.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2500 -> 0.2554 (boost 0.0054, better) | predicted_SLG: 0.6250 -> 0.5672 (deboost -0.0578, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "621439",
"player_name": "Byron Buxton",
"position": "CF",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.22,
"predicted_3B": 0.018,
"predicted_AB": 4.66,
"predicted_AVG": 0.234,
"predicted_BB": 0.344,
"predicted_H": 1.09,
"predicted_HR": 0.32,
"predicted_OBP": 0.322,
"predicted_R": 0.833,
"predicted_RBI": 0.65,
"predicted_SLG": 0.509,
"predicted_SO": 1.242
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2823,
"predicted_3B": 0.0229,
"predicted_AB": 7.6631,
"predicted_AVG": 0.2494,
"predicted_BB": 0.6538,
"predicted_H": 1.9691,
"predicted_HBP": 0.079,
"predicted_HR": 0.6877,
"predicted_OBP": 0.327,
"predicted_R": 1.3532,
"predicted_RBI": 1.2113,
"predicted_SLG": 0.5523,
"predicted_SO": 2.1401
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.22,
"after": 0.2823,
"delta": 0.0623,
"percent_delta": 0.2832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0229,
"delta": 0.0049,
"percent_delta": 0.2722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.66,
"after": 7.6631,
"delta": 3.0031,
"percent_delta": 0.6444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2494,
"delta": 0.0154,
"percent_delta": 0.0658,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.344,
"after": 0.6538,
"delta": 0.3098,
"percent_delta": 0.9006,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.9691,
"delta": 0.8791,
"percent_delta": 0.8065,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.32,
"after": 0.6877,
"delta": 0.3677,
"percent_delta": 1.1491,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.327,
"delta": 0.005,
"percent_delta": 0.0155,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.833,
"after": 1.3532,
"delta": 0.5202,
"percent_delta": 0.6245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 1.2113,
"delta": 0.5613,
"percent_delta": 0.8635,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.509,
"after": 0.5523,
"delta": 0.0433,
"percent_delta": 0.0851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.242,
"after": 2.1401,
"delta": 0.8981,
"percent_delta": 0.7231,
"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.66,
"after": 7.6631,
"delta": 3.0031,
"percent_delta": 0.6444,
"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.2823,
"predicted_3B": 0.0229,
"predicted_AB": 7.6631,
"predicted_AVG": 0.2554,
"predicted_BB": 0.6546,
"predicted_H": 1.9569,
"predicted_HBP": 0.079,
"predicted_HR": 0.6873,
"predicted_OBP": 0.314,
"predicted_R": 1.3391,
"predicted_RBI": 1.1987,
"predicted_SLG": 0.5672,
"predicted_SO": 2.1375
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2823,
"after": 0.2823,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0229,
"after": 0.0229,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.6631,
"after": 7.6631,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2494,
"after": 0.2554,
"delta": 0.006,
"percent_delta": 0.0241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6538,
"after": 0.6546,
"delta": 0.0008,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9691,
"after": 1.9569,
"delta": -0.0122,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.079,
"after": 0.079,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.6877,
"after": 0.6873,
"delta": -0.0004,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.314,
"delta": -0.013,
"percent_delta": -0.0398,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.3532,
"after": 1.3391,
"delta": -0.0141,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.2113,
"after": 1.1987,
"delta": -0.0126,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5523,
"after": 0.5672,
"delta": 0.0149,
"percent_delta": 0.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1401,
"after": 2.1375,
"delta": -0.0026,
"percent_delta": -0.0012,
"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.5523,
"after": 0.5672,
"delta": 0.0149,
"percent_delta": 0.027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.314,
"delta": -0.013,
"percent_delta": -0.0398,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.66), rates preserved: AVG=0.255 HR/AB=0.090",
"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": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2823,
"after": 0.0,
"delta": -0.2823,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0229,
"after": 0.0,
"delta": -0.0229,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.6631,
"after": 8.0,
"delta": 0.3369,
"percent_delta": 0.044,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6546,
"after": 1.0,
"delta": 0.3454,
"percent_delta": 0.5277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9569,
"after": 2.0,
"delta": 0.0431,
"percent_delta": 0.022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.079,
"after": 0.0,
"delta": -0.079,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.6873,
"after": 1.0,
"delta": 0.3127,
"percent_delta": 0.455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1987,
"after": 1.0,
"delta": -0.1987,
"percent_delta": -0.1658,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1375,
"after": 2.0,
"delta": -0.1375,
"percent_delta": -0.0643,
"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.6546,
"after": 1.0,
"delta": 0.3454,
"percent_delta": 0.5277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2823,
"after": 0.0,
"delta": -0.2823,
"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.500)",
"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": 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": 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": 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": 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": 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": 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.3391,
"after": 1.0,
"delta": -0.3391,
"percent_delta": -0.2532,
"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.3391,
"after": 1.0,
"delta": -0.3391,
"percent_delta": -0.2532,
"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": 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.2554,
"after": 0.25,
"delta": -0.0054,
"percent_delta": -0.0211,
"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.314,
"after": 0.333,
"delta": 0.019,
"percent_delta": 0.0605,
"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.5672,
"after": 0.625,
"delta": 0.0578,
"percent_delta": 0.1019,
"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.5672,
"after": 0.625,
"delta": 0.0578,
"percent_delta": 0.1019,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2554,
"after": 0.25,
"delta": -0.0054,
"percent_delta": -0.0211,
"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": 3.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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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": 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.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": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"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_H",
"before": 2.0,
"after": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"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.2554,
"predicted_BB": 0.0,
"predicted_CF": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.314,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5672,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2554,
"delta": 0.0054,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.314,
"delta": -0.019,
"percent_delta": -0.0572,
"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.625,
"after": 0.5672,
"delta": -0.0578,
"percent_delta": -0.0924,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2554,
"delta": 0.0054,
"percent_delta": 0.0215,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.625,
"after": 0.5672,
"delta": -0.0578,
"percent_delta": -0.0924,
"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.22,
"after": 0.0,
"delta": -0.22,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.0,
"delta": -0.018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.66,
"after": 5.0,
"delta": 0.34,
"percent_delta": 0.073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2554,
"delta": 0.0214,
"percent_delta": 0.0915,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.344,
"after": 0.0,
"delta": -0.344,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 3.0,
"delta": 1.91,
"percent_delta": 1.7523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.32,
"after": 1.0,
"delta": 0.68,
"percent_delta": 2.125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.322,
"after": 0.314,
"delta": -0.008,
"percent_delta": -0.0248,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.833,
"after": 1.0,
"delta": 0.167,
"percent_delta": 0.2005,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.509,
"after": 0.5672,
"delta": 0.0582,
"percent_delta": 0.1143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.242,
"after": 1.0,
"delta": -0.242,
"percent_delta": -0.1948,
"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_H",
"before": 1.09,
"after": 3.0,
"delta": 1.91,
"percent_delta": 1.7523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.344,
"after": 0.0,
"delta": -0.344,
"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.220 | - |
| predicted_3B | 0.018 | - |
| predicted_AB | 4.660 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.344 | - |
| predicted_H | 1.090 | - |
| predicted_HR | 0.320 | - |
| predicted_OBP | 0.322 | - |
| predicted_R | 0.833 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.509 | - |
| predicted_SO | 1.242 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.282 | 0.062 |
| predicted_3B | 0.023 | 0.005 |
| predicted_AB | 7.663 | 3.003 |
| predicted_AVG | 0.249 | 0.015 |
| predicted_BB | 0.654 | 0.310 |
| predicted_H | 1.969 | 0.879 |
| predicted_HBP | 0.079 | - |
| predicted_HR | 0.688 | 0.368 |
| predicted_OBP | 0.327 | 0.005 |
| predicted_R | 1.353 | 0.520 |
| predicted_RBI | 1.211 | 0.561 |
| predicted_SLG | 0.552 | 0.043 |
| predicted_SO | 2.140 | 0.898 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.282 | 0.000 |
| predicted_3B | 0.023 | 0.000 |
| predicted_AB | 7.663 | 0.000 |
| predicted_AVG | 0.255 | 0.006 |
| predicted_BB | 0.655 | 0.001 |
| predicted_H | 1.957 | -0.012 |
| predicted_HBP | 0.079 | 0.000 |
| predicted_HR | 0.687 | -0.000 |
| predicted_OBP | 0.314 | -0.013 |
| predicted_R | 1.339 | -0.014 |
| predicted_RBI | 1.199 | -0.013 |
| predicted_SLG | 0.567 | 0.015 |
| predicted_SO | 2.138 | -0.003 |
AB rounded to 8 (raw=7.66), rates preserved: AVG=0.255 HR/AB=0.090
| 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 | 1.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=6.0, weight=0.067, BvP AVG=0.500)
| 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 | 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 | 1.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.282 |
| predicted_3B | 0.000 | -0.023 |
| predicted_AB | 8.000 | 0.337 |
| predicted_AVG | 0.250 | -0.005 |
| predicted_BB | 1.000 | 0.345 |
| predicted_H | 2.000 | 0.043 |
| predicted_HR | 1.000 | 0.313 |
| predicted_OBP | 0.333 | 0.019 |
| predicted_R | 1.000 | -0.339 |
| predicted_RBI | 1.000 | -0.199 |
| predicted_SLG | 0.625 | 0.058 |
| 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 | 5.000 | -3.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 3.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 1.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 | 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 | 5.000 | 0.000 | 0.000 | 3.000 | 5.000 | 3.000 | 2.000 | 4.000 | 0.2778 | 0.3500 | 0.7778 | 0.2778 | 0.1667 | 0.2778 | 0.1111 | 0.2222 |
| last_10 | 0.20 | 10 | - | 38.000 | 10.000 | 0.000 | 0.000 | 3.000 | 5.000 | 5.000 | 4.000 | 13.000 | 0.2632 | 0.3333 | 0.5000 | 0.2632 | 0.0790 | 0.1316 | 0.1053 | 0.3421 |
| season | 0.60 | 57 | - | 968.000 | 260.000 | 50.000 | 4.000 | 86.000 | 140.000 | 189.000 | 78.000 | 282.000 | 0.2686 | 0.3289 | 0.5950 | 0.2686 | 0.0888 | 0.1446 | 0.0806 | 0.2913 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3610 |
| predicted_3B | 0.0290 |
| predicted_AB | 11.4550 |
| predicted_AVG | 0.2688 |
| predicted_BB | 1.0450 |
| predicted_H | 3.0790 |
| predicted_HBP | 0.0790 |
| predicted_HR | 1.1520 |
| predicted_OBP | 0.3334 |
| predicted_R | 2.0100 |
| predicted_RBI | 1.9200 |
| predicted_SLG | 0.6070 |
| predicted_SO | 3.2740 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2200 | 0.3610 | 0.2823 | model_form_blend |
| predicted_3B | 0.0180 | 0.0290 | 0.0229 | model_form_blend |
| predicted_AB | 4.6600 | 11.4550 | 7.6631 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2688 | 0.2494 | model_form_blend |
| predicted_BB | 0.3440 | 1.0450 | 0.6538 | model_form_blend |
| predicted_H | 1.0900 | 3.0790 | 1.9691 | model_form_blend |
| predicted_HBP | - | 0.0790 | 0.0790 | form_only |
| predicted_HR | 0.3200 | 1.1520 | 0.6877 | model_form_blend |
| predicted_OBP | 0.3220 | 0.3334 | 0.3270 | model_form_blend |
| predicted_R | 0.8330 | 2.0100 | 1.3532 | model_form_blend |
| predicted_RBI | 0.6500 | 1.9200 | 1.2113 | model_form_blend |
| predicted_SLG | 0.5090 | 0.6070 | 0.5523 | model_form_blend |
| predicted_SO | 1.2420 | 3.2740 | 2.1401 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| AB | 5 |
| H | 3 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.269 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 1 |
| Hitting_GIDP | 1 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 3 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 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 | 20260610_MIN@DET |
| game_type | full |
| mlbID | 621439 |
| playerID | 621439 |
| playerName | Byron Buxton |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 26.4 |
| sl_bb_percent | 7.4 |
| sl_woba | 0.379 |
| sl_xwoba | 0.339 |
| sl_xba | 0.238 |
| sl_xslg | 0.495 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 18.5 |
| sl_hard_hit_percent | 46.4 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 22.2 |
| sl_whiff_percent | 31.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.175 | 2.000 | 0.000 | Hitting_2B | 0.175 | 0.000 | 1.825 | 2.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.990 | 5.000 | 6.000 | Hitting_AB | 3.789 | 5.000 | 1.211 | 0.000 |
| predicted_AVG | 0.234 | 0.600 | 0.167 | Hitting_AVG | 0.223 | 0.200 | 0.377 | 0.400 |
| predicted_BB | 0.320 | 0.000 | 0.000 | Hitting_BB | 0.320 | 0.000 | -0.320 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.930 | 3.000 | 1.000 | Hitting_H | 0.846 | 1.000 | 2.154 | 2.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.101 | 0.000 | -0.101 | 0.000 |
| predicted_OBP | 0.293 | 0.600 | 0.167 | Hitting_OBP | 0.286 | 0.200 | 0.314 | 0.400 |
| predicted_R | 0.518 | 1.000 | 1.000 | Hitting_R | 0.518 | 0.000 | 0.482 | 1.000 |
| predicted_RBI | 0.620 | 0.000 | 1.000 | Hitting_RBI | 0.588 | 1.000 | -0.588 | -1.000 |
| predicted_SLG | 0.416 | 1.000 | 0.167 | Hitting_SLG | 0.350 | 0.200 | 0.650 | 0.800 |
| predicted_SO | 0.978 | 1.000 | 2.000 | Hitting_SO | 0.978 | 0.000 | 0.022 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 8 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 4 |
| Better Metrics | 4 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_H: 0.9300 -> 3.0000 (boost 2.0700, better) |
| Biggest Deboost | predicted_RBI: 0.6200 -> 0.0000 (deboost -0.6200, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.9900 -> 6.3251 (boost 2.3351, 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.2900 -> 0.2833 (deboost -0.0067, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 1 | 7 | 0 | 8 | predicted_SO: 1.6460 -> 2.0000 (boost 0.3540, worse) | predicted_H: 1.4967 -> 1.0000 (deboost -0.4967, worse) | AB rounded to 6 (raw=6.33), rates preserved: AVG=0.237 HR/AB=0.043 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8409 -> 1.0000 (boost 0.1591, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4129 -> 0.1670 (deboost -0.2459, 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 -> 2.0000 (boost 2.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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.4129 (boost 0.2459, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "605137",
"player_name": "Josh Bell",
"position": "DH",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.175,
"predicted_3B": 0.0,
"predicted_AB": 3.99,
"predicted_AVG": 0.234,
"predicted_BB": 0.32,
"predicted_H": 0.93,
"predicted_HR": 0.16,
"predicted_OBP": 0.293,
"predicted_R": 0.518,
"predicted_RBI": 0.62,
"predicted_SLG": 0.416,
"predicted_SO": 0.978
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2945,
"predicted_3B": 0.0004,
"predicted_AB": 6.3251,
"predicted_AVG": 0.237,
"predicted_BB": 0.4117,
"predicted_H": 1.506,
"predicted_HBP": 0.09,
"predicted_HR": 0.2734,
"predicted_OBP": 0.29,
"predicted_R": 0.8497,
"predicted_RBI": 1.0814,
"predicted_SLG": 0.4195,
"predicted_SO": 1.648
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.175,
"after": 0.2945,
"delta": 0.1195,
"percent_delta": 0.6829,
"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.99,
"after": 6.3251,
"delta": 2.3351,
"percent_delta": 0.5852,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.237,
"delta": 0.003,
"percent_delta": 0.0128,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.32,
"after": 0.4117,
"delta": 0.0917,
"percent_delta": 0.2866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 1.506,
"delta": 0.576,
"percent_delta": 0.6194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2734,
"delta": 0.1134,
"percent_delta": 0.7087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.29,
"delta": -0.003,
"percent_delta": -0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.518,
"after": 0.8497,
"delta": 0.3317,
"percent_delta": 0.6403,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.62,
"after": 1.0814,
"delta": 0.4614,
"percent_delta": 0.7442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.4195,
"delta": 0.0035,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.978,
"after": 1.648,
"delta": 0.67,
"percent_delta": 0.6851,
"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.99,
"after": 6.3251,
"delta": 2.3351,
"percent_delta": 0.5852,
"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.2945,
"predicted_3B": 0.0004,
"predicted_AB": 6.3251,
"predicted_AVG": 0.2366,
"predicted_BB": 0.4122,
"predicted_H": 1.4967,
"predicted_HBP": 0.09,
"predicted_HR": 0.2732,
"predicted_OBP": 0.2833,
"predicted_R": 0.8409,
"predicted_RBI": 1.0702,
"predicted_SLG": 0.4129,
"predicted_SO": 1.646
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2945,
"after": 0.2945,
"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.3251,
"after": 6.3251,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2366,
"delta": -0.0004,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4117,
"after": 0.4122,
"delta": 0.0005,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.506,
"after": 1.4967,
"delta": -0.0093,
"percent_delta": -0.0062,
"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.2734,
"after": 0.2732,
"delta": -0.0002,
"percent_delta": -0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2833,
"delta": -0.0067,
"percent_delta": -0.0231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8497,
"after": 0.8409,
"delta": -0.0088,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0814,
"after": 1.0702,
"delta": -0.0112,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4195,
"after": 0.4129,
"delta": -0.0066,
"percent_delta": -0.0157,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.648,
"after": 1.646,
"delta": -0.002,
"percent_delta": -0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2833,
"delta": -0.0067,
"percent_delta": -0.0231,
"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.237 HR/AB=0.043",
"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.2945,
"after": 0.0,
"delta": -0.2945,
"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.3251,
"after": 6.0,
"delta": -0.3251,
"percent_delta": -0.0514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4122,
"after": 0.0,
"delta": -0.4122,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4967,
"after": 1.0,
"delta": -0.4967,
"percent_delta": -0.3319,
"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.2732,
"after": 0.0,
"delta": -0.2732,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0702,
"after": 1.0,
"delta": -0.0702,
"percent_delta": -0.0656,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.646,
"after": 2.0,
"delta": 0.354,
"percent_delta": 0.2151,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 1,
"deboosted_metrics": 7,
"better_metrics": 0,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.646,
"after": 2.0,
"delta": 0.354,
"percent_delta": 0.2151,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.4967,
"after": 1.0,
"delta": -0.4967,
"percent_delta": -0.3319,
"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.8409,
"after": 1.0,
"delta": 0.1591,
"percent_delta": 0.1892,
"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.8409,
"after": 1.0,
"delta": 0.1591,
"percent_delta": 0.1892,
"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.2366,
"after": 0.167,
"delta": -0.0696,
"percent_delta": -0.2942,
"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.2833,
"after": 0.167,
"delta": -0.1163,
"percent_delta": -0.4105,
"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.4129,
"after": 0.167,
"delta": -0.2459,
"percent_delta": -0.5955,
"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.4129,
"after": 0.167,
"delta": -0.2459,
"percent_delta": -0.5955,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 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": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0,
"after": 5.0,
"delta": -1.0,
"percent_delta": -0.1667,
"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": 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": 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": 2,
"deboosted_metrics": 3,
"better_metrics": 3,
"worse_metrics": 2,
"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": 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": 2.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.2366,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2833,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4129,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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.2366,
"delta": 0.0696,
"percent_delta": 0.4169,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.167,
"after": 0.2833,
"delta": 0.1163,
"percent_delta": 0.6966,
"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.4129,
"delta": 0.2459,
"percent_delta": 1.4725,
"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.4129,
"delta": 0.2459,
"percent_delta": 1.4725,
"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.175,
"after": 2.0,
"delta": 1.825,
"percent_delta": 10.4286,
"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.99,
"after": 5.0,
"delta": 1.01,
"percent_delta": 0.2531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.234,
"after": 0.2366,
"delta": 0.0026,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.32,
"after": 0.0,
"delta": -0.32,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.93,
"after": 3.0,
"delta": 2.07,
"percent_delta": 2.2258,
"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.293,
"after": 0.2833,
"delta": -0.0097,
"percent_delta": -0.0331,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.518,
"after": 1.0,
"delta": 0.482,
"percent_delta": 0.9305,
"direction": "boost",
"projection_effect": "better",
"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.416,
"after": 0.4129,
"delta": -0.0031,
"percent_delta": -0.0075,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.978,
"after": 1.0,
"delta": 0.022,
"percent_delta": 0.0225,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.93,
"after": 3.0,
"delta": 2.07,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.62,
"after": 0.0,
"delta": -0.62,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "neutral"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.990 | - |
| predicted_AVG | 0.234 | - |
| predicted_BB | 0.320 | - |
| predicted_H | 0.930 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.518 | - |
| predicted_RBI | 0.620 | - |
| predicted_SLG | 0.416 | - |
| predicted_SO | 0.978 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.294 | 0.119 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.325 | 2.335 |
| predicted_AVG | 0.237 | 0.003 |
| predicted_BB | 0.412 | 0.092 |
| predicted_H | 1.506 | 0.576 |
| predicted_HBP | 0.090 | - |
| predicted_HR | 0.273 | 0.113 |
| predicted_OBP | 0.290 | -0.003 |
| predicted_R | 0.850 | 0.332 |
| predicted_RBI | 1.081 | 0.461 |
| predicted_SLG | 0.419 | 0.004 |
| predicted_SO | 1.648 | 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.294 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.325 | 0.000 |
| predicted_AVG | 0.237 | -0.000 |
| predicted_BB | 0.412 | 0.001 |
| predicted_H | 1.497 | -0.009 |
| predicted_HBP | 0.090 | 0.000 |
| predicted_HR | 0.273 | -0.000 |
| predicted_OBP | 0.283 | -0.007 |
| predicted_R | 0.841 | -0.009 |
| predicted_RBI | 1.070 | -0.011 |
| predicted_SLG | 0.413 | -0.007 |
| predicted_SO | 1.646 | -0.002 |
AB rounded to 6 (raw=6.33), rates preserved: AVG=0.237 HR/AB=0.043
| 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.294 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.325 |
| predicted_AVG | 0.167 | -0.070 |
| predicted_BB | 0.000 | -0.412 |
| predicted_H | 1.000 | -0.497 |
| predicted_HR | 0.000 | -0.273 |
| predicted_OBP | 0.167 | -0.116 |
| predicted_R | 1.000 | 0.159 |
| predicted_RBI | 1.000 | -0.070 |
| predicted_SLG | 0.167 | -0.246 |
| predicted_SO | 2.000 | 0.354 |
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 | 5.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 3.000 | 2.000 |
| HBP | 0.000 | 0.000 |
| HR | 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 | 5.000 | 1.000 | 0.000 | 2.000 | 6.000 | 3.000 | 0.000 | 6.000 | 0.2273 | 0.2273 | 0.5455 | 0.2273 | 0.0909 | 0.2727 | 0.0000 | 0.2727 |
| last_10 | 0.20 | 10 | - | 36.000 | 11.000 | 2.000 | 0.000 | 2.000 | 6.000 | 5.000 | 1.000 | 11.000 | 0.3056 | 0.3421 | 0.5278 | 0.3056 | 0.0556 | 0.1667 | 0.0278 | 0.3056 |
| season | 0.60 | 66 | - | 864.000 | 193.000 | 40.000 | 0.000 | 23.000 | 134.000 | 118.000 | 73.000 | 223.000 | 0.2234 | 0.2857 | 0.3495 | 0.2234 | 0.0266 | 0.1551 | 0.0845 | 0.2581 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4460 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.2840 |
| predicted_AVG | 0.2409 |
| predicted_BB | 0.5280 |
| predicted_H | 2.2360 |
| predicted_HBP | 0.0900 |
| predicted_HR | 0.4170 |
| predicted_OBP | 0.2862 |
| predicted_R | 1.2700 |
| predicted_RBI | 1.6660 |
| predicted_SLG | 0.4239 |
| predicted_SO | 2.4970 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1750 | 0.4460 | 0.2945 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9900 | 9.2840 | 6.3251 | model_form_blend |
| predicted_AVG | 0.2340 | 0.2409 | 0.2370 | model_form_blend |
| predicted_BB | 0.3200 | 0.5280 | 0.4117 | model_form_blend |
| predicted_H | 0.9300 | 2.2360 | 1.5060 | model_form_blend |
| predicted_HBP | - | 0.0900 | 0.0900 | form_only |
| predicted_HR | 0.1600 | 0.4170 | 0.2734 | model_form_blend |
| predicted_OBP | 0.2930 | 0.2862 | 0.2900 | model_form_blend |
| predicted_R | 0.5180 | 1.2700 | 0.8497 | model_form_blend |
| predicted_RBI | 0.6200 | 1.6660 | 1.0814 | model_form_blend |
| predicted_SLG | 0.4160 | 0.4239 | 0.4195 | model_form_blend |
| predicted_SO | 0.9780 | 2.4970 | 1.6480 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 228 |
| Season rows before report date | 228 |
| 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 | 5 |
| AB | 5 |
| H | 3 |
| 2B | 2 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| 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 | 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 | 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 | DH |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 605137 |
| playerID | 605137 |
| playerName | Josh Bell |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.9 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.288 |
| sl_xwoba | 0.303 |
| sl_xba | 0.233 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 33.7 |
| sl_barrel_batted_rate | 9.9 |
| sl_hard_hit_percent | 41.4 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 13.6 |
| sl_whiff_percent | 25.8 |
| sl_swing_percent | 51.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.187 | 0.000 | 0.000 | Hitting_2B | 0.186 | 0.000 | -0.186 | 0.000 |
| predicted_3B | 0.018 | 0.000 | 0.000 | Hitting_3B | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_AB | 3.870 | 4.000 | 6.000 | Hitting_AB | 3.769 | 3.000 | 0.231 | 1.000 |
| predicted_AVG | 0.229 | 0.000 | 0.167 | Hitting_AVG | 0.247 | 0.333 | -0.247 | -0.333 |
| predicted_BB | 0.283 | 0.000 | 0.000 | Hitting_BB | 0.285 | 2.000 | -0.285 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_H | 0.890 | 0.000 | 1.000 | Hitting_H | 0.932 | 1.000 | -0.932 | -1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | -0.127 | 0.000 |
| predicted_OBP | 0.300 | 0.000 | 0.167 | Hitting_OBP | 0.306 | 0.600 | -0.306 | -0.600 |
| predicted_R | 0.498 | 0.000 | 1.000 | Hitting_R | 0.493 | 1.000 | -0.493 | -1.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.584 | 0.000 | -0.584 | 0.000 |
| predicted_SLG | 0.416 | 0.000 | 0.167 | Hitting_SLG | 0.407 | 0.333 | -0.407 | -0.333 |
| predicted_SO | 0.712 | 2.000 | 1.000 | Hitting_SO | 0.706 | 0.000 | 1.294 | 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.7120 -> 2.0000 (boost 1.2880, worse) |
| Biggest Deboost | predicted_H: 0.8900 -> 0.0000 (deboost -0.8900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.8700 -> 6.2766 (boost 2.4066, 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.4290 -> 0.4349 (boost 0.0059, better) | predicted_OBP: 0.2996 -> 0.2906 (deboost -0.0090, 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.5481 -> 1.0000 (boost 0.4519, better) | predicted_H: 1.4348 -> 1.0000 (deboost -0.4348, worse) | AB rounded to 6 (raw=6.28), rates preserved: AVG=0.229 HR/AB=0.054 |
| 5 | bvp_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | 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.8412 -> 1.0000 (boost 0.1588, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4349 -> 0.1670 (deboost -0.2679, 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: 6.0000 -> 4.0000 (deboost -2.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.4349 (boost 0.2679, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686797",
"player_name": "Brooks Lee",
"position": "3B",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.187,
"predicted_3B": 0.018,
"predicted_AB": 3.87,
"predicted_AVG": 0.229,
"predicted_BB": 0.283,
"predicted_H": 0.89,
"predicted_HR": 0.17,
"predicted_OBP": 0.3,
"predicted_R": 0.498,
"predicted_RBI": 0.54,
"predicted_SLG": 0.416,
"predicted_SO": 0.712
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2284,
"predicted_3B": 0.022,
"predicted_AB": 6.2766,
"predicted_AVG": 0.2295,
"predicted_BB": 0.5474,
"predicted_H": 1.4438,
"predicted_HBP": 0.055,
"predicted_HR": 0.341,
"predicted_OBP": 0.2996,
"predicted_R": 0.85,
"predicted_RBI": 0.9484,
"predicted_SLG": 0.429,
"predicted_SO": 1.0971
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.187,
"after": 0.2284,
"delta": 0.0414,
"percent_delta": 0.2214,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.018,
"after": 0.022,
"delta": 0.004,
"percent_delta": 0.2222,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.87,
"after": 6.2766,
"delta": 2.4066,
"percent_delta": 0.6219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2295,
"delta": 0.0005,
"percent_delta": 0.0022,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.283,
"after": 0.5474,
"delta": 0.2644,
"percent_delta": 0.9343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 1.4438,
"delta": 0.5538,
"percent_delta": 0.6222,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.341,
"delta": 0.171,
"percent_delta": 1.0059,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2996,
"delta": -0.0004,
"percent_delta": -0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.498,
"after": 0.85,
"delta": 0.352,
"percent_delta": 0.7068,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.9484,
"delta": 0.4084,
"percent_delta": 0.7563,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.429,
"delta": 0.013,
"percent_delta": 0.0313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.712,
"after": 1.0971,
"delta": 0.3851,
"percent_delta": 0.5409,
"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.87,
"after": 6.2766,
"delta": 2.4066,
"percent_delta": 0.6219,
"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.2284,
"predicted_3B": 0.022,
"predicted_AB": 6.2766,
"predicted_AVG": 0.2286,
"predicted_BB": 0.5481,
"predicted_H": 1.4348,
"predicted_HBP": 0.055,
"predicted_HR": 0.3408,
"predicted_OBP": 0.2906,
"predicted_R": 0.8412,
"predicted_RBI": 0.9385,
"predicted_SLG": 0.4349,
"predicted_SO": 1.0958
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2284,
"after": 0.2284,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.022,
"after": 0.022,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.2766,
"after": 6.2766,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2295,
"after": 0.2286,
"delta": -0.0009,
"percent_delta": -0.0039,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5474,
"after": 0.5481,
"delta": 0.0007,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4438,
"after": 1.4348,
"delta": -0.009,
"percent_delta": -0.0062,
"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.341,
"after": 0.3408,
"delta": -0.0002,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2996,
"after": 0.2906,
"delta": -0.009,
"percent_delta": -0.03,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.85,
"after": 0.8412,
"delta": -0.0088,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9484,
"after": 0.9385,
"delta": -0.0099,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.429,
"after": 0.4349,
"delta": 0.0059,
"percent_delta": 0.0138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0971,
"after": 1.0958,
"delta": -0.0013,
"percent_delta": -0.0012,
"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.429,
"after": 0.4349,
"delta": 0.0059,
"percent_delta": 0.0138,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2996,
"after": 0.2906,
"delta": -0.009,
"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.28), rates preserved: AVG=0.229 HR/AB=0.054",
"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.2284,
"after": 0.0,
"delta": -0.2284,
"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": 6.2766,
"after": 6.0,
"delta": -0.2766,
"percent_delta": -0.0441,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5481,
"after": 1.0,
"delta": 0.4519,
"percent_delta": 0.8245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4348,
"after": 1.0,
"delta": -0.4348,
"percent_delta": -0.303,
"direction": "deboost",
"projection_effect": "worse",
"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.3408,
"after": 0.0,
"delta": -0.3408,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9385,
"after": 1.0,
"delta": 0.0615,
"percent_delta": 0.0655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0958,
"after": 1.0,
"delta": -0.0958,
"percent_delta": -0.0874,
"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.5481,
"after": 1.0,
"delta": 0.4519,
"percent_delta": 0.8245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.4348,
"after": 1.0,
"delta": -0.4348,
"percent_delta": -0.303,
"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": 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": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"model_expectation": 0.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": 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.8412,
"after": 1.0,
"delta": 0.1588,
"percent_delta": 0.1888,
"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.8412,
"after": 1.0,
"delta": 0.1588,
"percent_delta": 0.1888,
"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": 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.2286,
"after": 0.167,
"delta": -0.0616,
"percent_delta": -0.2695,
"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.2906,
"after": 0.167,
"delta": -0.1236,
"percent_delta": -0.4253,
"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.4349,
"after": 0.167,
"delta": -0.2679,
"percent_delta": -0.616,
"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.4349,
"after": 0.167,
"delta": -0.2679,
"percent_delta": -0.616,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"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": 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.2286,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 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.4349,
"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.2286,
"delta": 0.0616,
"percent_delta": 0.3689,
"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.2906,
"delta": 0.1236,
"percent_delta": 0.7398,
"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.4349,
"delta": 0.2679,
"percent_delta": 1.6041,
"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.4349,
"delta": 0.2679,
"percent_delta": 1.6041,
"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.187,
"after": 0.0,
"delta": -0.187,
"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.87,
"after": 4.0,
"delta": 0.13,
"percent_delta": 0.0336,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.229,
"after": 0.2286,
"delta": -0.0004,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.283,
"after": 0.0,
"delta": -0.283,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.89,
"after": 0.0,
"delta": -0.89,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.3,
"after": 0.2906,
"delta": -0.0094,
"percent_delta": -0.0313,
"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.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.4349,
"delta": 0.0189,
"percent_delta": 0.0454,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.712,
"after": 2.0,
"delta": 1.288,
"percent_delta": 1.809,
"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.712,
"after": 2.0,
"delta": 1.288,
"percent_delta": 1.809,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.89,
"after": 0.0,
"delta": -0.89,
"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.018 | - |
| predicted_AB | 3.870 | - |
| predicted_AVG | 0.229 | - |
| predicted_BB | 0.283 | - |
| predicted_H | 0.890 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.300 | - |
| predicted_R | 0.498 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.416 | - |
| predicted_SO | 0.712 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.228 | 0.041 |
| predicted_3B | 0.022 | 0.004 |
| predicted_AB | 6.277 | 2.407 |
| predicted_AVG | 0.230 | 0.001 |
| predicted_BB | 0.547 | 0.264 |
| predicted_H | 1.444 | 0.554 |
| predicted_HBP | 0.055 | - |
| predicted_HR | 0.341 | 0.171 |
| predicted_OBP | 0.300 | -0.000 |
| predicted_R | 0.850 | 0.352 |
| predicted_RBI | 0.948 | 0.408 |
| predicted_SLG | 0.429 | 0.013 |
| predicted_SO | 1.097 | 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.228 | 0.000 |
| predicted_3B | 0.022 | 0.000 |
| predicted_AB | 6.277 | 0.000 |
| predicted_AVG | 0.229 | -0.001 |
| predicted_BB | 0.548 | 0.001 |
| predicted_H | 1.435 | -0.009 |
| predicted_HBP | 0.055 | 0.000 |
| predicted_HR | 0.341 | -0.000 |
| predicted_OBP | 0.291 | -0.009 |
| predicted_R | 0.841 | -0.009 |
| predicted_RBI | 0.939 | -0.010 |
| predicted_SLG | 0.435 | 0.006 |
| predicted_SO | 1.096 | -0.001 |
AB rounded to 6 (raw=6.28), rates preserved: AVG=0.229 HR/AB=0.054
| 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=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 | -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 | 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.228 |
| predicted_3B | 0.000 | -0.022 |
| predicted_AB | 6.000 | -0.277 |
| predicted_AVG | 0.167 | -0.062 |
| predicted_BB | 0.000 | -0.548 |
| predicted_H | 1.000 | -0.435 |
| predicted_HR | 0.000 | -0.341 |
| predicted_OBP | 0.167 | -0.124 |
| predicted_R | 1.000 | 0.159 |
| predicted_RBI | 1.000 | 0.061 |
| predicted_SLG | 0.167 | -0.268 |
| predicted_SO | 1.000 | -0.096 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 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 | 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 | 3.000 | 3.000 | 3.000 | 2.000 | 0.2000 | 0.3043 | 0.5000 | 0.2000 | 0.1000 | 0.1500 | 0.1500 | 0.1000 |
| last_10 | 0.20 | 10 | - | 39.000 | 8.000 | 0.000 | 0.000 | 4.000 | 7.000 | 6.000 | 4.000 | 7.000 | 0.2051 | 0.2727 | 0.5128 | 0.2051 | 0.1026 | 0.1795 | 0.1026 | 0.1795 |
| season | 0.60 | 63 | - | 833.000 | 206.000 | 41.000 | 4.000 | 28.000 | 128.000 | 109.000 | 62.000 | 156.000 | 0.2473 | 0.3053 | 0.4070 | 0.2473 | 0.0336 | 0.1537 | 0.0744 | 0.1873 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2810 |
| predicted_3B | 0.0270 |
| predicted_AB | 9.3320 |
| predicted_AVG | 0.2301 |
| predicted_BB | 0.8830 |
| predicted_H | 2.1470 |
| predicted_HBP | 0.0550 |
| predicted_HR | 0.5580 |
| predicted_OBP | 0.2991 |
| predicted_R | 1.2970 |
| predicted_RBI | 1.4670 |
| predicted_SLG | 0.4455 |
| predicted_SO | 1.5860 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1870 | 0.2810 | 0.2284 | model_form_blend |
| predicted_3B | 0.0180 | 0.0270 | 0.0220 | model_form_blend |
| predicted_AB | 3.8700 | 9.3320 | 6.2766 | model_form_blend |
| predicted_AVG | 0.2290 | 0.2301 | 0.2295 | model_form_blend |
| predicted_BB | 0.2830 | 0.8830 | 0.5474 | model_form_blend |
| predicted_H | 0.8900 | 2.1470 | 1.4438 | model_form_blend |
| predicted_HBP | - | 0.0550 | 0.0550 | form_only |
| predicted_HR | 0.1700 | 0.5580 | 0.3410 | model_form_blend |
| predicted_OBP | 0.3000 | 0.2991 | 0.2996 | model_form_blend |
| predicted_R | 0.4980 | 1.2970 | 0.8500 | model_form_blend |
| predicted_RBI | 0.5400 | 1.4670 | 0.9484 | model_form_blend |
| predicted_SLG | 0.4160 | 0.4455 | 0.4290 | model_form_blend |
| predicted_SO | 0.7120 | 1.5860 | 1.0971 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 221 |
| Season rows before report date | 221 |
| 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 | 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.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.333 |
| Hitting_BB | 2 |
| Hitting_GIDP | 1 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 | 20260610_MIN@DET |
| game_type | full |
| mlbID | 686797 |
| playerID | 686797 |
| playerName | Brooks Lee |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.5 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.316 |
| sl_xwoba | 0.275 |
| sl_xba | 0.223 |
| sl_xslg | 0.338 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 5.2 |
| sl_hard_hit_percent | 30.2 |
| sl_exit_velocity_avg | 87.5 |
| sl_launch_angle_avg | 12.5 |
| sl_whiff_percent | 22.2 |
| sl_swing_percent | 51.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.098 | 0.000 | 0.000 | Hitting_2B | 0.098 | 0.000 | -0.098 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.500 | 3.000 | 6.000 | Hitting_AB | 3.398 | 4.000 | -0.398 | -1.000 |
| predicted_AVG | 0.223 | 0.000 | 0.167 | Hitting_AVG | 0.170 | 0.250 | -0.170 | -0.250 |
| predicted_BB | 0.398 | 1.000 | 1.000 | Hitting_BB | 0.398 | 1.000 | 0.602 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.780 | 0.000 | 1.000 | Hitting_H | 0.577 | 1.000 | -0.577 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.106 | 1.000 | -0.106 | -1.000 |
| predicted_OBP | 0.293 | 0.250 | 0.286 | Hitting_OBP | 0.267 | 0.400 | -0.017 | -0.150 |
| predicted_R | 0.358 | 0.000 | 1.000 | Hitting_R | 0.358 | 1.000 | -0.358 | -1.000 |
| predicted_RBI | 0.400 | 0.000 | 1.000 | Hitting_RBI | 0.439 | 1.000 | -0.439 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.089 | 0.000 | -0.089 | 0.000 |
| predicted_SLG | 0.366 | 0.000 | 0.167 | Hitting_SLG | 0.292 | 1.000 | -0.292 | -1.000 |
| predicted_SO | 1.163 | 0.000 | 2.000 | Hitting_SO | 1.163 | 0.000 | -1.163 | 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_BB: 0.3980 -> 1.0000 (boost 0.6020, better) |
| Biggest Deboost | predicted_SO: 1.1630 -> 0.0000 (deboost -1.1630, 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 | 8 | 3 | 7 | 4 | predicted_AB: 3.5000 -> 6.0241 (boost 2.5241, better) | predicted_AVG: 0.2230 -> 0.2076 (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.3520 -> 0.3419 (deboost -0.0101, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_RBI: 0.6571 -> 1.0000 (boost 0.3429, better) | predicted_HR: 0.2217 -> 0.0000 (deboost -0.2217, worse) | AB rounded to 6 (raw=6.02), rates preserved: AVG=0.198 HR/AB=0.037 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5688 -> 1.0000 (boost 0.4312, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2785 -> 0.2860 (boost 0.0075, better) | predicted_SLG: 0.3419 -> 0.1670 (deboost -0.1749, 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.3419 (boost 0.1749, better) | predicted_OBP: 0.2860 -> 0.2785 (deboost -0.0075, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668904",
"player_name": "Royce Lewis",
"position": "2B",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.098,
"predicted_3B": 0.0,
"predicted_AB": 3.5,
"predicted_AVG": 0.223,
"predicted_BB": 0.398,
"predicted_H": 0.78,
"predicted_HR": 0.13,
"predicted_OBP": 0.293,
"predicted_R": 0.358,
"predicted_RBI": 0.4,
"predicted_SLG": 0.366,
"predicted_SO": 1.163
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2006,
"predicted_3B": 0.0009,
"predicted_AB": 6.0241,
"predicted_AVG": 0.2076,
"predicted_BB": 0.6728,
"predicted_H": 1.1994,
"predicted_HBP": 0.125,
"predicted_HR": 0.2218,
"predicted_OBP": 0.2855,
"predicted_R": 0.5748,
"predicted_RBI": 0.664,
"predicted_SLG": 0.352,
"predicted_SO": 1.9226
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.098,
"after": 0.2006,
"delta": 0.1026,
"percent_delta": 1.0469,
"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.5,
"after": 6.0241,
"delta": 2.5241,
"percent_delta": 0.7212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2076,
"delta": -0.0154,
"percent_delta": -0.0691,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.398,
"after": 0.6728,
"delta": 0.2748,
"percent_delta": 0.6905,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 1.1994,
"delta": 0.4194,
"percent_delta": 0.5377,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2218,
"delta": 0.0918,
"percent_delta": 0.7062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2855,
"delta": -0.0075,
"percent_delta": -0.0256,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.358,
"after": 0.5748,
"delta": 0.2168,
"percent_delta": 0.6056,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.664,
"delta": 0.264,
"percent_delta": 0.66,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.366,
"after": 0.352,
"delta": -0.014,
"percent_delta": -0.0383,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.163,
"after": 1.9226,
"delta": 0.7596,
"percent_delta": 0.6531,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 8,
"deboosted_metrics": 3,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5,
"after": 6.0241,
"delta": 2.5241,
"percent_delta": 0.7212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2076,
"delta": -0.0154,
"percent_delta": -0.0691,
"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": 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.2006,
"predicted_3B": 0.0009,
"predicted_AB": 6.0241,
"predicted_AVG": 0.1979,
"predicted_BB": 0.6736,
"predicted_H": 1.192,
"predicted_HBP": 0.125,
"predicted_HR": 0.2217,
"predicted_OBP": 0.2785,
"predicted_R": 0.5688,
"predicted_RBI": 0.6571,
"predicted_SLG": 0.3419,
"predicted_SO": 1.9203
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2006,
"after": 0.2006,
"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.0241,
"after": 6.0241,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2076,
"after": 0.1979,
"delta": -0.0097,
"percent_delta": -0.0467,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6728,
"after": 0.6736,
"delta": 0.0008,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1994,
"after": 1.192,
"delta": -0.0074,
"percent_delta": -0.0062,
"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.2218,
"after": 0.2217,
"delta": -0.0001,
"percent_delta": -0.0005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2855,
"after": 0.2785,
"delta": -0.007,
"percent_delta": -0.0245,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5748,
"after": 0.5688,
"delta": -0.006,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.664,
"after": 0.6571,
"delta": -0.0069,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.3419,
"delta": -0.0101,
"percent_delta": -0.0287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9226,
"after": 1.9203,
"delta": -0.0023,
"percent_delta": -0.0012,
"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.352,
"after": 0.3419,
"delta": -0.0101,
"percent_delta": -0.0287,
"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.198 HR/AB=0.037",
"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.2006,
"after": 0.0,
"delta": -0.2006,
"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.0241,
"after": 6.0,
"delta": -0.0241,
"percent_delta": -0.004,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6736,
"after": 1.0,
"delta": 0.3264,
"percent_delta": 0.4846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.192,
"after": 1.0,
"delta": -0.192,
"percent_delta": -0.1611,
"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.2217,
"after": 0.0,
"delta": -0.2217,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6571,
"after": 1.0,
"delta": 0.3429,
"percent_delta": 0.5218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9203,
"after": 2.0,
"delta": 0.0797,
"percent_delta": 0.0415,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6571,
"after": 1.0,
"delta": 0.3429,
"percent_delta": 0.5218,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.2217,
"after": 0.0,
"delta": -0.2217,
"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.5688,
"after": 1.0,
"delta": 0.4312,
"percent_delta": 0.7581,
"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.5688,
"after": 1.0,
"delta": 0.4312,
"percent_delta": 0.7581,
"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.1979,
"after": 0.167,
"delta": -0.0309,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2785,
"after": 0.286,
"delta": 0.0075,
"percent_delta": 0.0269,
"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.3419,
"after": 0.167,
"delta": -0.1749,
"percent_delta": -0.5116,
"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.2785,
"after": 0.286,
"delta": 0.0075,
"percent_delta": 0.0269,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3419,
"after": 0.167,
"delta": -0.1749,
"percent_delta": -0.5116,
"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": 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": 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.1979,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2785,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3419,
"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.1979,
"delta": 0.0309,
"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.286,
"after": 0.2785,
"delta": -0.0075,
"percent_delta": -0.0261,
"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.3419,
"delta": 0.1749,
"percent_delta": 1.047,
"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.3419,
"delta": 0.1749,
"percent_delta": 1.047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2785,
"delta": -0.0075,
"percent_delta": -0.0261,
"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.098,
"after": 0.0,
"delta": -0.098,
"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.5,
"after": 3.0,
"delta": -0.5,
"percent_delta": -0.1429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.1979,
"delta": -0.0251,
"percent_delta": -0.1126,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.398,
"after": 1.0,
"delta": 0.602,
"percent_delta": 1.5126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.78,
"after": 0.0,
"delta": -0.78,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2785,
"delta": -0.0145,
"percent_delta": -0.0495,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.358,
"after": 0.0,
"delta": -0.358,
"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.366,
"after": 0.3419,
"delta": -0.0241,
"percent_delta": -0.0658,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.163,
"after": 0.0,
"delta": -1.163,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.398,
"after": 1.0,
"delta": 0.602,
"percent_delta": 1.5126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.163,
"after": 0.0,
"delta": -1.163,
"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.098 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.500 | - |
| predicted_AVG | 0.223 | - |
| predicted_BB | 0.398 | - |
| predicted_H | 0.780 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.358 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.366 | - |
| predicted_SO | 1.163 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.103 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 6.024 | 2.524 |
| predicted_AVG | 0.208 | -0.015 |
| predicted_BB | 0.673 | 0.275 |
| predicted_H | 1.199 | 0.419 |
| predicted_HBP | 0.125 | - |
| predicted_HR | 0.222 | 0.092 |
| predicted_OBP | 0.285 | -0.008 |
| predicted_R | 0.575 | 0.217 |
| predicted_RBI | 0.664 | 0.264 |
| predicted_SLG | 0.352 | -0.014 |
| predicted_SO | 1.923 | 0.760 |
Step 3: 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.001 | 0.000 |
| predicted_AB | 6.024 | 0.000 |
| predicted_AVG | 0.198 | -0.010 |
| predicted_BB | 0.674 | 0.001 |
| predicted_H | 1.192 | -0.007 |
| predicted_HBP | 0.125 | 0.000 |
| predicted_HR | 0.222 | -0.000 |
| predicted_OBP | 0.279 | -0.007 |
| predicted_R | 0.569 | -0.006 |
| predicted_RBI | 0.657 | -0.007 |
| predicted_SLG | 0.342 | -0.010 |
| predicted_SO | 1.920 | -0.002 |
AB rounded to 6 (raw=6.02), rates preserved: AVG=0.198 HR/AB=0.037
| 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.001 |
| predicted_AB | 6.000 | -0.024 |
| predicted_AVG | 0.167 | -0.031 |
| predicted_BB | 1.000 | 0.326 |
| predicted_H | 1.000 | -0.192 |
| predicted_HR | 0.000 | -0.222 |
| predicted_OBP | 0.286 | 0.007 |
| predicted_R | 1.000 | 0.431 |
| predicted_RBI | 1.000 | 0.343 |
| predicted_SLG | 0.167 | -0.175 |
| predicted_SO | 2.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 | 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 | 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 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 | 2.000 | 4.000 | 0.2222 | 0.3000 | 0.4444 | 0.2222 | 0.0556 | 0.0556 | 0.1111 | 0.2222 |
| last_10 | 0.20 | 6 | - | 36.000 | 7.000 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 | 2.000 | 16.000 | 0.1944 | 0.2368 | 0.3056 | 0.1944 | 0.0278 | 0.0278 | 0.0556 | 0.4444 |
| season | 0.60 | 35 | - | 418.000 | 71.000 | 12.000 | 0.000 | 13.000 | 54.000 | 44.000 | 49.000 | 143.000 | 0.1699 | 0.2667 | 0.2919 | 0.1699 | 0.0311 | 0.1292 | 0.1172 | 0.3421 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3350 |
| predicted_3B | 0.0020 |
| predicted_AB | 9.3320 |
| predicted_AVG | 0.1874 |
| predicted_BB | 1.0330 |
| predicted_H | 1.7490 |
| predicted_HBP | 0.1250 |
| predicted_HR | 0.3420 |
| predicted_OBP | 0.2756 |
| predicted_R | 0.8590 |
| predicted_RBI | 1.0100 |
| predicted_SLG | 0.3336 |
| predicted_SO | 2.9180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0980 | 0.3350 | 0.2006 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.5000 | 9.3320 | 6.0241 | model_form_blend |
| predicted_AVG | 0.2230 | 0.1874 | 0.2076 | model_form_blend |
| predicted_BB | 0.3980 | 1.0330 | 0.6728 | model_form_blend |
| predicted_H | 0.7800 | 1.7490 | 1.1994 | model_form_blend |
| predicted_HBP | - | 0.1250 | 0.1250 | form_only |
| predicted_HR | 0.1300 | 0.3420 | 0.2218 | model_form_blend |
| predicted_OBP | 0.2930 | 0.2756 | 0.2855 | model_form_blend |
| predicted_R | 0.3580 | 0.8590 | 0.5748 | model_form_blend |
| predicted_RBI | 0.4000 | 1.0100 | 0.6640 | model_form_blend |
| predicted_SLG | 0.3660 | 0.3336 | 0.3520 | model_form_blend |
| predicted_SO | 1.1630 | 2.9180 | 1.9226 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 123 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.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 | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 668904 |
| playerID | 668904 |
| playerName | Royce Lewis |
| pos | 3B |
| started | True |
| startingPosition | 1B |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.9 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.267 |
| sl_xwoba | 0.291 |
| sl_xba | 0.206 |
| sl_xslg | 0.337 |
| sl_sweet_spot_percent | 31.7 |
| sl_barrel_batted_rate | 11.0 |
| sl_hard_hit_percent | 39.0 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 15.3 |
| sl_whiff_percent | 35.7 |
| 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.045 | 0.000 | 0.000 | Hitting_2B | 0.044 | 0.000 | -0.044 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.350 | 2.000 | 5.000 | Hitting_AB | 3.329 | 5.000 | -1.329 | -3.000 |
| predicted_AVG | 0.255 | 0.000 | 0.200 | Hitting_AVG | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_BB | 0.344 | 1.000 | 0.000 | Hitting_BB | 0.348 | 0.000 | 0.652 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.790 | 0.000 | 1.000 | Hitting_H | 0.633 | 0.000 | -0.633 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_OBP | 0.328 | 0.500 | 0.200 | Hitting_OBP | 0.287 | 0.000 | 0.213 | 0.500 |
| predicted_R | 0.191 | 0.000 | 0.000 | Hitting_R | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_RBI | 0.480 | 0.000 | 1.000 | Hitting_RBI | 0.487 | 0.000 | -0.487 | 0.000 |
| predicted_SLG | 0.401 | 0.000 | 0.200 | Hitting_SLG | 0.238 | 0.000 | -0.238 | 0.000 |
| predicted_SO | 0.790 | 1.000 | 1.000 | Hitting_SO | 0.785 | 1.000 | 0.215 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.3440 -> 1.0000 (boost 0.6560, 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 | 8 | 7 | 1 | 6 | 2 | predicted_AB: 3.3500 -> 5.3536 (boost 2.0036, better) | predicted_SLG: 0.4010 -> 0.3914 (deboost -0.0096, 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.3914 -> 0.3632 (deboost -0.0282, 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.8313 -> 1.0000 (boost 0.1687, better) | predicted_BB: 0.5119 -> 0.0000 (deboost -0.5119, worse) | AB rounded to 5 (raw=5.35), rates preserved: AVG=0.245 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3188 -> 0.0000 (deboost -0.3188, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3632 -> 0.2000 (deboost -0.1632, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 2 | 3 | 2 | 3 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 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.3632 (boost 0.1632, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "605170",
"player_name": "Victor Caratini",
"position": "C",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.045,
"predicted_3B": 0.0,
"predicted_AB": 3.35,
"predicted_AVG": 0.255,
"predicted_BB": 0.344,
"predicted_H": 0.79,
"predicted_HR": 0.1,
"predicted_OBP": 0.328,
"predicted_R": 0.191,
"predicted_RBI": 0.48,
"predicted_SLG": 0.401,
"predicted_SO": 0.79
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local 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.0004,
"predicted_AB": 5.3536,
"predicted_AVG": 0.2539,
"predicted_BB": 0.5113,
"predicted_H": 1.32,
"predicted_HBP": 0.401,
"predicted_HR": 0.145,
"predicted_OBP": 0.3309,
"predicted_R": 0.3221,
"predicted_RBI": 0.84,
"predicted_SLG": 0.3914,
"predicted_SO": 1.1968
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.045,
"after": 0.197,
"delta": 0.152,
"percent_delta": 3.3778,
"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.35,
"after": 5.3536,
"delta": 2.0036,
"percent_delta": 0.5981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.2539,
"delta": -0.0011,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.344,
"after": 0.5113,
"delta": 0.1673,
"percent_delta": 0.4863,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 1.32,
"delta": 0.53,
"percent_delta": 0.6709,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.145,
"delta": 0.045,
"percent_delta": 0.45,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3309,
"delta": 0.0029,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.191,
"after": 0.3221,
"delta": 0.1311,
"percent_delta": 0.6864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.84,
"delta": 0.36,
"percent_delta": 0.75,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.3914,
"delta": -0.0096,
"percent_delta": -0.0239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.79,
"after": 1.1968,
"delta": 0.4068,
"percent_delta": 0.5149,
"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.35,
"after": 5.3536,
"delta": 2.0036,
"percent_delta": 0.5981,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.401,
"after": 0.3914,
"delta": -0.0096,
"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": 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.197,
"predicted_3B": 0.0004,
"predicted_AB": 5.3536,
"predicted_AVG": 0.245,
"predicted_BB": 0.5119,
"predicted_H": 1.3118,
"predicted_HBP": 0.401,
"predicted_HR": 0.1449,
"predicted_OBP": 0.3109,
"predicted_R": 0.3188,
"predicted_RBI": 0.8313,
"predicted_SLG": 0.3632,
"predicted_SO": 1.1954
},
"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.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3536,
"after": 5.3536,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2539,
"after": 0.245,
"delta": -0.0089,
"percent_delta": -0.0351,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5113,
"after": 0.5119,
"delta": 0.0006,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.32,
"after": 1.3118,
"delta": -0.0082,
"percent_delta": -0.0062,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.401,
"after": 0.401,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.145,
"after": 0.1449,
"delta": -0.0001,
"percent_delta": -0.0007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3309,
"after": 0.3109,
"delta": -0.02,
"percent_delta": -0.0604,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3221,
"after": 0.3188,
"delta": -0.0033,
"percent_delta": -0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.84,
"after": 0.8313,
"delta": -0.0087,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3914,
"after": 0.3632,
"delta": -0.0282,
"percent_delta": -0.072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1968,
"after": 1.1954,
"delta": -0.0014,
"percent_delta": -0.0012,
"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.3914,
"after": 0.3632,
"delta": -0.0282,
"percent_delta": -0.072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.35), rates preserved: AVG=0.245 HR/AB=0.027",
"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.197,
"after": 0.0,
"delta": -0.197,
"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.3536,
"after": 5.0,
"delta": -0.3536,
"percent_delta": -0.066,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5119,
"after": 0.0,
"delta": -0.5119,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3118,
"after": 1.0,
"delta": -0.3118,
"percent_delta": -0.2377,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.401,
"after": 0.0,
"delta": -0.401,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1449,
"after": 0.0,
"delta": -0.1449,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8313,
"after": 1.0,
"delta": 0.1687,
"percent_delta": 0.2029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1954,
"after": 1.0,
"delta": -0.1954,
"percent_delta": -0.1635,
"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.8313,
"after": 1.0,
"delta": 0.1687,
"percent_delta": 0.2029,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.5119,
"after": 0.0,
"delta": -0.5119,
"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": 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.3188,
"after": 0.0,
"delta": -0.3188,
"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.3188,
"after": 0.0,
"delta": -0.3188,
"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.245,
"after": 0.2,
"delta": -0.045,
"percent_delta": -0.1837,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3109,
"after": 0.2,
"delta": -0.1109,
"percent_delta": -0.3567,
"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.3632,
"after": 0.2,
"delta": -0.1632,
"percent_delta": -0.4493,
"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.3632,
"after": 0.2,
"delta": -0.1632,
"percent_delta": -0.4493,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 2.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 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": 2,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 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.245,
"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.3109,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3632,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.245,
"delta": 0.045,
"percent_delta": 0.2252,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.3109,
"delta": 0.1109,
"percent_delta": 0.5546,
"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.3632,
"delta": 0.1632,
"percent_delta": 0.8159,
"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.3632,
"delta": 0.1632,
"percent_delta": 0.8159,
"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.045,
"after": 0.0,
"delta": -0.045,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.35,
"after": 2.0,
"delta": -1.35,
"percent_delta": -0.403,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.255,
"after": 0.245,
"delta": -0.01,
"percent_delta": -0.0392,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.344,
"after": 1.0,
"delta": 0.656,
"percent_delta": 1.907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.328,
"after": 0.3109,
"delta": -0.0171,
"percent_delta": -0.0521,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.191,
"after": 0.0,
"delta": -0.191,
"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.401,
"after": 0.3632,
"delta": -0.0378,
"percent_delta": -0.0943,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.79,
"after": 1.0,
"delta": 0.21,
"percent_delta": 0.2658,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 2,
"deboosted_metrics": 8,
"better_metrics": 1,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.344,
"after": 1.0,
"delta": 0.656,
"percent_delta": 1.907,
"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.045 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.350 | - |
| predicted_AVG | 0.255 | - |
| predicted_BB | 0.344 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.328 | - |
| predicted_R | 0.191 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.401 | - |
| predicted_SO | 0.790 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.152 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.354 | 2.004 |
| predicted_AVG | 0.254 | -0.001 |
| predicted_BB | 0.511 | 0.167 |
| predicted_H | 1.320 | 0.530 |
| predicted_HBP | 0.401 | - |
| predicted_HR | 0.145 | 0.045 |
| predicted_OBP | 0.331 | 0.003 |
| predicted_R | 0.322 | 0.131 |
| predicted_RBI | 0.840 | 0.360 |
| predicted_SLG | 0.391 | -0.010 |
| predicted_SO | 1.197 | 0.407 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.197 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.354 | 0.000 |
| predicted_AVG | 0.245 | -0.009 |
| predicted_BB | 0.512 | 0.001 |
| predicted_H | 1.312 | -0.008 |
| predicted_HBP | 0.401 | 0.000 |
| predicted_HR | 0.145 | -0.000 |
| predicted_OBP | 0.311 | -0.020 |
| predicted_R | 0.319 | -0.003 |
| predicted_RBI | 0.831 | -0.009 |
| predicted_SLG | 0.363 | -0.028 |
| predicted_SO | 1.195 | -0.001 |
AB rounded to 5 (raw=5.35), rates preserved: AVG=0.245 HR/AB=0.027
| 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.197 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.354 |
| predicted_AVG | 0.200 | -0.045 |
| predicted_BB | 0.000 | -0.512 |
| predicted_H | 1.000 | -0.312 |
| predicted_HR | 0.000 | -0.145 |
| predicted_OBP | 0.200 | -0.111 |
| predicted_R | 0.000 | -0.319 |
| predicted_RBI | 1.000 | 0.169 |
| predicted_SLG | 0.200 | -0.163 |
| 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 | 2.000 | -3.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 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 | - | 16.000 | 6.000 | 2.000 | 0.000 | 1.000 | 3.000 | 1.000 | 1.000 | 3.000 | 0.3750 | 0.4444 | 0.6875 | 0.3750 | 0.0625 | 0.1875 | 0.0625 | 0.1875 |
| last_10 | 0.20 | 9 | - | 33.000 | 11.000 | 3.000 | 0.000 | 1.000 | 7.000 | 2.000 | 3.000 | 6.000 | 0.3333 | 0.3846 | 0.5152 | 0.3333 | 0.0303 | 0.2121 | 0.0909 | 0.1818 |
| season | 0.60 | 48 | - | 526.000 | 100.000 | 7.000 | 0.000 | 6.000 | 77.000 | 30.000 | 54.000 | 124.000 | 0.1901 | 0.2864 | 0.2376 | 0.1901 | 0.0114 | 0.1464 | 0.1027 | 0.2357 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3930 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.9360 |
| predicted_AVG | 0.2524 |
| predicted_BB | 0.7270 |
| predicted_H | 2.0030 |
| predicted_HBP | 0.4010 |
| predicted_HR | 0.2030 |
| predicted_OBP | 0.3347 |
| predicted_R | 0.4910 |
| predicted_RBI | 1.3040 |
| predicted_SLG | 0.3790 |
| predicted_SO | 1.7210 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0450 | 0.3930 | 0.1970 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3500 | 7.9360 | 5.3536 | model_form_blend |
| predicted_AVG | 0.2550 | 0.2524 | 0.2539 | model_form_blend |
| predicted_BB | 0.3440 | 0.7270 | 0.5113 | model_form_blend |
| predicted_H | 0.7900 | 2.0030 | 1.3200 | model_form_blend |
| predicted_HBP | - | 0.4010 | 0.4010 | form_only |
| predicted_HR | 0.1000 | 0.2030 | 0.1450 | model_form_blend |
| predicted_OBP | 0.3280 | 0.3347 | 0.3309 | model_form_blend |
| predicted_R | 0.1910 | 0.4910 | 0.3221 | model_form_blend |
| predicted_RBI | 0.4800 | 1.3040 | 0.8400 | model_form_blend |
| predicted_SLG | 0.4010 | 0.3790 | 0.3914 | model_form_blend |
| predicted_SO | 0.7900 | 1.7210 | 1.1968 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 158 |
| Season rows before report date | 158 |
| 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 | 4 |
| AB | 2 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| 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 | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 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 | 20260609_MIN@DET |
| game_type | full |
| mlbID | 605170 |
| playerID | 605170 |
| playerName | Victor Caratini |
| pos | C |
| started | True |
| startingPosition | C |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-09 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.276 |
| sl_xwoba | 0.332 |
| sl_xba | 0.246 |
| sl_xslg | 0.382 |
| sl_sweet_spot_percent | 39.8 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 39.0 |
| sl_exit_velocity_avg | 88.6 |
| sl_launch_angle_avg | 11.9 |
| sl_whiff_percent | 21.2 |
| sl_swing_percent | 42.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.095 | 0.000 | 0.000 | Hitting_2B | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.219 | 4.000 | 4.000 | Hitting_AB | 3.189 | 4.000 | 0.811 | 0.000 |
| predicted_AVG | 0.268 | 0.250 | 0.250 | Hitting_AVG | 0.234 | 0.000 | 0.016 | 0.250 |
| predicted_BB | 0.181 | 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.690 | 1.000 | 1.000 | Hitting_H | 0.745 | 0.000 | 0.255 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.132 | 0.000 | -0.132 | 0.000 |
| predicted_OBP | 0.305 | 0.250 | 0.250 | Hitting_OBP | 0.278 | 0.000 | -0.028 | 0.250 |
| predicted_R | 0.324 | 1.000 | 0.000 | Hitting_R | 0.321 | 0.000 | 0.679 | 1.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.660 | 0.000 | -0.660 | 0.000 |
| predicted_SLG | 0.409 | 0.250 | 0.250 | Hitting_SLG | 0.388 | 0.000 | -0.138 | 0.250 |
| predicted_SO | 1.143 | 1.000 | 1.000 | Hitting_SO | 1.132 | 3.000 | -0.132 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 3.2190 -> 4.0000 (boost 0.7810, better) |
| Biggest Deboost | predicted_RBI: 0.5100 -> 0.0000 (deboost -0.5100, 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.2190 -> 4.3281 (boost 1.1091, better) | predicted_OBP: 0.3050 -> 0.2997 (deboost -0.0053, 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.4120 -> 0.3768 (deboost -0.0352, 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.8231 -> 1.0000 (boost 0.1769, better) | predicted_SO: 1.4775 -> 1.0000 (deboost -0.4775, better) | AB rounded to 4 (raw=4.33), rates preserved: AVG=0.241 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4176 -> 0.0000 (deboost -0.4176, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2409 -> 0.2500 (boost 0.0091, better) | predicted_SLG: 0.3768 -> 0.2500 (deboost -0.1268, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 2 | 1 | 1 | 1 | 1 | predicted_R: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_RBI: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.3768 (boost 0.1268, better) | predicted_AVG: 0.2500 -> 0.2409 (deboost -0.0091, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656484",
"player_name": "Tristan Gray",
"position": "SS",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.095,
"predicted_3B": 0.0,
"predicted_AB": 3.219,
"predicted_AVG": 0.268,
"predicted_BB": 0.181,
"predicted_H": 0.69,
"predicted_HR": 0.09,
"predicted_OBP": 0.305,
"predicted_R": 0.324,
"predicted_RBI": 0.51,
"predicted_SLG": 0.409,
"predicted_SO": 1.143
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.187,
"predicted_3B": 0.0009,
"predicted_AB": 4.3281,
"predicted_AVG": 0.2659,
"predicted_BB": 0.1955,
"predicted_H": 1.049,
"predicted_HBP": 0.042,
"predicted_HR": 0.1332,
"predicted_OBP": 0.2997,
"predicted_R": 0.422,
"predicted_RBI": 0.8318,
"predicted_SLG": 0.412,
"predicted_SO": 1.4793
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.095,
"after": 0.187,
"delta": 0.092,
"percent_delta": 0.9684,
"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.219,
"after": 4.3281,
"delta": 1.1091,
"percent_delta": 0.3445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.268,
"after": 0.2659,
"delta": -0.0021,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.181,
"after": 0.1955,
"delta": 0.0145,
"percent_delta": 0.0801,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.049,
"delta": 0.359,
"percent_delta": 0.5203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1332,
"delta": 0.0432,
"percent_delta": 0.48,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.2997,
"delta": -0.0053,
"percent_delta": -0.0174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.324,
"after": 0.422,
"delta": 0.098,
"percent_delta": 0.3025,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.8318,
"delta": 0.3218,
"percent_delta": 0.631,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.409,
"after": 0.412,
"delta": 0.003,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.143,
"after": 1.4793,
"delta": 0.3363,
"percent_delta": 0.2942,
"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.219,
"after": 4.3281,
"delta": 1.1091,
"percent_delta": 0.3445,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.2997,
"delta": -0.0053,
"percent_delta": -0.0174,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 40
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.187,
"predicted_3B": 0.0009,
"predicted_AB": 4.3281,
"predicted_AVG": 0.2409,
"predicted_BB": 0.1957,
"predicted_H": 1.0425,
"predicted_HBP": 0.042,
"predicted_HR": 0.1331,
"predicted_OBP": 0.2737,
"predicted_R": 0.4176,
"predicted_RBI": 0.8231,
"predicted_SLG": 0.3768,
"predicted_SO": 1.4775
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.187,
"after": 0.187,
"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.3281,
"after": 4.3281,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2659,
"after": 0.2409,
"delta": -0.025,
"percent_delta": -0.094,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1955,
"after": 0.1957,
"delta": 0.0002,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.049,
"after": 1.0425,
"delta": -0.0065,
"percent_delta": -0.0062,
"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.1332,
"after": 0.1331,
"delta": -0.0001,
"percent_delta": -0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2997,
"after": 0.2737,
"delta": -0.026,
"percent_delta": -0.0868,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.422,
"after": 0.4176,
"delta": -0.0044,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8318,
"after": 0.8231,
"delta": -0.0087,
"percent_delta": -0.0105,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.3768,
"delta": -0.0352,
"percent_delta": -0.0854,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4793,
"after": 1.4775,
"delta": -0.0018,
"percent_delta": -0.0012,
"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.412,
"after": 0.3768,
"delta": -0.0352,
"percent_delta": -0.0854,
"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.241 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": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"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.0009,
"after": 0.0,
"delta": -0.0009,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.3281,
"after": 4.0,
"delta": -0.3281,
"percent_delta": -0.0758,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1957,
"after": 0.0,
"delta": -0.1957,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0425,
"after": 1.0,
"delta": -0.0425,
"percent_delta": -0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.1331,
"after": 0.0,
"delta": -0.1331,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8231,
"after": 1.0,
"delta": 0.1769,
"percent_delta": 0.2149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4775,
"after": 1.0,
"delta": -0.4775,
"percent_delta": -0.3232,
"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.8231,
"after": 1.0,
"delta": 0.1769,
"percent_delta": 0.2149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4775,
"after": 1.0,
"delta": -0.4775,
"percent_delta": -0.3232,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.4176,
"after": 0.0,
"delta": -0.4176,
"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.4176,
"after": 0.0,
"delta": -0.4176,
"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.2409,
"after": 0.25,
"delta": 0.0091,
"percent_delta": 0.0378,
"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.2737,
"after": 0.25,
"delta": -0.0237,
"percent_delta": -0.0866,
"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.3768,
"after": 0.25,
"delta": -0.1268,
"percent_delta": -0.3365,
"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.2409,
"after": 0.25,
"delta": 0.0091,
"percent_delta": 0.0378,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3768,
"after": 0.25,
"delta": -0.1268,
"percent_delta": -0.3365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 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_R",
"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.2409,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2737,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3768,
"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.2409,
"delta": -0.0091,
"percent_delta": -0.0365,
"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.2737,
"delta": 0.0237,
"percent_delta": 0.0949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 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.3768,
"delta": 0.1268,
"percent_delta": 0.507,
"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.3768,
"delta": 0.1268,
"percent_delta": 0.507,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2409,
"delta": -0.0091,
"percent_delta": -0.0365,
"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.095,
"after": 0.0,
"delta": -0.095,
"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.219,
"after": 4.0,
"delta": 0.781,
"percent_delta": 0.2426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.268,
"after": 0.2409,
"delta": -0.0271,
"percent_delta": -0.1011,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.181,
"after": 0.0,
"delta": -0.181,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.69,
"after": 1.0,
"delta": 0.31,
"percent_delta": 0.4493,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.2737,
"delta": -0.0313,
"percent_delta": -0.1026,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.324,
"after": 1.0,
"delta": 0.676,
"percent_delta": 2.0864,
"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.409,
"after": 0.3768,
"delta": -0.0322,
"percent_delta": -0.0787,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.143,
"after": 1.0,
"delta": -0.143,
"percent_delta": -0.1251,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.219,
"after": 4.0,
"delta": 0.781,
"percent_delta": 0.2426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.0,
"delta": -0.51,
"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.095 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.219 | - |
| predicted_AVG | 0.268 | - |
| predicted_BB | 0.181 | - |
| predicted_H | 0.690 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.305 | - |
| predicted_R | 0.324 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.409 | - |
| predicted_SO | 1.143 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.187 | 0.092 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.328 | 1.109 |
| predicted_AVG | 0.266 | -0.002 |
| predicted_BB | 0.196 | 0.015 |
| predicted_H | 1.049 | 0.359 |
| predicted_HBP | 0.042 | - |
| predicted_HR | 0.133 | 0.043 |
| predicted_OBP | 0.300 | -0.005 |
| predicted_R | 0.422 | 0.098 |
| predicted_RBI | 0.832 | 0.322 |
| predicted_SLG | 0.412 | 0.003 |
| predicted_SO | 1.479 | 0.336 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.187 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.328 | 0.000 |
| predicted_AVG | 0.241 | -0.025 |
| predicted_BB | 0.196 | 0.000 |
| predicted_H | 1.042 | -0.006 |
| predicted_HBP | 0.042 | 0.000 |
| predicted_HR | 0.133 | -0.000 |
| predicted_OBP | 0.274 | -0.026 |
| predicted_R | 0.418 | -0.004 |
| predicted_RBI | 0.823 | -0.009 |
| predicted_SLG | 0.377 | -0.035 |
| predicted_SO | 1.478 | -0.002 |
AB rounded to 4 (raw=4.33), rates preserved: AVG=0.241 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 | 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.187 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.328 |
| predicted_AVG | 0.250 | 0.009 |
| predicted_BB | 0.000 | -0.196 |
| predicted_H | 1.000 | -0.042 |
| predicted_HR | 0.000 | -0.133 |
| predicted_OBP | 0.250 | -0.024 |
| predicted_R | 0.000 | -0.418 |
| predicted_RBI | 1.000 | 0.177 |
| predicted_SLG | 0.250 | -0.127 |
| predicted_SO | 1.000 | -0.478 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 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 | - | 10.000 | 3.000 | 1.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 4.000 | 0.3000 | 0.3000 | 0.4000 | 0.3000 | 0.0000 | 0.1000 | 0.0000 | 0.4000 |
| last_10 | 0.20 | 10 | - | 25.000 | 8.000 | 2.000 | 0.000 | 1.000 | 10.000 | 4.000 | 0.000 | 6.000 | 0.3200 | 0.3200 | 0.5200 | 0.3200 | 0.0400 | 0.4000 | 0.0000 | 0.2400 |
| season | 0.60 | 40 | - | 338.000 | 79.000 | 10.000 | 0.000 | 14.000 | 70.000 | 34.000 | 19.000 | 120.000 | 0.2337 | 0.2779 | 0.3876 | 0.2337 | 0.0414 | 0.2071 | 0.0562 | 0.3550 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3100 |
| predicted_3B | 0.0020 |
| predicted_AB | 5.8110 |
| predicted_AVG | 0.2632 |
| predicted_BB | 0.2150 |
| predicted_H | 1.5290 |
| predicted_HBP | 0.0420 |
| predicted_HR | 0.1910 |
| predicted_OBP | 0.2925 |
| predicted_R | 0.5530 |
| predicted_RBI | 1.2620 |
| predicted_SLG | 0.4160 |
| predicted_SO | 1.9290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0950 | 0.3100 | 0.1870 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.2190 | 5.8110 | 4.3281 | model_form_blend |
| predicted_AVG | 0.2680 | 0.2632 | 0.2659 | model_form_blend |
| predicted_BB | 0.1810 | 0.2150 | 0.1955 | model_form_blend |
| predicted_H | 0.6900 | 1.5290 | 1.0490 | model_form_blend |
| predicted_HBP | - | 0.0420 | 0.0420 | form_only |
| predicted_HR | 0.0900 | 0.1910 | 0.1332 | model_form_blend |
| predicted_OBP | 0.3050 | 0.2925 | 0.2997 | model_form_blend |
| predicted_R | 0.3240 | 0.5530 | 0.4220 | model_form_blend |
| predicted_RBI | 0.5100 | 1.2620 | 0.8318 | model_form_blend |
| predicted_SLG | 0.4090 | 0.4160 | 0.4120 | model_form_blend |
| predicted_SO | 1.1430 | 1.9290 | 1.4793 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 105 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.234 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 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 | 20260609_MIN@DET |
| game_type | full |
| mlbID | 656484 |
| playerID | 656484 |
| playerName | Tristan Gray |
| pos | 3B |
| started | True |
| startingPosition | SS |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-09 |
| sl_k_percent | 30.4 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.305 |
| sl_xwoba | 0.304 |
| sl_xba | 0.249 |
| sl_xslg | 0.386 |
| sl_sweet_spot_percent | 44.3 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 41.8 |
| sl_exit_velocity_avg | 89.7 |
| sl_launch_angle_avg | 14.8 |
| sl_whiff_percent | 35.1 |
| sl_swing_percent | 56.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.223 | 1.000 | 0.000 | Hitting_2B | 0.215 | 0.000 | 0.785 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.652 | 4.000 | 6.000 | Hitting_AB | 3.518 | 3.000 | 0.482 | 1.000 |
| predicted_AVG | 0.237 | 0.500 | 0.167 | Hitting_AVG | 0.284 | 0.333 | 0.216 | 0.167 |
| predicted_BB | 0.522 | 0.000 | 1.000 | Hitting_BB | 0.518 | 1.000 | -0.518 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.105 | 0.000 | -0.105 | 0.000 |
| predicted_H | 0.650 | 2.000 | 1.000 | Hitting_H | 1.000 | 1.000 | 1.000 | 1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_OBP | 0.308 | 0.500 | 0.286 | Hitting_OBP | 0.387 | 0.600 | 0.113 | -0.100 |
| predicted_R | 0.478 | 1.000 | 1.000 | Hitting_R | 0.471 | 2.000 | 0.529 | -1.000 |
| predicted_RBI | 0.270 | 2.000 | 0.000 | Hitting_RBI | 0.393 | 0.000 | 1.607 | 2.000 |
| predicted_SLG | 0.325 | 0.750 | 0.167 | Hitting_SLG | 0.390 | 0.333 | 0.360 | 0.417 |
| predicted_SO | 0.641 | 0.000 | 1.000 | Hitting_SO | 0.618 | 1.000 | -0.618 | -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_RBI: 0.2700 -> 2.0000 (boost 1.7300, better) |
| Biggest Deboost | predicted_SO: 0.6410 -> 0.0000 (deboost -0.6410, 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: 3.6520 -> 5.8382 (boost 2.1862, better) | predicted_SLG: 0.3250 -> 0.3200 (deboost -0.0050, 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.2343 -> 0.2111 (deboost -0.0232, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 3 | 5 | predicted_BB: 0.7561 -> 1.0000 (boost 0.2439, better) | predicted_RBI: 0.4289 -> 0.0000 (deboost -0.4289, worse) | AB rounded to 6 (raw=5.84), rates preserved: AVG=0.211 HR/AB=0.011 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8017 -> 1.0000 (boost 0.1983, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3005 -> 0.1670 (deboost -0.1335, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 3 | 3 | 4 | 2 | predicted_RBI: 0.0000 -> 2.0000 (boost 2.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.3005 (boost 0.1335, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668885",
"player_name": "Austin Martin",
"position": "RF",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.223,
"predicted_3B": 0.0,
"predicted_AB": 3.652,
"predicted_AVG": 0.237,
"predicted_BB": 0.522,
"predicted_H": 0.65,
"predicted_HR": 0.05,
"predicted_OBP": 0.308,
"predicted_R": 0.478,
"predicted_RBI": 0.27,
"predicted_SLG": 0.325,
"predicted_SO": 0.641
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3253,
"predicted_3B": 0.0004,
"predicted_AB": 5.8382,
"predicted_AVG": 0.2343,
"predicted_BB": 0.7552,
"predicted_H": 1.2399,
"predicted_HBP": 0.25,
"predicted_HR": 0.0654,
"predicted_OBP": 0.3175,
"predicted_R": 0.8101,
"predicted_RBI": 0.4334,
"predicted_SLG": 0.32,
"predicted_SO": 1.3706
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.223,
"after": 0.3253,
"delta": 0.1023,
"percent_delta": 0.4587,
"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.652,
"after": 5.8382,
"delta": 2.1862,
"percent_delta": 0.5986,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2343,
"delta": -0.0027,
"percent_delta": -0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.522,
"after": 0.7552,
"delta": 0.2332,
"percent_delta": 0.4467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 1.2399,
"delta": 0.5899,
"percent_delta": 0.9075,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0654,
"delta": 0.0154,
"percent_delta": 0.308,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3175,
"delta": 0.0095,
"percent_delta": 0.0308,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.478,
"after": 0.8101,
"delta": 0.3321,
"percent_delta": 0.6948,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 0.4334,
"delta": 0.1634,
"percent_delta": 0.6052,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.325,
"after": 0.32,
"delta": -0.005,
"percent_delta": -0.0154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.641,
"after": 1.3706,
"delta": 0.7296,
"percent_delta": 1.1382,
"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": 3.652,
"after": 5.8382,
"delta": 2.1862,
"percent_delta": 0.5986,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.325,
"after": 0.32,
"delta": -0.005,
"percent_delta": -0.0154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 55
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3253,
"predicted_3B": 0.0004,
"predicted_AB": 5.8382,
"predicted_AVG": 0.2111,
"predicted_BB": 0.7561,
"predicted_H": 1.2322,
"predicted_HBP": 0.25,
"predicted_HR": 0.0654,
"predicted_OBP": 0.3015,
"predicted_R": 0.8017,
"predicted_RBI": 0.4289,
"predicted_SLG": 0.3005,
"predicted_SO": 1.369
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3253,
"after": 0.3253,
"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.8382,
"after": 5.8382,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2343,
"after": 0.2111,
"delta": -0.0232,
"percent_delta": -0.099,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7552,
"after": 0.7561,
"delta": 0.0009,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2399,
"after": 1.2322,
"delta": -0.0077,
"percent_delta": -0.0062,
"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.0654,
"after": 0.0654,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3175,
"after": 0.3015,
"delta": -0.016,
"percent_delta": -0.0504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8101,
"after": 0.8017,
"delta": -0.0084,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4334,
"after": 0.4289,
"delta": -0.0045,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.32,
"after": 0.3005,
"delta": -0.0195,
"percent_delta": -0.0609,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3706,
"after": 1.369,
"delta": -0.0016,
"percent_delta": -0.0012,
"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.2343,
"after": 0.2111,
"delta": -0.0232,
"percent_delta": -0.099,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.84), rates preserved: AVG=0.211 HR/AB=0.011",
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3253,
"after": 0.0,
"delta": -0.3253,
"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.8382,
"after": 6.0,
"delta": 0.1618,
"percent_delta": 0.0277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7561,
"after": 1.0,
"delta": 0.2439,
"percent_delta": 0.3226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2322,
"after": 1.0,
"delta": -0.2322,
"percent_delta": -0.1884,
"direction": "deboost",
"projection_effect": "worse",
"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.0654,
"after": 0.0,
"delta": -0.0654,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4289,
"after": 0.0,
"delta": -0.4289,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.369,
"after": 1.0,
"delta": -0.369,
"percent_delta": -0.2695,
"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.7561,
"after": 1.0,
"delta": 0.2439,
"percent_delta": 0.3226,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4289,
"after": 0.0,
"delta": -0.4289,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.8017,
"after": 1.0,
"delta": 0.1983,
"percent_delta": 0.2473,
"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.8017,
"after": 1.0,
"delta": 0.1983,
"percent_delta": 0.2473,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2111,
"after": 0.167,
"delta": -0.0441,
"percent_delta": -0.2089,
"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.3015,
"after": 0.286,
"delta": -0.0155,
"percent_delta": -0.0514,
"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.3005,
"after": 0.167,
"delta": -0.1335,
"percent_delta": -0.4443,
"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.3005,
"after": 0.167,
"delta": -0.1335,
"percent_delta": -0.4443,
"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": 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": 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": 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": 2.0,
"delta": 2.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"worse_metrics": 2,
"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": 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.2111,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3015,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3005,
"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.167,
"after": 0.2111,
"delta": 0.0441,
"percent_delta": 0.2638,
"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.3015,
"delta": 0.0155,
"percent_delta": 0.0543,
"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.167,
"after": 0.3005,
"delta": 0.1335,
"percent_delta": 0.7994,
"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.3005,
"delta": 0.1335,
"percent_delta": 0.7994,
"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.223,
"after": 1.0,
"delta": 0.777,
"percent_delta": 3.4843,
"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.652,
"after": 4.0,
"delta": 0.348,
"percent_delta": 0.0953,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2111,
"delta": -0.0259,
"percent_delta": -0.1093,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.522,
"after": 0.0,
"delta": -0.522,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3015,
"delta": -0.0065,
"percent_delta": -0.0211,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.478,
"after": 1.0,
"delta": 0.522,
"percent_delta": 1.0921,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.27,
"after": 2.0,
"delta": 1.73,
"percent_delta": 6.4074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.325,
"after": 0.3005,
"delta": -0.0245,
"percent_delta": -0.0754,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.641,
"after": 0.0,
"delta": -0.641,
"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.27,
"after": 2.0,
"delta": 1.73,
"percent_delta": 6.4074,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.641,
"after": 0.0,
"delta": -0.641,
"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.223 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.652 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.522 | - |
| predicted_H | 0.650 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.308 | - |
| predicted_R | 0.478 | - |
| predicted_RBI | 0.270 | - |
| predicted_SLG | 0.325 | - |
| predicted_SO | 0.641 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.102 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.838 | 2.186 |
| predicted_AVG | 0.234 | -0.003 |
| predicted_BB | 0.755 | 0.233 |
| predicted_H | 1.240 | 0.590 |
| predicted_HBP | 0.250 | - |
| predicted_HR | 0.065 | 0.015 |
| predicted_OBP | 0.318 | 0.010 |
| predicted_R | 0.810 | 0.332 |
| predicted_RBI | 0.433 | 0.163 |
| predicted_SLG | 0.320 | -0.005 |
| predicted_SO | 1.371 | 0.730 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 5.838 | 0.000 |
| predicted_AVG | 0.211 | -0.023 |
| predicted_BB | 0.756 | 0.001 |
| predicted_H | 1.232 | -0.008 |
| predicted_HBP | 0.250 | 0.000 |
| predicted_HR | 0.065 | 0.000 |
| predicted_OBP | 0.301 | -0.016 |
| predicted_R | 0.802 | -0.008 |
| predicted_RBI | 0.429 | -0.005 |
| predicted_SLG | 0.300 | -0.020 |
| predicted_SO | 1.369 | -0.002 |
AB rounded to 6 (raw=5.84), rates preserved: AVG=0.211 HR/AB=0.011
| 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 | 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 | 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.325 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.162 |
| predicted_AVG | 0.167 | -0.044 |
| predicted_BB | 1.000 | 0.244 |
| predicted_H | 1.000 | -0.232 |
| predicted_HR | 0.000 | -0.065 |
| predicted_OBP | 0.286 | -0.016 |
| predicted_R | 1.000 | 0.198 |
| predicted_RBI | 0.000 | -0.429 |
| predicted_SLG | 0.167 | -0.133 |
| predicted_SO | 1.000 | -0.369 |
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 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.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 | - | 18.000 | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 3.000 | 2.000 | 9.000 | 0.1667 | 0.2857 | 0.2222 | 0.1667 | 0.0000 | 0.0000 | 0.1111 | 0.5000 |
| last_10 | 0.20 | 10 | - | 38.000 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 6.000 | 3.000 | 12.000 | 0.1316 | 0.2143 | 0.1579 | 0.1316 | 0.0000 | 0.0263 | 0.0790 | 0.3158 |
| season | 0.60 | 55 | - | 672.000 | 191.000 | 41.000 | 0.000 | 10.000 | 75.000 | 88.000 | 96.000 | 118.000 | 0.2842 | 0.3837 | 0.3899 | 0.2842 | 0.0149 | 0.1116 | 0.1429 | 0.1756 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4560 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.6290 |
| predicted_AVG | 0.2309 |
| predicted_BB | 1.0530 |
| predicted_H | 1.9930 |
| predicted_HBP | 0.2500 |
| predicted_HR | 0.0850 |
| predicted_OBP | 0.3296 |
| predicted_R | 1.2340 |
| predicted_RBI | 0.6420 |
| predicted_SLG | 0.3136 |
| predicted_SO | 2.3020 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2230 | 0.4560 | 0.3253 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6520 | 8.6290 | 5.8382 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2309 | 0.2343 | model_form_blend |
| predicted_BB | 0.5220 | 1.0530 | 0.7552 | model_form_blend |
| predicted_H | 0.6500 | 1.9930 | 1.2399 | model_form_blend |
| predicted_HBP | - | 0.2500 | 0.2500 | form_only |
| predicted_HR | 0.0500 | 0.0850 | 0.0654 | model_form_blend |
| predicted_OBP | 0.3080 | 0.3296 | 0.3175 | model_form_blend |
| predicted_R | 0.4780 | 1.2340 | 0.8101 | model_form_blend |
| predicted_RBI | 0.2700 | 0.6420 | 0.4334 | model_form_blend |
| predicted_SLG | 0.3250 | 0.3136 | 0.3200 | model_form_blend |
| predicted_SO | 0.6410 | 2.3020 | 1.3706 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 184 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 2 |
| BB | 0 |
| SO | 0 |
| 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.333 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| 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 | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 668885 |
| playerID | 668885 |
| playerName | Austin Martin |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.5 |
| sl_bb_percent | 12.6 |
| sl_woba | 0.321 |
| sl_xwoba | 0.312 |
| sl_xba | 0.24 |
| sl_xslg | 0.325 |
| sl_sweet_spot_percent | 32.5 |
| sl_barrel_batted_rate | 2.6 |
| sl_hard_hit_percent | 27.8 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 11.3 |
| sl_whiff_percent | 20.1 |
| sl_swing_percent | 39.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 | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.600 | 4.000 | 0.400 | -2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.800 | 2.000 | -1.800 | -1.000 |
| predicted_H | 4.000 | 4.000 | 4.000 | Pitching_H | 5.000 | 5.000 | -1.000 | -1.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 6.020 | 7.000 | -0.020 | -1.000 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 5.200 | 2.000 | 0.800 | 4.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 0 | 0 | 0 | 0 | 0 | - | - | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "805673",
"player_name": "Zebby Matthews",
"position": "Starter",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 6.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": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 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": 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": 4.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_R": 1.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 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,
"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 | 4.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 6.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 4.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 6.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 | 30.100 | 14.000 | 25.000 | 8.000 | 26.000 | 5.000 | 4.1538 | 1.0879 | 0.4615 | 0.8242 | 0.2637 | 0.8571 | 0.1648 |
| last_10 | 0.35 | 5 | 30.100 | 14.000 | 25.000 | 8.000 | 26.000 | 5.000 | 4.1538 | 1.0879 | 0.4615 | 0.8242 | 0.2637 | 0.8571 | 0.1648 |
| season | 0.20 | 5 | 30.100 | 14.000 | 25.000 | 8.000 | 26.000 | 5.000 | 4.1538 | 1.0879 | 0.4615 | 0.8242 | 0.2637 | 0.8571 | 0.1648 |
| Metric | Value |
|---|---|
| predicted_BB | 1.8860 |
| predicted_ER | 2.8430 |
| predicted_ERA | 4.2641 |
| predicted_H | 5.3520 |
| predicted_HR | 0.9170 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.3790 |
| predicted_WHIP | 1.2064 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.8860 | 1.9500 | model_form_blend |
| predicted_ER | 1.0000 | 2.8430 | 1.8086 | model_form_blend |
| predicted_ERA | - | 4.2641 | 4.2641 | form_only |
| predicted_H | 4.0000 | 5.3520 | 4.5932 | model_form_blend |
| predicted_HR | 0.0000 | 0.9170 | 0.4023 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 6.0000 | 5.3790 | 5.7275 | model_form_blend |
| predicted_WHIP | - | 1.2064 | 1.2064 | 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 | 5 |
| Season rows before report date | 5 |
| Report year | 2026 |
| Profile rows used | 5 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 6.0 |
| H | 4 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 6 |
| HR | 0 |
| BF | 24 |
| Pitches | 108 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 1 |
| Pitching_Batters Faced | 27 |
| Pitching_ER | 2 |
| Pitching_ERA | 4.15 |
| Pitching_Flyouts | 6 |
| Pitching_Groundouts | 8 |
| Pitching_H | 5 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 7.0 |
| Pitching_Pitches | 100 |
| Pitching_R | 2 |
| Pitching_SO | 2 |
| Pitching_Strikes | 57 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_KC@MIN |
| game_type | full |
| mlbID | 805673 |
| playerID | 805673 |
| playerName | Zebby Matthews |
| pos | P |
| started | True |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-05 |
| sl_k_percent | 21.3 |
| sl_bb_percent | 6.6 |
| sl_woba | 0.305 |
| sl_xwoba | 0.298 |
| sl_sweet_spot_percent | 29.1 |
| sl_barrel_batted_rate | 11.6 |
| sl_hard_hit_percent | 38.4 |
| sl_whiff_percent | 23.8 |
| sl_swing_percent | 45.4 |
| sl_avg_best_speed | 79.815400465 |
| sl_avg_hyper_speed | 93.996188588 |
| 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.406 | 1.000 | -0.406 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.469 | 0.000 | -0.469 | 0.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.719 | 0.000 | 1.281 | 2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.688 | 1.200 | 0.312 | -0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.844 | 1.000 | 0.156 | 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": "607455",
"player_name": "Anthony Banda",
"position": "Middle Reliever",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 2.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 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 | 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 | 9.200 | 0.000 | 4.000 | 5.000 | 9.000 | 0.000 | 0.0000 | 0.9310 | 0.0000 | 0.4138 | 0.5172 | 0.9310 | 0.0000 |
| season | 0.20 | 32 | 29.000 | 15.000 | 23.000 | 13.000 | 27.000 | 2.000 | 4.6552 | 1.2414 | 0.5172 | 0.7931 | 0.4483 | 0.9310 | 0.0690 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5210 |
| predicted_ER | 0.2820 |
| predicted_ERA | 2.5356 |
| predicted_H | 0.7640 |
| predicted_HR | 0.0730 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0700 |
| predicted_WHIP | 1.2844 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.5210 | 0.2361 | model_form_blend |
| predicted_ER | 0.0000 | 0.2820 | 0.1278 | model_form_blend |
| predicted_ERA | - | 2.5356 | 2.5356 | form_only |
| predicted_H | 2.0000 | 0.7640 | 1.4399 | model_form_blend |
| predicted_HR | 0.0000 | 0.0730 | 0.0331 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0700 | 1.0317 | model_form_blend |
| predicted_WHIP | - | 1.2844 | 1.2844 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 32 |
| Season rows before report date | 32 |
| Report year | 2026 |
| Profile rows used | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 2 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 5 |
| Pitches | 23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.66 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 30 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 19 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 607455 |
| playerID | 607455 |
| playerName | Anthony Banda |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.317 |
| sl_xwoba | 0.311 |
| sl_sweet_spot_percent | 26.8 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 39.0 |
| sl_whiff_percent | 26.5 |
| sl_swing_percent | 45.3 |
| sl_avg_best_speed | 81.36451575 |
| sl_avg_hyper_speed | 94.256576962 |
| 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.600 | 1.000 | 1.400 | 1.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 1.100 | 0.000 | 0.900 | 2.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 1.500 | 1.000 | 0.500 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.240 | 1.100 | -0.240 | -0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.600 | 3.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": "701519",
"player_name": "Travis Adams",
"position": "Middle Reliever",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 2.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_R": 2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 2.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 | 8.000 | 9.000 | 3.000 | 7.000 | 3.000 | 13.5000 | 2.2500 | 1.5000 | 1.6875 | 0.5625 | 1.3125 | 0.5625 |
| last_10 | 0.35 | 10 | 13.100 | 11.000 | 15.000 | 6.000 | 16.000 | 3.000 | 7.4250 | 1.5750 | 0.8250 | 1.1250 | 0.4500 | 1.2000 | 0.2250 |
| season | 0.20 | 10 | 13.100 | 11.000 | 15.000 | 6.000 | 16.000 | 3.000 | 7.4250 | 1.5750 | 0.8250 | 1.1250 | 0.4500 | 1.2000 | 0.2250 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4370 |
| predicted_ER | 0.7710 |
| predicted_ERA | 6.6058 |
| predicted_H | 1.1830 |
| predicted_HR | 0.2470 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1020 |
| predicted_WHIP | 1.5421 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 0.4370 | 1.4166 | model_form_blend |
| predicted_ER | 2.0000 | 0.7710 | 1.5413 | model_form_blend |
| predicted_ERA | - | 6.6058 | 6.6058 | form_only |
| predicted_H | 2.0000 | 1.1830 | 1.6950 | model_form_blend |
| predicted_HR | 1.0000 | 0.2470 | 0.7189 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1020 | 0.4113 | model_form_blend |
| predicted_WHIP | - | 1.5421 | 1.5421 | 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 | 1.0 |
| H | 2 |
| R | 2 |
| ER | 2 |
| BB | 2 |
| SO | 0 |
| HR | 1 |
| BF | 7 |
| Pitches | 27 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 7.43 |
| 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.1 |
| Pitching_Pitches | 31 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 17 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 701519 |
| playerID | 701519 |
| playerName | Travis Adams |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.8 |
| sl_bb_percent | 9.7 |
| sl_woba | 0.353 |
| sl_xwoba | 0.319 |
| sl_sweet_spot_percent | 35.0 |
| sl_barrel_batted_rate | 10.0 |
| sl_hard_hit_percent | 30.0 |
| sl_whiff_percent | 27.9 |
| sl_swing_percent | 47.8 |
| sl_avg_best_speed | 73.19528 |
| sl_avg_hyper_speed | 93.667848158 |
| 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.412 | 1.000 | 0.588 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.118 | 1.000 | -0.118 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.471 | 2.000 | -0.471 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.718 | 1.000 | 0.282 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.118 | 1.000 | -1.118 | -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": "672782",
"player_name": "Yoendrys Gómez",
"position": "Middle Reliever",
"team": "MIN",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 1.000 | 3.000 | 3.000 | 6.000 | 0.000 | 1.9286 | 1.2857 | 0.2143 | 0.6429 | 0.6429 | 1.2857 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 2.000 | 7.000 | 5.000 | 13.000 | 0.000 | 1.8621 | 1.2414 | 0.2069 | 0.7241 | 0.5172 | 1.3448 | 0.0000 |
| season | 0.20 | 26 | 32.100 | 14.000 | 27.000 | 17.000 | 32.000 | 5.000 | 3.8969 | 1.3608 | 0.4330 | 0.8350 | 0.5258 | 0.9897 | 0.1546 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5010 |
| predicted_ER | 0.3700 |
| predicted_ERA | 3.2103 |
| predicted_H | 0.8500 |
| predicted_HR | 0.0820 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1520 |
| predicted_WHIP | 1.3026 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.5010 | 0.7682 | model_form_blend |
| predicted_ER | 0.0000 | 0.3700 | 0.1719 | model_form_blend |
| predicted_ERA | - | 3.2103 | 3.2103 | form_only |
| predicted_H | 0.0000 | 0.8500 | 0.3948 | model_form_blend |
| predicted_HR | 0.0000 | 0.0820 | 0.0381 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1520 | 0.5351 | model_form_blend |
| predicted_WHIP | - | 1.3026 | 1.3026 | 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 | 17 |
| Season rows before report date | 17 |
| Report year | 2026 |
| Profile rows used | 26 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 17 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 1 |
| Pitching_ERA | 3.90 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 27 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 672782 |
| playerID | 672782 |
| playerName | Yoendrys Gómez |
| pos | P |
| started | False |
| startingPosition | P |
| team | MIN |
| teamID | 17 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.4 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.321 |
| sl_xwoba | 0.364 |
| sl_sweet_spot_percent | 35.2 |
| sl_barrel_batted_rate | 11.9 |
| sl_hard_hit_percent | 41.7 |
| sl_whiff_percent | 24.7 |
| sl_swing_percent | 46.8 |
| sl_avg_best_speed | 78.668987805 |
| sl_avg_hyper_speed | 94.515959756 |
| Field | Value |
|---|---|
| Pitcher | Keider Montero |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1937 |
| ESPN Rank | 42 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0026 |
| Avg Velo | 89.6674 |
| Avg Spin | 2352.7685 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.2000 |
| Pre ER | 1 |
| Pre H | 5 |
| Pre BB | 2 |
| Pre SO | 6 |
| Season ERA | 3.9545 |
| Season WHIP | 1.0303 |
| Role Avg IP | 5.5000 |
| Recent Avg IP | 5.2670 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"opponent": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"edges": {
"quality_edge": 0.0289,
"offense_edge": -0.1036,
"opponent_offense_edge": 0.0507,
"defense_strength": 0.052,
"opponent_defense_weakness": 0.0943,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0007,
"run_prevention": 1.0015,
"strikeout": 0.9968
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "672456",
"profile": {
"available": true,
"pitcher_id": "672456",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 220.0,
"k_percent": 16.7,
"bb_percent": 6.1,
"woba": 0.285,
"xwoba": 0.307,
"sweet_spot_percent": 30.2,
"barrel_batted_rate": 9.5,
"hard_hit_percent": 41.1,
"avg_best_speed": 80.732,
"avg_hyper_speed": 94.1487,
"whiff_percent": 16.7,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.038,
"command_and_miss": -0.6857,
"regression_edge": -0.6286,
"xwoba_edge": 0.2286,
"barrel_edge": -0.4889,
"hard_hit_edge": -0.3857,
"whiff_edge": -1.2714,
"bb_edge": 0.725,
"pitch_design_score": -0.0026
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "672456",
"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": 89.66742418639122,
"release_spin_rate": 2352.76848000055,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.66742418639122,
"release_spin_rate": 2352.76848000055,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6674,
"release_spin_rate": 2352.7685,
"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.0026,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0185,
"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.1937,
"sample_weight": 0.88,
"run_prevention_factor": 1.0165,
"strikeout_factor": 0.9251,
"walk_factor": 0.949,
"homer_factor": 1.042,
"woba_minus_xwoba": -0.022,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "672456",
"espn_id": 5182933,
"player_name": "Keider Montero",
"team": "DET",
"role": "pitcher",
"espn_rank": 42,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 42,
"gp_value": 12.0,
"gp_rank": 325,
"gs_value": 12.0,
"gs_rank": 70,
"qs_value": 4.0,
"qs_rank": 65,
"era_value": 3.9545,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 66.0,
"ip_rank": 73,
"h_value": 52.0,
"h_rank": 104,
"er_value": 29.0,
"er_rank": 78,
"hr_value": 8.0,
"hr_rank": 67,
"bb_value": 16.0,
"bb_rank": 159,
"k_value": 44.0,
"k_rank": 125,
"k_per_9_value": 6.0,
"k_per_9_rank": 46,
"whip_value": 1.0303,
"whip_rank": null,
"war_value": 1.52,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0145,
"adjusted": 3
},
"predicted_H": {
"original": 4.0,
"factor": 1.0145,
"adjusted": 4
},
"predicted_BB": {
"original": 1.0,
"factor": 0.9551,
"adjusted": 1
},
"predicted_HR": {
"original": 1.0,
"factor": 1.037,
"adjusted": 1
},
"predicted_SO": {
"original": 3.0,
"factor": 0.9341,
"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": 55.2,
"ER": 27,
"H": 47,
"BB": 14,
"SO": 34,
"HR": 8,
"ERA": 4.365269461077845,
"WHIP": 1.095808383233533,
"K9": 5.497005988023952,
"HR9": 1.2934131736526946,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "672456",
"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": 89.66742418639122,
"release_spin_rate": 2352.76848000055,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 89.66742418639122,
"release_spin_rate": 2352.76848000055,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6674,
"release_spin_rate": 2352.7685,
"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.0026,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0185,
"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": "672456",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 5.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 26.1,
"ER": 15.0,
"R": 15.0,
"H": 22.0,
"BB": 8.0,
"SO": 15.0,
"HR": 5.0,
"BF": 109.0,
"Pitches": 388.0
},
"per_game": {
"IP": 5.1,
"ER": 3.0,
"R": 3.0,
"H": 4.4,
"BB": 1.6,
"SO": 3.0,
"HR": 1.0,
"BF": 21.8,
"Pitches": 77.6
},
"rates": {
"ERA": 5.1266,
"WHIP": 1.1392,
"ER_per_IP": 0.56962,
"H_per_IP": 0.83544,
"BB_per_IP": 0.3038,
"SO_per_IP": 0.56962,
"HR_per_IP": 0.18987
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.2,
"ER": 27.0,
"R": 27.0,
"H": 47.0,
"BB": 14.0,
"SO": 34.0,
"HR": 8.0,
"BF": 226.0,
"Pitches": 801.0
},
"per_game": {
"IP": 5.2,
"ER": 2.7,
"R": 2.7,
"H": 4.7,
"BB": 1.4,
"SO": 3.4,
"HR": 0.8,
"BF": 22.6,
"Pitches": 80.1
},
"rates": {
"ERA": 4.3653,
"WHIP": 1.0958,
"ER_per_IP": 0.48503,
"H_per_IP": 0.84431,
"BB_per_IP": 0.2515,
"SO_per_IP": 0.61078,
"HR_per_IP": 0.14371
}
},
"season": {
"games": 12,
"totals": {
"IP": 66.0,
"ER": 29.0,
"R": 30.0,
"H": 52.0,
"BB": 16.0,
"SO": 44.0,
"HR": 8.0,
"BF": 264.0,
"Pitches": 944.0
},
"per_game": {
"IP": 5.1,
"ER": 2.4167,
"R": 2.5,
"H": 4.3333,
"BB": 1.3333,
"SO": 3.6667,
"HR": 0.6667,
"BF": 22.0,
"Pitches": 78.6667
},
"rates": {
"ERA": 3.9545,
"WHIP": 1.0303,
"ER_per_IP": 0.43939,
"H_per_IP": 0.78788,
"BB_per_IP": 0.24242,
"SO_per_IP": 0.66667,
"HR_per_IP": 0.12121
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.789,
"predicted_H": 4.783,
"predicted_BB": 1.655,
"predicted_SO": 3.866,
"predicted_HR": 0.851,
"predicted_ERA": 4.5518,
"predicted_WHIP": 1.1677
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.4743,
"form_weight": 0.5257,
"form_reliability": 0.7059,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 12.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.7059,
"prior_weight": 0.2941
},
"applied_metrics": {
"predicted_IP": {
"model": 5.2,
"form": 5.2,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 2.789,
"final": 1.9406,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 4.783,
"final": 4.8859,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 1.655,
"final": 1.8186,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 3.866,
"final": 4.8781,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.851,
"final": 0.9217,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.5518,
"final": 4.5518,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1677,
"final": 1.1677,
"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 | Kyle Finnegan |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1057 |
| ESPN Rank | 53 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1374 |
| Avg Velo | 92.1677 |
| Avg Spin | 1824.9197 |
| 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.4362 |
| Season WHIP | 1.3404 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"opponent": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"edges": {
"quality_edge": 0.0289,
"offense_edge": -0.1036,
"opponent_offense_edge": 0.0507,
"defense_strength": 0.052,
"opponent_defense_weakness": 0.0943,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0007,
"run_prevention": 1.0015,
"strikeout": 0.9968
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "640448",
"profile": {
"available": true,
"pitcher_id": "640448",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 103.0,
"k_percent": 15.4,
"bb_percent": 16.2,
"woba": 0.326,
"xwoba": 0.322,
"sweet_spot_percent": 27.0,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 39.3,
"avg_best_speed": 77.7989,
"avg_hyper_speed": 94.1039,
"whiff_percent": 24.2,
"swing_percent": 45.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.042,
"command_and_miss": -0.8993,
"regression_edge": 0.1143,
"xwoba_edge": -0.2,
"barrel_edge": 0.3778,
"hard_hit_edge": -0.1286,
"whiff_edge": -0.2,
"bb_edge": -1.8,
"pitch_design_score": 0.1374
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "640448",
"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": 92.16768136813744,
"release_spin_rate": 1824.9196510122501,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 92.16768136813744,
"release_spin_rate": 1824.9196510122501,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1677,
"release_spin_rate": 1824.9197,
"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.1374,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9816,
"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.1057,
"sample_weight": 0.45,
"run_prevention_factor": 1.009,
"strikeout_factor": 0.9776,
"walk_factor": 1.0648,
"homer_factor": 0.9914,
"woba_minus_xwoba": 0.004,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "640448",
"espn_id": 36543,
"player_name": "Kyle Finnegan",
"team": "DET",
"role": "pitcher",
"espn_rank": 53,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 53,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.0106,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 9.0,
"hld_rank": 24,
"ip_value": 31.1,
"ip_rank": 195,
"h_value": 25.0,
"h_rank": 246,
"er_value": 7.0,
"er_rank": 403,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 21.0,
"bb_rank": 85,
"k_value": 20.0,
"k_rank": 333,
"k_per_9_value": 5.744681,
"k_per_9_rank": 46,
"whip_value": 1.468,
"whip_rank": null,
"war_value": 1.36,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.004,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.004,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0292,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9961,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9899,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 10.2,
"ER": 4,
"H": 10,
"BB": 6,
"SO": 6,
"HR": 1,
"ERA": 3.3749999999999996,
"WHIP": 1.4999999999999998,
"K9": 5.062499999999999,
"HR9": 0.8437499999999999,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-09T00:00:00"
}{
"available": true,
"pitcher_id": "640448",
"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": 92.16768136813744,
"release_spin_rate": 1824.9196510122501,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 92.16768136813744,
"release_spin_rate": 1824.9196510122501,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1677,
"release_spin_rate": 1824.9197,
"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.1374,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9816,
"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.19,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5532,
"prior_weight": 0.4468
},
"role": "pitcher",
"player_id": "640448",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 29,
"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": 5.0,
"HR": 0.0,
"BF": 22.0,
"Pitches": 77.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.4,
"SO": 1.0,
"HR": 0.0,
"BF": 4.4,
"Pitches": 15.4
},
"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": 0.88235,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 4.0,
"R": 4.0,
"H": 10.0,
"BB": 6.0,
"SO": 6.0,
"HR": 1.0,
"BF": 46.0,
"Pitches": 165.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.6,
"SO": 0.6,
"HR": 0.1,
"BF": 4.6,
"Pitches": 16.5
},
"rates": {
"ERA": 3.375,
"WHIP": 1.5,
"ER_per_IP": 0.375,
"H_per_IP": 0.9375,
"BB_per_IP": 0.5625,
"SO_per_IP": 0.5625,
"HR_per_IP": 0.09375
}
},
"season": {
"games": 29,
"totals": {
"IP": 31.1,
"ER": 5.0,
"R": 5.0,
"H": 22.0,
"BB": 20.0,
"SO": 20.0,
"HR": 2.0,
"BF": 126.0,
"Pitches": 480.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1724,
"R": 0.1724,
"H": 0.7586,
"BB": 0.6897,
"SO": 0.6897,
"HR": 0.069,
"BF": 4.3448,
"Pitches": 16.5517
},
"rates": {
"ERA": 1.4362,
"WHIP": 1.3404,
"ER_per_IP": 0.15957,
"H_per_IP": 0.70213,
"BB_per_IP": 0.6383,
"SO_per_IP": 0.6383,
"HR_per_IP": 0.06383
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.395,
"predicted_H": 0.864,
"predicted_BB": 0.43,
"predicted_SO": 0.817,
"predicted_HR": 0.088,
"predicted_ERA": 3.5576,
"predicted_WHIP": 1.2942
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5388,
"form_weight": 0.4612,
"form_reliability": 0.5532,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.19,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5532,
"prior_weight": 0.4468
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.395,
"final": 0.1822,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.864,
"final": 0.9373,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.43,
"final": 0.1983,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.817,
"final": 0.9156,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.088,
"final": 0.0406,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5576,
"final": 3.5576,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2942,
"final": 1.2942,
"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 | Will Vest |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1525 |
| ESPN Rank | 637 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1660 |
| Avg Velo | 92.6782 |
| Avg Spin | 2287.3980 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 6.5323 |
| Season WHIP | 1.4516 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"opponent": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"edges": {
"quality_edge": 0.0289,
"offense_edge": -0.1036,
"opponent_offense_edge": 0.0507,
"defense_strength": 0.052,
"opponent_defense_weakness": 0.0943,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0007,
"run_prevention": 1.0015,
"strikeout": 0.9968
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676684",
"profile": {
"available": true,
"pitcher_id": "676684",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 66.0,
"k_percent": 25.3,
"bb_percent": 8.8,
"woba": 0.332,
"xwoba": 0.299,
"sweet_spot_percent": 20.3,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 37.3,
"avg_best_speed": 78.2896,
"avg_hyper_speed": 94.4198,
"whiff_percent": 29.7,
"swing_percent": 47.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.2358,
"command_and_miss": 0.3821,
"regression_edge": 0.9429,
"xwoba_edge": 0.4571,
"barrel_edge": 0.0889,
"hard_hit_edge": 0.1571,
"whiff_edge": 0.5857,
"bb_edge": 0.05,
"pitch_design_score": 0.166
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676684",
"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": 92.67817221131912,
"release_spin_rate": 2287.398007773141,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 92.67817221131912,
"release_spin_rate": 2287.398007773141,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6782,
"release_spin_rate": 2287.398,
"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.166,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1858,
"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.1525,
"sample_weight": 0.45,
"run_prevention_factor": 0.987,
"strikeout_factor": 1.0172,
"walk_factor": 0.9982,
"homer_factor": 0.9878,
"woba_minus_xwoba": 0.033,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "676684",
"espn_id": 41606,
"player_name": "Will Vest",
"team": "DET",
"role": "pitcher",
"espn_rank": 637,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 637,
"gp_value": 21.0,
"gp_rank": 147,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.5322,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 20.2,
"ip_rank": 351,
"h_value": 22.0,
"h_rank": 276,
"er_value": 15.0,
"er_rank": 189,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 23.0,
"k_rank": 297,
"k_per_9_value": 10.016129,
"k_per_9_rank": 22,
"whip_value": 1.4516,
"whip_rank": null,
"war_value": -0.56,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9941,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9941,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9992,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9945,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0077,
"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": 9,
"H": 13,
"BB": 3,
"SO": 12,
"HR": 2,
"ERA": 7.59375,
"WHIP": 1.5,
"K9": 10.125,
"HR9": 1.6875,
"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": "676684",
"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": 92.67817221131912,
"release_spin_rate": 2287.398007773141,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 92.67817221131912,
"release_spin_rate": 2287.398007773141,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.6782,
"release_spin_rate": 2287.398,
"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.166,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1858,
"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.083,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4495,
"prior_weight": 0.5505
},
"role": "pitcher",
"player_id": "676684",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 21,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.0,
"ER": 6.0,
"R": 6.0,
"H": 9.0,
"BB": 2.0,
"SO": 7.0,
"HR": 1.0,
"BF": 28.0,
"Pitches": 113.0
},
"per_game": {
"IP": 1.1,
"ER": 1.2,
"R": 1.2,
"H": 1.8,
"BB": 0.4,
"SO": 1.4,
"HR": 0.2,
"BF": 5.6,
"Pitches": 22.6
},
"rates": {
"ERA": 9.0,
"WHIP": 1.8333,
"ER_per_IP": 1.0,
"H_per_IP": 1.5,
"BB_per_IP": 0.33333,
"SO_per_IP": 1.16667,
"HR_per_IP": 0.16667
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.2,
"ER": 9.0,
"R": 10.0,
"H": 13.0,
"BB": 3.0,
"SO": 12.0,
"HR": 2.0,
"BF": 47.0,
"Pitches": 189.0
},
"per_game": {
"IP": 1.0,
"ER": 0.9,
"R": 1.0,
"H": 1.3,
"BB": 0.3,
"SO": 1.2,
"HR": 0.2,
"BF": 4.7,
"Pitches": 18.9
},
"rates": {
"ERA": 7.5938,
"WHIP": 1.5,
"ER_per_IP": 0.84375,
"H_per_IP": 1.21875,
"BB_per_IP": 0.28125,
"SO_per_IP": 1.125,
"HR_per_IP": 0.1875
}
},
"season": {
"games": 21,
"totals": {
"IP": 20.2,
"ER": 15.0,
"R": 17.0,
"H": 22.0,
"BB": 8.0,
"SO": 23.0,
"HR": 2.0,
"BF": 91.0,
"Pitches": 389.0
},
"per_game": {
"IP": 1.0,
"ER": 0.7143,
"R": 0.8095,
"H": 1.0476,
"BB": 0.381,
"SO": 1.0952,
"HR": 0.0952,
"BF": 4.3333,
"Pitches": 18.5238
},
"rates": {
"ERA": 6.5323,
"WHIP": 1.4516,
"ER_per_IP": 0.72581,
"H_per_IP": 1.06452,
"BB_per_IP": 0.3871,
"SO_per_IP": 1.1129,
"HR_per_IP": 0.09677
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.713,
"predicted_H": 1.195,
"predicted_BB": 0.371,
"predicted_SO": 1.098,
"predicted_HR": 0.16,
"predicted_ERA": 6.0105,
"predicted_WHIP": 1.4666
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5826,
"form_weight": 0.4174,
"form_reliability": 0.4495,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.083,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4495,
"prior_weight": 0.5505
},
"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.2976,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.195,
"final": 0.4988,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.371,
"final": 0.1549,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.098,
"final": 0.4583,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.16,
"final": 0.0668,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.0105,
"final": 6.0105,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4666,
"final": 1.4666,
"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 Holton |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0228 |
| ESPN Rank | 277 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1924 |
| Avg Velo | 86.2776 |
| Avg Spin | 2247.2741 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.1000 |
| Pre ER | 3 |
| Pre H | 3 |
| Pre BB | 1 |
| Pre SO | 1 |
| Season ERA | 4.3953 |
| Season WHIP | 1.5000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "DET",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 298.0,
"runs_allowed": 316.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2432,
"avg_runs_scored": 4.027,
"avg_runs_allowed": 4.2703,
"offense_index": 0.8964,
"defense_index": 1.052,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 4.1,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.0752
},
"opponent": {
"team": "MIN",
"games": 75,
"wins": 34,
"losses": 41,
"win_pct": 0.4533,
"runs_scored": 354.0,
"runs_allowed": 372.0,
"run_differential": -18.0,
"run_differential_per_game": -0.24,
"avg_runs_scored": 4.72,
"avg_runs_allowed": 4.96,
"offense_index": 1.0507,
"defense_index": 0.9057,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 4,
"losses": 6,
"win_pct": 0.4,
"avg_runs_scored": 4.6,
"avg_runs_allowed": 6.1,
"run_differential": -15.0
},
"available": true,
"quality_score": -0.1041
},
"edges": {
"quality_edge": 0.0289,
"offense_edge": -0.1036,
"opponent_offense_edge": 0.0507,
"defense_strength": 0.052,
"opponent_defense_weakness": 0.0943,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0007,
"run_prevention": 1.0015,
"strikeout": 0.9968
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663947",
"profile": {
"available": true,
"pitcher_id": "663947",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 104.0,
"k_percent": 20.0,
"bb_percent": 6.4,
"woba": 0.372,
"xwoba": 0.315,
"sweet_spot_percent": 37.8,
"barrel_batted_rate": 5.6,
"hard_hit_percent": 38.9,
"avg_best_speed": 78.1652,
"avg_hyper_speed": 93.8973,
"whiff_percent": 23.9,
"swing_percent": 46.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.2943,
"command_and_miss": -0.1286,
"regression_edge": 1.6286,
"xwoba_edge": 0.0,
"barrel_edge": 0.3778,
"hard_hit_edge": -0.0714,
"whiff_edge": -0.2429,
"bb_edge": 0.65,
"pitch_design_score": -0.1924
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "663947",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 25,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 25,
"pitch_usage": 0.0,
"release_speed": 86.2775859003846,
"release_spin_rate": 2247.2741481534126,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 25,
"pitch_usage": 0.0,
"release_speed": 86.2775859003846,
"release_spin_rate": 2247.2741481534126,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2776,
"release_spin_rate": 2247.2741,
"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.1924,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.3745,
"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.0228,
"sample_weight": 0.45,
"run_prevention_factor": 1.0019,
"strikeout_factor": 0.9887,
"walk_factor": 0.9766,
"homer_factor": 0.9877,
"woba_minus_xwoba": 0.057,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "663947",
"espn_id": 3983833,
"player_name": "Tyler Holton",
"team": "DET",
"role": "pitcher",
"espn_rank": 277,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 277,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 2.0,
"gs_rank": 203,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.3953,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 5.0,
"hld_rank": 79,
"ip_value": 28.2,
"ip_rank": 243,
"h_value": 35.0,
"h_rank": 154,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 25.0,
"k_rank": 277,
"k_per_9_value": 7.8488374,
"k_per_9_rank": 30,
"whip_value": 1.5,
"whip_rank": null,
"war_value": 0.17,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0009,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0009,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9945,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9949,
"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": 4,
"H": 12,
"BB": 0,
"SO": 10,
"HR": 1,
"ERA": 3.724137931034483,
"WHIP": 1.2413793103448276,
"K9": 9.310344827586208,
"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-09T00:00:00"
}{
"available": true,
"pitcher_id": "663947",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 25,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 25,
"pitch_usage": 0.0,
"release_speed": 86.2775859003846,
"release_spin_rate": 2247.2741481534126,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 25,
"pitch_usage": 0.0,
"release_speed": 86.2775859003846,
"release_spin_rate": 2247.2741481534126,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2776,
"release_spin_rate": 2247.2741,
"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.1924,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.3745,
"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.663,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5311,
"prior_weight": 0.4689
},
"role": "pitcher",
"player_id": "663947",
"report_date": "20260611_M",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.0,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 0.0,
"SO": 2.0,
"HR": 0.0,
"BF": 14.0,
"Pitches": 68.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.2,
"H": 1.2,
"BB": 0.0,
"SO": 0.4,
"HR": 0.0,
"BF": 2.8,
"Pitches": 13.6
},
"rates": {
"ERA": 3.0,
"WHIP": 2.0,
"ER_per_IP": 0.33333,
"H_per_IP": 2.0,
"BB_per_IP": 0.0,
"SO_per_IP": 0.66667,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 4.0,
"R": 6.0,
"H": 12.0,
"BB": 0.0,
"SO": 10.0,
"HR": 1.0,
"BF": 40.0,
"Pitches": 164.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 1.2,
"BB": 0.0,
"SO": 1.0,
"HR": 0.1,
"BF": 4.0,
"Pitches": 16.4
},
"rates": {
"ERA": 3.7241,
"WHIP": 1.2414,
"ER_per_IP": 0.41379,
"H_per_IP": 1.24138,
"BB_per_IP": 0.0,
"SO_per_IP": 1.03448,
"HR_per_IP": 0.10345
}
},
"season": {
"games": 29,
"totals": {
"IP": 28.2,
"ER": 14.0,
"R": 16.0,
"H": 35.0,
"BB": 8.0,
"SO": 25.0,
"HR": 4.0,
"BF": 125.0,
"Pitches": 499.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4828,
"R": 0.5517,
"H": 1.2069,
"BB": 0.2759,
"SO": 0.8621,
"HR": 0.1379,
"BF": 4.3103,
"Pitches": 17.2069
},
"rates": {
"ERA": 4.3953,
"WHIP": 1.5,
"ER_per_IP": 0.48837,
"H_per_IP": 1.22093,
"BB_per_IP": 0.27907,
"SO_per_IP": 0.87209,
"HR_per_IP": 0.13953
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.333,
"predicted_H": 0.984,
"predicted_BB": 0.153,
"predicted_SO": 0.675,
"predicted_HR": 0.076,
"predicted_ERA": 3.9273,
"predicted_WHIP": 1.4893
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5481,
"form_weight": 0.4519,
"form_reliability": 0.5311,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.663,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5311,
"prior_weight": 0.4689
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 3.0,
"form": 0.333,
"final": 1.7948,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 0.984,
"final": 2.089,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.153,
"final": 0.6172,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.675,
"final": 0.8531,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.076,
"final": 0.0343,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9273,
"final": 3.9273,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4893,
"final": 1.4893,
"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.080 | 0.000 | 0.000 | Hitting_2B | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_3B | 0.072 | 0.000 | 0.000 | Hitting_3B | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_AB | 3.184 | 4.000 | 5.000 | Hitting_AB | 3.184 | 2.000 | 0.816 | 2.000 |
| predicted_AVG | 0.248 | 0.000 | 0.200 | Hitting_AVG | 0.224 | 0.500 | -0.224 | -0.500 |
| predicted_BB | 0.328 | 1.000 | 0.000 | Hitting_BB | 0.328 | 0.000 | 0.672 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.790 | 0.000 | 1.000 | Hitting_H | 0.712 | 1.000 | -0.712 | -1.000 |
| predicted_HR | 0.200 | 0.000 | 0.000 | Hitting_HR | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_OBP | 0.313 | 0.200 | 0.200 | Hitting_OBP | 0.302 | 0.667 | -0.102 | -0.467 |
| predicted_R | 0.360 | 0.000 | 1.000 | Hitting_R | 0.360 | 0.000 | -0.360 | 0.000 |
| predicted_RBI | 0.660 | 0.000 | 1.000 | Hitting_RBI | 0.584 | 2.000 | -0.584 | -2.000 |
| predicted_SLG | 0.477 | 0.000 | 0.200 | Hitting_SLG | 0.482 | 0.500 | -0.482 | -0.500 |
| predicted_SO | 1.256 | 3.000 | 2.000 | Hitting_SO | 1.256 | 1.000 | 1.744 | 2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.2560 -> 3.0000 (boost 1.7440, worse) |
| Biggest Deboost | predicted_H: 0.7900 -> 0.0000 (deboost -0.7900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 3.1840 -> 4.5319 (boost 1.3479, 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.5028 -> 0.5257 (boost 0.0229, better) | predicted_OBP: 0.3121 -> 0.3063 (deboost -0.0058, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 9 | 2 | 7 | 1 | 8 | predicted_AB: 4.5319 -> 5.0000 (boost 0.4681, better) | predicted_BB: 0.4082 -> 0.0000 (deboost -0.4082, worse) | AB rounded to 5 (raw=4.53), rates preserved: AVG=0.244 HR/AB=0.075 |
| 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.5261 -> 1.0000 (boost 0.4739, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5257 -> 0.2000 (deboost -0.3257, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.5257 (boost 0.3257, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "681481",
"player_name": "Kerry Carpenter",
"position": "RF",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.08,
"predicted_3B": 0.072,
"predicted_AB": 3.184,
"predicted_AVG": 0.248,
"predicted_BB": 0.328,
"predicted_H": 0.79,
"predicted_HR": 0.2,
"predicted_OBP": 0.313,
"predicted_R": 0.36,
"predicted_RBI": 0.66,
"predicted_SLG": 0.477,
"predicted_SO": 1.256
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1107,
"predicted_3B": 0.0763,
"predicted_AB": 4.5319,
"predicted_AVG": 0.2442,
"predicted_BB": 0.4096,
"predicted_H": 1.1001,
"predicted_HBP": 0.187,
"predicted_HR": 0.3386,
"predicted_OBP": 0.3121,
"predicted_R": 0.5224,
"predicted_RBI": 1.047,
"predicted_SLG": 0.5028,
"predicted_SO": 1.6715
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.08,
"after": 0.1107,
"delta": 0.0307,
"percent_delta": 0.3838,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.072,
"after": 0.0763,
"delta": 0.0043,
"percent_delta": 0.0597,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.184,
"after": 4.5319,
"delta": 1.3479,
"percent_delta": 0.4233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2442,
"delta": -0.0038,
"percent_delta": -0.0153,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.328,
"after": 0.4096,
"delta": 0.0816,
"percent_delta": 0.2488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 1.1001,
"delta": 0.3101,
"percent_delta": 0.3925,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.3386,
"delta": 0.1386,
"percent_delta": 0.693,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3121,
"delta": -0.0009,
"percent_delta": -0.0029,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.36,
"after": 0.5224,
"delta": 0.1624,
"percent_delta": 0.4511,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 1.047,
"delta": 0.387,
"percent_delta": 0.5864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.5028,
"delta": 0.0258,
"percent_delta": 0.0541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.256,
"after": 1.6715,
"delta": 0.4155,
"percent_delta": 0.3308,
"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.184,
"after": 4.5319,
"delta": 1.3479,
"percent_delta": 0.4233,
"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.1107,
"predicted_3B": 0.0763,
"predicted_AB": 4.5319,
"predicted_AVG": 0.2438,
"predicted_BB": 0.4082,
"predicted_H": 1.1048,
"predicted_HBP": 0.187,
"predicted_HR": 0.3381,
"predicted_OBP": 0.3063,
"predicted_R": 0.5261,
"predicted_RBI": 1.0544,
"predicted_SLG": 0.5257,
"predicted_SO": 1.677
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1107,
"after": 0.1107,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0763,
"after": 0.0763,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5319,
"after": 4.5319,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2442,
"after": 0.2438,
"delta": -0.0004,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4096,
"after": 0.4082,
"delta": -0.0014,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1001,
"after": 1.1048,
"delta": 0.0047,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.187,
"after": 0.187,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3386,
"after": 0.3381,
"delta": -0.0005,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3121,
"after": 0.3063,
"delta": -0.0058,
"percent_delta": -0.0186,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5224,
"after": 0.5261,
"delta": 0.0037,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.047,
"after": 1.0544,
"delta": 0.0074,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5028,
"after": 0.5257,
"delta": 0.0229,
"percent_delta": 0.0455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6715,
"after": 1.677,
"delta": 0.0055,
"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.5028,
"after": 0.5257,
"delta": 0.0229,
"percent_delta": 0.0455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3121,
"after": 0.3063,
"delta": -0.0058,
"percent_delta": -0.0186,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.53), rates preserved: AVG=0.244 HR/AB=0.075",
"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.1107,
"after": 0.0,
"delta": -0.1107,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0763,
"after": 0.0,
"delta": -0.0763,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.5319,
"after": 5.0,
"delta": 0.4681,
"percent_delta": 0.1033,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4082,
"after": 0.0,
"delta": -0.4082,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1048,
"after": 1.0,
"delta": -0.1048,
"percent_delta": -0.0949,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.187,
"after": 0.0,
"delta": -0.187,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3381,
"after": 0.0,
"delta": -0.3381,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0544,
"after": 1.0,
"delta": -0.0544,
"percent_delta": -0.0516,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.677,
"after": 2.0,
"delta": 0.323,
"percent_delta": 0.1926,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 1,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.5319,
"after": 5.0,
"delta": 0.4681,
"percent_delta": 0.1033,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4082,
"after": 0.0,
"delta": -0.4082,
"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": 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_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": 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.5261,
"after": 1.0,
"delta": 0.4739,
"percent_delta": 0.9008,
"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.5261,
"after": 1.0,
"delta": 0.4739,
"percent_delta": 0.9008,
"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": 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.2438,
"after": 0.2,
"delta": -0.0438,
"percent_delta": -0.1797,
"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.3063,
"after": 0.2,
"delta": -0.1063,
"percent_delta": -0.347,
"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.5257,
"after": 0.2,
"delta": -0.3257,
"percent_delta": -0.6196,
"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.5257,
"after": 0.2,
"delta": -0.3257,
"percent_delta": -0.6196,
"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": 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": 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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 5.0,
"after": 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.2438,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3063,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5257,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.2438,
"delta": 0.0438,
"percent_delta": 0.2189,
"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.3063,
"delta": 0.1063,
"percent_delta": 0.5314,
"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.5257,
"delta": 0.3257,
"percent_delta": 1.6284,
"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.2,
"after": 0.5257,
"delta": 0.3257,
"percent_delta": 1.6284,
"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.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.072,
"after": 0.0,
"delta": -0.072,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.184,
"after": 4.0,
"delta": 0.816,
"percent_delta": 0.2563,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.248,
"after": 0.2438,
"delta": -0.0042,
"percent_delta": -0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.328,
"after": 1.0,
"delta": 0.672,
"percent_delta": 2.0488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3063,
"delta": -0.0067,
"percent_delta": -0.0214,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.477,
"after": 0.5257,
"delta": 0.0487,
"percent_delta": 0.1021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.256,
"after": 3.0,
"delta": 1.744,
"percent_delta": 1.3885,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.256,
"after": 3.0,
"delta": 1.744,
"percent_delta": 1.3885,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.080 | - |
| predicted_3B | 0.072 | - |
| predicted_AB | 3.184 | - |
| predicted_AVG | 0.248 | - |
| predicted_BB | 0.328 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.200 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 0.360 | - |
| predicted_RBI | 0.660 | - |
| predicted_SLG | 0.477 | - |
| predicted_SO | 1.256 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | 0.031 |
| predicted_3B | 0.076 | 0.004 |
| predicted_AB | 4.532 | 1.348 |
| predicted_AVG | 0.244 | -0.004 |
| predicted_BB | 0.410 | 0.082 |
| predicted_H | 1.100 | 0.310 |
| predicted_HBP | 0.187 | - |
| predicted_HR | 0.339 | 0.139 |
| predicted_OBP | 0.312 | -0.001 |
| predicted_R | 0.522 | 0.162 |
| predicted_RBI | 1.047 | 0.387 |
| predicted_SLG | 0.503 | 0.026 |
| predicted_SO | 1.671 | 0.415 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.111 | 0.000 |
| predicted_3B | 0.076 | 0.000 |
| predicted_AB | 4.532 | 0.000 |
| predicted_AVG | 0.244 | -0.000 |
| predicted_BB | 0.408 | -0.001 |
| predicted_H | 1.105 | 0.005 |
| predicted_HBP | 0.187 | 0.000 |
| predicted_HR | 0.338 | -0.001 |
| predicted_OBP | 0.306 | -0.006 |
| predicted_R | 0.526 | 0.004 |
| predicted_RBI | 1.054 | 0.007 |
| predicted_SLG | 0.526 | 0.023 |
| predicted_SO | 1.677 | 0.006 |
AB rounded to 5 (raw=4.53), rates preserved: AVG=0.244 HR/AB=0.075
| 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 | - |
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 | 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 | 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.111 |
| predicted_3B | 0.000 | -0.076 |
| predicted_AB | 5.000 | 0.468 |
| predicted_AVG | 0.200 | -0.044 |
| predicted_BB | 0.000 | -0.408 |
| predicted_H | 1.000 | -0.105 |
| predicted_HR | 0.000 | -0.338 |
| predicted_OBP | 0.200 | -0.106 |
| predicted_R | 1.000 | 0.474 |
| predicted_RBI | 1.000 | -0.054 |
| predicted_SLG | 0.200 | -0.326 |
| predicted_SO | 2.000 | 0.323 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 5.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 3.000 | 1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 15.000 | 3.000 | 0.000 | 0.000 | 2.000 | 6.000 | 2.000 | 1.000 | 5.000 | 0.2000 | 0.2941 | 0.6000 | 0.2000 | 0.1333 | 0.4000 | 0.0667 | 0.3333 |
| last_10 | 0.20 | 10 | - | 28.000 | 9.000 | 1.000 | 0.000 | 3.000 | 9.000 | 3.000 | 1.000 | 8.000 | 0.3214 | 0.3548 | 0.6786 | 0.3214 | 0.1071 | 0.3214 | 0.0357 | 0.2857 |
| season | 0.60 | 45 | - | 398.000 | 89.000 | 10.000 | 9.000 | 25.000 | 73.000 | 45.000 | 41.000 | 157.000 | 0.2236 | 0.3018 | 0.4824 | 0.2236 | 0.0628 | 0.1834 | 0.1030 | 0.3945 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1510 |
| predicted_3B | 0.0820 |
| predicted_AB | 6.3050 |
| predicted_AVG | 0.2392 |
| predicted_BB | 0.5170 |
| predicted_H | 1.5080 |
| predicted_HBP | 0.1870 |
| predicted_HR | 0.5210 |
| predicted_OBP | 0.3110 |
| predicted_R | 0.7360 |
| predicted_RBI | 1.5560 |
| predicted_SLG | 0.5367 |
| predicted_SO | 2.2180 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0800 | 0.1510 | 0.1107 | model_form_blend |
| predicted_3B | 0.0720 | 0.0820 | 0.0763 | model_form_blend |
| predicted_AB | 3.1840 | 6.3050 | 4.5319 | model_form_blend |
| predicted_AVG | 0.2480 | 0.2392 | 0.2442 | model_form_blend |
| predicted_BB | 0.3280 | 0.5170 | 0.4096 | model_form_blend |
| predicted_H | 0.7900 | 1.5080 | 1.1001 | model_form_blend |
| predicted_HBP | - | 0.1870 | 0.1870 | form_only |
| predicted_HR | 0.2000 | 0.5210 | 0.3386 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3110 | 0.3121 | model_form_blend |
| predicted_R | 0.3600 | 0.7360 | 0.5224 | model_form_blend |
| predicted_RBI | 0.6600 | 1.5560 | 1.0470 | model_form_blend |
| predicted_SLG | 0.4770 | 0.5367 | 0.5028 | model_form_blend |
| predicted_SO | 1.2560 | 2.2180 | 1.6715 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 125 |
| Season rows before report date | 125 |
| Report year | 2026 |
| Profile rows used | 125 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.224 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 2 |
| 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 | 20260610_MIN@DET |
| game_type | full |
| mlbID | 681481 |
| playerID | 681481 |
| playerName | Kerry Carpenter |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 32.9 |
| sl_bb_percent | 8.2 |
| sl_woba | 0.347 |
| sl_xwoba | 0.29 |
| sl_xba | 0.198 |
| sl_xslg | 0.372 |
| sl_sweet_spot_percent | 36.1 |
| sl_barrel_batted_rate | 11.0 |
| sl_hard_hit_percent | 45.8 |
| sl_exit_velocity_avg | 91.0 |
| sl_launch_angle_avg | 22.2 |
| sl_whiff_percent | 32.1 |
| sl_swing_percent | 49.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.229 | 0.000 | 0.000 | Hitting_2B | 0.229 | 0.000 | -0.229 | 0.000 |
| predicted_3B | 0.056 | 0.000 | 0.000 | Hitting_3B | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_AB | 4.330 | 3.000 | 7.000 | Hitting_AB | 3.827 | 2.000 | -0.827 | 1.000 |
| predicted_AVG | 0.243 | 0.333 | 0.286 | Hitting_AVG | 0.298 | 0.000 | 0.035 | 0.333 |
| predicted_BB | 0.610 | 2.000 | 1.000 | Hitting_BB | 0.610 | 3.000 | 1.390 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.050 | 1.000 | 2.000 | Hitting_H | 1.141 | 0.000 | -0.141 | 1.000 |
| predicted_HR | 0.130 | 1.000 | 0.000 | Hitting_HR | 0.060 | 0.000 | 0.940 | 1.000 |
| predicted_OBP | 0.370 | 0.600 | 0.375 | Hitting_OBP | 0.399 | 0.600 | 0.201 | 0.000 |
| predicted_R | 0.659 | 1.000 | 1.000 | Hitting_R | 0.659 | 2.000 | 0.341 | -1.000 |
| predicted_RBI | 0.480 | 2.000 | 1.000 | Hitting_RBI | 0.442 | 0.000 | 1.558 | 2.000 |
| predicted_SLG | 0.419 | 1.333 | 0.286 | Hitting_SLG | 0.434 | 0.000 | 0.899 | 1.333 |
| predicted_SO | 0.558 | 0.000 | 1.000 | Hitting_SO | 0.558 | 0.000 | -0.558 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 12 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 5 |
| Better Metrics | 8 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.4800 -> 2.0000 (boost 1.5200, better) |
| Biggest Deboost | predicted_AB: 4.3300 -> 3.0000 (deboost -1.3300, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.3300 -> 6.9194 (boost 2.5894, 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.2567 -> 0.2640 (boost 0.0073, 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 | 3 | 5 | predicted_RBI: 0.8189 -> 1.0000 (boost 0.1811, better) | predicted_2B: 0.3900 -> 0.0000 (deboost -0.3900, worse) | AB rounded to 7 (raw=6.92), rates preserved: AVG=0.264 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2405 -> 1.0000 (deboost -0.2405, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_AVG: 0.2640 -> 0.2860 (boost 0.0220, better) | predicted_SLG: 0.4244 -> 0.2860 (deboost -0.1384, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 3 | 3 | 4 | 2 | predicted_BB: 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 | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2860 -> 0.4244 (boost 0.1384, better) | predicted_AVG: 0.2860 -> 0.2640 (deboost -0.0220, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805808",
"player_name": "Kevin McGonigle",
"position": "SS",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.056,
"predicted_AB": 4.33,
"predicted_AVG": 0.243,
"predicted_BB": 0.61,
"predicted_H": 1.05,
"predicted_HR": 0.13,
"predicted_OBP": 0.37,
"predicted_R": 0.659,
"predicted_RBI": 0.48,
"predicted_SLG": 0.419,
"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.39,
"predicted_3B": 0.0702,
"predicted_AB": 6.9194,
"predicted_AVG": 0.2567,
"predicted_BB": 1.2921,
"predicted_H": 1.8192,
"predicted_HBP": 0.059,
"predicted_HR": 0.1933,
"predicted_OBP": 0.3844,
"predicted_R": 1.2318,
"predicted_RBI": 0.8131,
"predicted_SLG": 0.4238,
"predicted_SO": 1.0419
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.229,
"after": 0.39,
"delta": 0.161,
"percent_delta": 0.7031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.056,
"after": 0.0702,
"delta": 0.0142,
"percent_delta": 0.2536,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.33,
"after": 6.9194,
"delta": 2.5894,
"percent_delta": 0.598,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2567,
"delta": 0.0137,
"percent_delta": 0.0564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.61,
"after": 1.2921,
"delta": 0.6821,
"percent_delta": 1.1182,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.8192,
"delta": 0.7692,
"percent_delta": 0.7326,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1933,
"delta": 0.0633,
"percent_delta": 0.4869,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.37,
"after": 0.3844,
"delta": 0.0144,
"percent_delta": 0.0389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.659,
"after": 1.2318,
"delta": 0.5728,
"percent_delta": 0.8692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.48,
"after": 0.8131,
"delta": 0.3331,
"percent_delta": 0.694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.419,
"after": 0.4238,
"delta": 0.0048,
"percent_delta": 0.0115,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.558,
"after": 1.0419,
"delta": 0.4839,
"percent_delta": 0.8672,
"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.33,
"after": 6.9194,
"delta": 2.5894,
"percent_delta": 0.598,
"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.39,
"predicted_3B": 0.0702,
"predicted_AB": 6.9194,
"predicted_AVG": 0.264,
"predicted_BB": 1.2878,
"predicted_H": 1.827,
"predicted_HBP": 0.059,
"predicted_HR": 0.193,
"predicted_OBP": 0.3795,
"predicted_R": 1.2405,
"predicted_RBI": 0.8189,
"predicted_SLG": 0.4244,
"predicted_SO": 1.0453
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.39,
"after": 0.39,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0702,
"after": 0.0702,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9194,
"after": 6.9194,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2567,
"after": 0.264,
"delta": 0.0073,
"percent_delta": 0.0284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2921,
"after": 1.2878,
"delta": -0.0043,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8192,
"after": 1.827,
"delta": 0.0078,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.059,
"after": 0.059,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1933,
"after": 0.193,
"delta": -0.0003,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3844,
"after": 0.3795,
"delta": -0.0049,
"percent_delta": -0.0127,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.2318,
"after": 1.2405,
"delta": 0.0087,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8131,
"after": 0.8189,
"delta": 0.0058,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4238,
"after": 0.4244,
"delta": 0.0006,
"percent_delta": 0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0419,
"after": 1.0453,
"delta": 0.0034,
"percent_delta": 0.0033,
"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.2567,
"after": 0.264,
"delta": 0.0073,
"percent_delta": 0.0284,
"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.92), rates preserved: AVG=0.264 HR/AB=0.028",
"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.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0702,
"after": 0.0,
"delta": -0.0702,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.9194,
"after": 7.0,
"delta": 0.0806,
"percent_delta": 0.0116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.2878,
"after": 1.0,
"delta": -0.2878,
"percent_delta": -0.2235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.827,
"after": 2.0,
"delta": 0.173,
"percent_delta": 0.0947,
"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.193,
"after": 0.0,
"delta": -0.193,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8189,
"after": 1.0,
"delta": 0.1811,
"percent_delta": 0.2212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0453,
"after": 1.0,
"delta": -0.0453,
"percent_delta": -0.0433,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.8189,
"after": 1.0,
"delta": 0.1811,
"percent_delta": 0.2212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"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.2405,
"after": 1.0,
"delta": -0.2405,
"percent_delta": -0.1939,
"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.2405,
"after": 1.0,
"delta": -0.2405,
"percent_delta": -0.1939,
"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.264,
"after": 0.286,
"delta": 0.022,
"percent_delta": 0.0833,
"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.3795,
"after": 0.375,
"delta": -0.0045,
"percent_delta": -0.0119,
"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.4244,
"after": 0.286,
"delta": -0.1384,
"percent_delta": -0.3261,
"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.264,
"after": 0.286,
"delta": 0.022,
"percent_delta": 0.0833,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4244,
"after": 0.286,
"delta": -0.1384,
"percent_delta": -0.3261,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 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": 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": 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": 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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"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": 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.264,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3795,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4244,
"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.264,
"delta": -0.022,
"percent_delta": -0.0768,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"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.3795,
"delta": 0.0045,
"percent_delta": 0.0121,
"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.4244,
"delta": 0.1384,
"percent_delta": 0.4838,
"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.4244,
"delta": 0.1384,
"percent_delta": 0.4838,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.264,
"delta": -0.022,
"percent_delta": -0.0768,
"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.056,
"after": 0.0,
"delta": -0.056,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.33,
"after": 3.0,
"delta": -1.33,
"percent_delta": -0.3072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.264,
"delta": 0.021,
"percent_delta": 0.0864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.61,
"after": 2.0,
"delta": 1.39,
"percent_delta": 2.2787,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.0,
"delta": -0.05,
"percent_delta": -0.0476,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 1.0,
"delta": 0.87,
"percent_delta": 6.6923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.37,
"after": 0.3795,
"delta": 0.0095,
"percent_delta": 0.0257,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.659,
"after": 1.0,
"delta": 0.341,
"percent_delta": 0.5175,
"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.419,
"after": 0.4244,
"delta": 0.0054,
"percent_delta": 0.0129,
"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": 12,
"boosted_metrics": 7,
"deboosted_metrics": 5,
"better_metrics": 8,
"worse_metrics": 4,
"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_AB",
"before": 4.33,
"after": 3.0,
"delta": -1.33,
"percent_delta": -0.3072,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}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.056 | - |
| predicted_AB | 4.330 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.610 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.370 | - |
| predicted_R | 0.659 | - |
| predicted_RBI | 0.480 | - |
| predicted_SLG | 0.419 | - |
| 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.390 | 0.161 |
| predicted_3B | 0.070 | 0.014 |
| predicted_AB | 6.919 | 2.589 |
| predicted_AVG | 0.257 | 0.014 |
| predicted_BB | 1.292 | 0.682 |
| predicted_H | 1.819 | 0.769 |
| predicted_HBP | 0.059 | - |
| predicted_HR | 0.193 | 0.063 |
| predicted_OBP | 0.384 | 0.014 |
| predicted_R | 1.232 | 0.573 |
| predicted_RBI | 0.813 | 0.333 |
| predicted_SLG | 0.424 | 0.005 |
| predicted_SO | 1.042 | 0.484 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.390 | 0.000 |
| predicted_3B | 0.070 | 0.000 |
| predicted_AB | 6.919 | 0.000 |
| predicted_AVG | 0.264 | 0.007 |
| predicted_BB | 1.288 | -0.004 |
| predicted_H | 1.827 | 0.008 |
| predicted_HBP | 0.059 | 0.000 |
| predicted_HR | 0.193 | -0.000 |
| predicted_OBP | 0.380 | -0.005 |
| predicted_R | 1.240 | 0.009 |
| predicted_RBI | 0.819 | 0.006 |
| predicted_SLG | 0.424 | 0.001 |
| predicted_SO | 1.045 | 0.003 |
AB rounded to 7 (raw=6.92), rates preserved: AVG=0.264 HR/AB=0.028
| 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.390 |
| predicted_3B | 0.000 | -0.070 |
| predicted_AB | 7.000 | 0.081 |
| predicted_AVG | 0.286 | 0.022 |
| predicted_BB | 1.000 | -0.288 |
| predicted_H | 2.000 | 0.173 |
| predicted_HR | 0.000 | -0.193 |
| predicted_OBP | 0.375 | -0.005 |
| predicted_R | 1.000 | -0.240 |
| predicted_RBI | 1.000 | 0.181 |
| predicted_SLG | 0.286 | -0.138 |
| predicted_SO | 1.000 | -0.045 |
Attached 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 | 2.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 | 2.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 4.000 | 1.000 | 0.000 | 1.000 | 3.000 | 4.000 | 6.000 | 3.000 | 0.2353 | 0.4348 | 0.4706 | 0.2353 | 0.0588 | 0.1765 | 0.3529 | 0.1765 |
| last_10 | 0.20 | 10 | - | 37.000 | 9.000 | 2.000 | 0.000 | 1.000 | 3.000 | 8.000 | 9.000 | 7.000 | 0.2432 | 0.3913 | 0.3784 | 0.2432 | 0.0270 | 0.0811 | 0.2432 | 0.1892 |
| season | 0.60 | 64 | - | 953.000 | 284.000 | 57.000 | 14.000 | 15.000 | 110.000 | 164.000 | 152.000 | 139.000 | 0.2980 | 0.3995 | 0.4344 | 0.2980 | 0.0157 | 0.1154 | 0.1595 | 0.1459 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5930 |
| predicted_3B | 0.0880 |
| predicted_AB | 10.1840 |
| predicted_AVG | 0.2739 |
| predicted_BB | 2.1520 |
| predicted_H | 2.7890 |
| predicted_HBP | 0.0590 |
| predicted_HR | 0.2730 |
| predicted_OBP | 0.4025 |
| predicted_R | 1.9540 |
| predicted_RBI | 1.2330 |
| predicted_SLG | 0.4299 |
| predicted_SO | 1.6520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2290 | 0.5930 | 0.3900 | model_form_blend |
| predicted_3B | 0.0560 | 0.0880 | 0.0702 | model_form_blend |
| predicted_AB | 4.3300 | 10.1840 | 6.9194 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2739 | 0.2567 | model_form_blend |
| predicted_BB | 0.6100 | 2.1520 | 1.2921 | model_form_blend |
| predicted_H | 1.0500 | 2.7890 | 1.8192 | model_form_blend |
| predicted_HBP | - | 0.0590 | 0.0590 | form_only |
| predicted_HR | 0.1300 | 0.2730 | 0.1933 | model_form_blend |
| predicted_OBP | 0.3700 | 0.4025 | 0.3844 | model_form_blend |
| predicted_R | 0.6590 | 1.9540 | 1.2318 | model_form_blend |
| predicted_RBI | 0.4800 | 1.2330 | 0.8131 | model_form_blend |
| predicted_SLG | 0.4190 | 0.4299 | 0.4238 | model_form_blend |
| predicted_SO | 0.5580 | 1.6520 | 1.0419 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 249 |
| Season rows before report date | 249 |
| Report year | 2026 |
| Profile rows used | 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 | 5 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 2 |
| BB | 2 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.298 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 3 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| 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 | 0 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 805808 |
| playerID | 805808 |
| playerName | Kevin McGonigle |
| pos | SS |
| started | True |
| startingPosition | 3B |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 13.2 |
| sl_bb_percent | 14.6 |
| sl_woba | 0.365 |
| sl_xwoba | 0.373 |
| sl_xba | 0.275 |
| sl_xslg | 0.459 |
| sl_sweet_spot_percent | 37.6 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 37.6 |
| sl_exit_velocity_avg | 88.0 |
| sl_launch_angle_avg | 21.5 |
| sl_whiff_percent | 14.5 |
| sl_swing_percent | 41.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.086 | 0.000 | 0.000 | Hitting_2B | 0.086 | 1.000 | -0.086 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.210 | 5.000 | 7.000 | Hitting_AB | 3.697 | 4.000 | 1.303 | 1.000 |
| predicted_AVG | 0.260 | 0.400 | 0.286 | Hitting_AVG | 0.262 | 0.750 | 0.138 | -0.350 |
| predicted_BB | 0.809 | 0.000 | 1.000 | Hitting_BB | 0.809 | 1.000 | -0.809 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.090 | 2.000 | 2.000 | Hitting_H | 0.967 | 3.000 | 1.033 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_OBP | 0.371 | 0.400 | 0.375 | Hitting_OBP | 0.393 | 0.800 | 0.007 | -0.400 |
| predicted_R | 0.632 | 1.000 | 1.000 | Hitting_R | 0.632 | 0.000 | 0.368 | 1.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.375 | 1.000 | -0.375 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.412 | 0.400 | 0.286 | Hitting_SLG | 0.343 | 1.000 | 0.057 | -0.600 |
| predicted_SO | 0.750 | 0.000 | 2.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 | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_H: 1.0900 -> 2.0000 (boost 0.9100, better) |
| Biggest Deboost | predicted_BB: 0.8090 -> 0.0000 (deboost -0.8090, 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.2100 -> 6.8556 (boost 2.6456, 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.2783 -> 0.2882 (boost 0.0099, better) | predicted_SLG: 0.4081 -> 0.3862 (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_SO: 1.6304 -> 2.0000 (boost 0.3696, worse) | predicted_2B: 0.2673 -> 0.0000 (deboost -0.2673, worse) | AB rounded to 7 (raw=6.86), rates preserved: AVG=0.288 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0519 -> 1.0000 (deboost -0.0519, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3862 -> 0.2860 (deboost -0.1002, 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 | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2860 -> 0.3862 (boost 0.1002, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "650402",
"player_name": "Gleyber Torres",
"position": "2B",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.086,
"predicted_3B": 0.0,
"predicted_AB": 4.21,
"predicted_AVG": 0.26,
"predicted_BB": 0.809,
"predicted_H": 1.09,
"predicted_HR": 0.1,
"predicted_OBP": 0.371,
"predicted_R": 0.632,
"predicted_RBI": 0.59,
"predicted_SLG": 0.412,
"predicted_SO": 0.75
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2673,
"predicted_3B": 0.0009,
"predicted_AB": 6.8556,
"predicted_AVG": 0.2783,
"predicted_BB": 1.1607,
"predicted_H": 1.9672,
"predicted_HBP": 0.205,
"predicted_HR": 0.1346,
"predicted_OBP": 0.3856,
"predicted_R": 1.0445,
"predicted_RBI": 1.0082,
"predicted_SLG": 0.4081,
"predicted_SO": 1.625
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.086,
"after": 0.2673,
"delta": 0.1813,
"percent_delta": 2.1081,
"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.21,
"after": 6.8556,
"delta": 2.6456,
"percent_delta": 0.6284,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2783,
"delta": 0.0183,
"percent_delta": 0.0704,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.809,
"after": 1.1607,
"delta": 0.3517,
"percent_delta": 0.4347,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.9672,
"delta": 0.8772,
"percent_delta": 0.8048,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1346,
"delta": 0.0346,
"percent_delta": 0.346,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.371,
"after": 0.3856,
"delta": 0.0146,
"percent_delta": 0.0394,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.632,
"after": 1.0445,
"delta": 0.4125,
"percent_delta": 0.6527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 1.0082,
"delta": 0.4182,
"percent_delta": 0.7088,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.4081,
"delta": -0.0039,
"percent_delta": -0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.75,
"after": 1.625,
"delta": 0.875,
"percent_delta": 1.1667,
"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.21,
"after": 6.8556,
"delta": 2.6456,
"percent_delta": 0.6284,
"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": 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.2673,
"predicted_3B": 0.0009,
"predicted_AB": 6.8556,
"predicted_AVG": 0.2882,
"predicted_BB": 1.1569,
"predicted_H": 1.9757,
"predicted_HBP": 0.205,
"predicted_HR": 0.1344,
"predicted_OBP": 0.391,
"predicted_R": 1.0519,
"predicted_RBI": 1.0154,
"predicted_SLG": 0.3862,
"predicted_SO": 1.6304
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2673,
"after": 0.2673,
"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.8556,
"after": 6.8556,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2783,
"after": 0.2882,
"delta": 0.0099,
"percent_delta": 0.0356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1607,
"after": 1.1569,
"delta": -0.0038,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.9672,
"after": 1.9757,
"delta": 0.0085,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.205,
"after": 0.205,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1346,
"after": 0.1344,
"delta": -0.0002,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3856,
"after": 0.391,
"delta": 0.0054,
"percent_delta": 0.014,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0445,
"after": 1.0519,
"delta": 0.0074,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0082,
"after": 1.0154,
"delta": 0.0072,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4081,
"after": 0.3862,
"delta": -0.0219,
"percent_delta": -0.0537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.625,
"after": 1.6304,
"delta": 0.0054,
"percent_delta": 0.0033,
"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.2783,
"after": 0.2882,
"delta": 0.0099,
"percent_delta": 0.0356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4081,
"after": 0.3862,
"delta": -0.0219,
"percent_delta": -0.0537,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.86), rates preserved: AVG=0.288 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": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2673,
"after": 0.0,
"delta": -0.2673,
"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.8556,
"after": 7.0,
"delta": 0.1444,
"percent_delta": 0.0211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.1569,
"after": 1.0,
"delta": -0.1569,
"percent_delta": -0.1356,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9757,
"after": 2.0,
"delta": 0.0243,
"percent_delta": 0.0123,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.205,
"after": 0.0,
"delta": -0.205,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1344,
"after": 0.0,
"delta": -0.1344,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0154,
"after": 1.0,
"delta": -0.0154,
"percent_delta": -0.0152,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.6304,
"after": 2.0,
"delta": 0.3696,
"percent_delta": 0.2267,
"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": 1.6304,
"after": 2.0,
"delta": 0.3696,
"percent_delta": 0.2267,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2673,
"after": 0.0,
"delta": -0.2673,
"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.0519,
"after": 1.0,
"delta": -0.0519,
"percent_delta": -0.0493,
"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.0519,
"after": 1.0,
"delta": -0.0519,
"percent_delta": -0.0493,
"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.2882,
"after": 0.286,
"delta": -0.0022,
"percent_delta": -0.0076,
"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.391,
"after": 0.375,
"delta": -0.016,
"percent_delta": -0.0409,
"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.3862,
"after": 0.286,
"delta": -0.1002,
"percent_delta": -0.2595,
"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.3862,
"after": 0.286,
"delta": -0.1002,
"percent_delta": -0.2595,
"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": 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": 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.2882,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.391,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3862,
"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.2882,
"delta": 0.0022,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"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.391,
"delta": 0.016,
"percent_delta": 0.0426,
"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.286,
"after": 0.3862,
"delta": 0.1002,
"percent_delta": 0.3505,
"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.3862,
"delta": 0.1002,
"percent_delta": 0.3505,
"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.086,
"after": 0.0,
"delta": -0.086,
"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": 5.0,
"delta": 0.79,
"percent_delta": 0.1876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.26,
"after": 0.2882,
"delta": 0.0282,
"percent_delta": 0.1085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.809,
"after": 0.0,
"delta": -0.809,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 2.0,
"delta": 0.91,
"percent_delta": 0.8349,
"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.371,
"after": 0.391,
"delta": 0.02,
"percent_delta": 0.0539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.632,
"after": 1.0,
"delta": 0.368,
"percent_delta": 0.5823,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.0,
"delta": -0.59,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.412,
"after": 0.3862,
"delta": -0.0258,
"percent_delta": -0.0626,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.75,
"after": 0.0,
"delta": -0.75,
"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": 1.09,
"after": 2.0,
"delta": 0.91,
"percent_delta": 0.8349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.809,
"after": 0.0,
"delta": -0.809,
"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.086 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.260 | - |
| predicted_BB | 0.809 | - |
| predicted_H | 1.090 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.371 | - |
| predicted_R | 0.632 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.412 | - |
| predicted_SO | 0.750 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.267 | 0.181 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 6.856 | 2.646 |
| predicted_AVG | 0.278 | 0.018 |
| predicted_BB | 1.161 | 0.352 |
| predicted_H | 1.967 | 0.877 |
| predicted_HBP | 0.205 | - |
| predicted_HR | 0.135 | 0.035 |
| predicted_OBP | 0.386 | 0.015 |
| predicted_R | 1.044 | 0.412 |
| predicted_RBI | 1.008 | 0.418 |
| predicted_SLG | 0.408 | -0.004 |
| predicted_SO | 1.625 | 0.875 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.267 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 6.856 | 0.000 |
| predicted_AVG | 0.288 | 0.010 |
| predicted_BB | 1.157 | -0.004 |
| predicted_H | 1.976 | 0.008 |
| predicted_HBP | 0.205 | 0.000 |
| predicted_HR | 0.134 | -0.000 |
| predicted_OBP | 0.391 | 0.005 |
| predicted_R | 1.052 | 0.007 |
| predicted_RBI | 1.015 | 0.007 |
| predicted_SLG | 0.386 | -0.022 |
| predicted_SO | 1.630 | 0.005 |
AB rounded to 7 (raw=6.86), rates preserved: AVG=0.288 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 | 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.267 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 7.000 | 0.144 |
| predicted_AVG | 0.286 | -0.002 |
| predicted_BB | 1.000 | -0.157 |
| predicted_H | 2.000 | 0.024 |
| predicted_HR | 0.000 | -0.134 |
| predicted_OBP | 0.375 | -0.016 |
| predicted_R | 1.000 | -0.052 |
| predicted_RBI | 1.000 | -0.015 |
| predicted_SLG | 0.286 | -0.100 |
| predicted_SO | 2.000 | 0.370 |
Attached 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 | -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 | 7.000 | 2.000 | 0.000 | 0.000 | 5.000 | 2.000 | 1.000 | 9.000 | 0.3500 | 0.4091 | 0.4500 | 0.3500 | 0.0000 | 0.2500 | 0.0500 | 0.4500 |
| last_10 | 0.20 | 9 | - | 37.000 | 15.000 | 3.000 | 0.000 | 1.000 | 8.000 | 6.000 | 3.000 | 11.000 | 0.4054 | 0.4634 | 0.5676 | 0.4054 | 0.0270 | 0.2162 | 0.0811 | 0.2973 |
| season | 0.60 | 39 | - | 562.000 | 147.000 | 13.000 | 0.000 | 11.000 | 57.000 | 96.000 | 123.000 | 114.000 | 0.2616 | 0.3934 | 0.3434 | 0.2616 | 0.0196 | 0.1014 | 0.2189 | 0.2029 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5000 |
| predicted_3B | 0.0020 |
| predicted_AB | 10.2510 |
| predicted_AVG | 0.3018 |
| predicted_BB | 1.6120 |
| predicted_H | 3.0930 |
| predicted_HBP | 0.2050 |
| predicted_HR | 0.1790 |
| predicted_OBP | 0.4044 |
| predicted_R | 1.5740 |
| predicted_RBI | 1.5450 |
| predicted_SLG | 0.4032 |
| predicted_SO | 2.7480 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0860 | 0.5000 | 0.2673 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.2100 | 10.2510 | 6.8556 | model_form_blend |
| predicted_AVG | 0.2600 | 0.3018 | 0.2783 | model_form_blend |
| predicted_BB | 0.8090 | 1.6120 | 1.1607 | model_form_blend |
| predicted_H | 1.0900 | 3.0930 | 1.9672 | model_form_blend |
| predicted_HBP | - | 0.2050 | 0.2050 | form_only |
| predicted_HR | 0.1000 | 0.1790 | 0.1346 | model_form_blend |
| predicted_OBP | 0.3710 | 0.4044 | 0.3856 | model_form_blend |
| predicted_R | 0.6320 | 1.5740 | 1.0445 | model_form_blend |
| predicted_RBI | 0.5900 | 1.5450 | 1.0082 | model_form_blend |
| predicted_SLG | 0.4120 | 0.4032 | 0.4081 | model_form_blend |
| predicted_SO | 0.7500 | 2.7480 | 1.6250 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 152 |
| Season rows before report date | 152 |
| Report year | 2026 |
| Profile rows used | 152 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.262 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.75 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 3 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 650402 |
| playerID | 650402 |
| playerName | Gleyber Torres |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.2 |
| sl_bb_percent | 15.3 |
| sl_woba | 0.353 |
| sl_xwoba | 0.336 |
| sl_xba | 0.253 |
| sl_xslg | 0.373 |
| sl_sweet_spot_percent | 37.4 |
| sl_barrel_batted_rate | 6.1 |
| sl_hard_hit_percent | 29.6 |
| sl_exit_velocity_avg | 84.8 |
| sl_launch_angle_avg | 7.2 |
| sl_whiff_percent | 21.5 |
| sl_swing_percent | 39.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.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 | 3.920 | 5.000 | 6.000 | Hitting_AB | 3.649 | 4.000 | 1.351 | 1.000 |
| predicted_AVG | 0.246 | 0.400 | 0.333 | Hitting_AVG | 0.308 | 0.000 | 0.092 | 0.400 |
| predicted_BB | 0.563 | 0.000 | 1.000 | Hitting_BB | 0.563 | 1.000 | -0.563 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.016 | 0.000 | -0.016 | 0.000 |
| predicted_H | 0.970 | 2.000 | 2.000 | Hitting_H | 1.122 | 0.000 | 0.878 | 2.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.082 | 0.000 | -0.082 | 0.000 |
| predicted_OBP | 0.345 | 0.400 | 0.429 | Hitting_OBP | 0.404 | 0.200 | -0.004 | 0.200 |
| predicted_R | 0.555 | 0.000 | 1.000 | Hitting_R | 0.555 | 0.000 | -0.555 | 0.000 |
| predicted_RBI | 0.510 | 0.000 | 1.000 | Hitting_RBI | 0.478 | 0.000 | -0.478 | 0.000 |
| predicted_SLG | 0.432 | 0.400 | 0.333 | Hitting_SLG | 0.449 | 0.000 | -0.049 | 0.400 |
| predicted_SO | 1.204 | 1.000 | 2.000 | Hitting_SO | 1.204 | 3.000 | -0.204 | -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_AB: 3.9200 -> 5.0000 (boost 1.0800, better) |
| Biggest Deboost | predicted_BB: 0.5630 -> 0.0000 (deboost -0.5630, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.9200 -> 6.3098 (boost 2.3898, 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.2566 -> 0.2632 (boost 0.0066, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_H: 1.6610 -> 2.0000 (boost 0.3390, better) | predicted_2B: 0.3543 -> 0.0000 (deboost -0.3543, worse) | AB rounded to 6 (raw=6.31), rates preserved: AVG=0.263 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9358 -> 1.0000 (boost 0.0642, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2632 -> 0.3330 (boost 0.0698, better) | predicted_SLG: 0.4406 -> 0.3330 (deboost -0.1076, 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 -> 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.4406 (boost 0.1076, better) | predicted_AVG: 0.3330 -> 0.2632 (deboost -0.0698, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682985",
"player_name": "Riley Greene",
"position": "LF",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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": 3.92,
"predicted_AVG": 0.246,
"predicted_BB": 0.563,
"predicted_H": 0.97,
"predicted_HR": 0.16,
"predicted_OBP": 0.345,
"predicted_R": 0.555,
"predicted_RBI": 0.51,
"predicted_SLG": 0.432,
"predicted_SO": 1.204
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3543,
"predicted_3B": 0.0004,
"predicted_AB": 6.3098,
"predicted_AVG": 0.2566,
"predicted_BB": 0.9544,
"predicted_H": 1.6539,
"predicted_HBP": 0.051,
"predicted_HR": 0.255,
"predicted_OBP": 0.3546,
"predicted_R": 0.9292,
"predicted_RBI": 0.8299,
"predicted_SLG": 0.4356,
"predicted_SO": 1.9661
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.269,
"after": 0.3543,
"delta": 0.0853,
"percent_delta": 0.3171,
"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.92,
"after": 6.3098,
"delta": 2.3898,
"percent_delta": 0.6096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2566,
"delta": 0.0106,
"percent_delta": 0.0431,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.563,
"after": 0.9544,
"delta": 0.3914,
"percent_delta": 0.6952,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.97,
"after": 1.6539,
"delta": 0.6839,
"percent_delta": 0.7051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.255,
"delta": 0.095,
"percent_delta": 0.5938,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3546,
"delta": 0.0096,
"percent_delta": 0.0278,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.555,
"after": 0.9292,
"delta": 0.3742,
"percent_delta": 0.6742,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.51,
"after": 0.8299,
"delta": 0.3199,
"percent_delta": 0.6273,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.432,
"after": 0.4356,
"delta": 0.0036,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.204,
"after": 1.9661,
"delta": 0.7621,
"percent_delta": 0.633,
"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.92,
"after": 6.3098,
"delta": 2.3898,
"percent_delta": 0.6096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3543,
"predicted_3B": 0.0004,
"predicted_AB": 6.3098,
"predicted_AVG": 0.2632,
"predicted_BB": 0.9513,
"predicted_H": 1.661,
"predicted_HBP": 0.051,
"predicted_HR": 0.2546,
"predicted_OBP": 0.3598,
"predicted_R": 0.9358,
"predicted_RBI": 0.8358,
"predicted_SLG": 0.4406,
"predicted_SO": 1.9726
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3543,
"after": 0.3543,
"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.3098,
"after": 6.3098,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2566,
"after": 0.2632,
"delta": 0.0066,
"percent_delta": 0.0257,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9544,
"after": 0.9513,
"delta": -0.0031,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6539,
"after": 1.661,
"delta": 0.0071,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.051,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.255,
"after": 0.2546,
"delta": -0.0004,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3546,
"after": 0.3598,
"delta": 0.0052,
"percent_delta": 0.0147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9292,
"after": 0.9358,
"delta": 0.0066,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8299,
"after": 0.8358,
"delta": 0.0059,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4356,
"after": 0.4406,
"delta": 0.005,
"percent_delta": 0.0115,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9661,
"after": 1.9726,
"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_AVG",
"before": 0.2566,
"after": 0.2632,
"delta": 0.0066,
"percent_delta": 0.0257,
"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.31), rates preserved: AVG=0.263 HR/AB=0.040",
"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.3543,
"after": 0.0,
"delta": -0.3543,
"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.3098,
"after": 6.0,
"delta": -0.3098,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9513,
"after": 1.0,
"delta": 0.0487,
"percent_delta": 0.0512,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.661,
"after": 2.0,
"delta": 0.339,
"percent_delta": 0.2041,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.051,
"after": 0.0,
"delta": -0.051,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2546,
"after": 0.0,
"delta": -0.2546,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8358,
"after": 1.0,
"delta": 0.1642,
"percent_delta": 0.1965,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.9726,
"after": 2.0,
"delta": 0.0274,
"percent_delta": 0.0139,
"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_H",
"before": 1.661,
"after": 2.0,
"delta": 0.339,
"percent_delta": 0.2041,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3543,
"after": 0.0,
"delta": -0.3543,
"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": 0.9358,
"after": 1.0,
"delta": 0.0642,
"percent_delta": 0.0686,
"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.9358,
"after": 1.0,
"delta": 0.0642,
"percent_delta": 0.0686,
"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": 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.2632,
"after": 0.333,
"delta": 0.0698,
"percent_delta": 0.2652,
"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.3598,
"after": 0.429,
"delta": 0.0692,
"percent_delta": 0.1923,
"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.333,
"delta": -0.1076,
"percent_delta": -0.2442,
"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.2632,
"after": 0.333,
"delta": 0.0698,
"percent_delta": 0.2652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4406,
"after": 0.333,
"delta": -0.1076,
"percent_delta": -0.2442,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 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.2632,
"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.3598,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4406,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2632,
"delta": -0.0698,
"percent_delta": -0.2095,
"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.3598,
"delta": -0.0692,
"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.333,
"after": 0.4406,
"delta": 0.1076,
"percent_delta": 0.323,
"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.4406,
"delta": 0.1076,
"percent_delta": 0.323,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2632,
"delta": -0.0698,
"percent_delta": -0.2095,
"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": 3.92,
"after": 5.0,
"delta": 1.08,
"percent_delta": 0.2755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2632,
"delta": 0.0172,
"percent_delta": 0.0699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.563,
"after": 0.0,
"delta": -0.563,
"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.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.345,
"after": 0.3598,
"delta": 0.0148,
"percent_delta": 0.0429,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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.51,
"after": 0.0,
"delta": -0.51,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.432,
"after": 0.4406,
"delta": 0.0086,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.204,
"after": 1.0,
"delta": -0.204,
"percent_delta": -0.1694,
"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.92,
"after": 5.0,
"delta": 1.08,
"percent_delta": 0.2755,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.563,
"after": 0.0,
"delta": -0.563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}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 | 3.920 | - |
| predicted_AVG | 0.246 | - |
| predicted_BB | 0.563 | - |
| predicted_H | 0.970 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.345 | - |
| predicted_R | 0.555 | - |
| predicted_RBI | 0.510 | - |
| predicted_SLG | 0.432 | - |
| predicted_SO | 1.204 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.354 | 0.085 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.310 | 2.390 |
| predicted_AVG | 0.257 | 0.011 |
| predicted_BB | 0.954 | 0.391 |
| predicted_H | 1.654 | 0.684 |
| predicted_HBP | 0.051 | - |
| predicted_HR | 0.255 | 0.095 |
| predicted_OBP | 0.355 | 0.010 |
| predicted_R | 0.929 | 0.374 |
| predicted_RBI | 0.830 | 0.320 |
| predicted_SLG | 0.436 | 0.004 |
| predicted_SO | 1.966 | 0.762 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.354 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.310 | 0.000 |
| predicted_AVG | 0.263 | 0.007 |
| predicted_BB | 0.951 | -0.003 |
| predicted_H | 1.661 | 0.007 |
| predicted_HBP | 0.051 | 0.000 |
| predicted_HR | 0.255 | -0.000 |
| predicted_OBP | 0.360 | 0.005 |
| predicted_R | 0.936 | 0.007 |
| predicted_RBI | 0.836 | 0.006 |
| predicted_SLG | 0.441 | 0.005 |
| predicted_SO | 1.973 | 0.006 |
AB rounded to 6 (raw=6.31), rates preserved: AVG=0.263 HR/AB=0.040
| 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.354 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.310 |
| predicted_AVG | 0.333 | 0.070 |
| predicted_BB | 1.000 | 0.049 |
| predicted_H | 2.000 | 0.339 |
| predicted_HR | 0.000 | -0.255 |
| predicted_OBP | 0.429 | 0.069 |
| predicted_R | 1.000 | 0.064 |
| predicted_RBI | 1.000 | 0.164 |
| predicted_SLG | 0.333 | -0.108 |
| predicted_SO | 2.000 | 0.027 |
Attached 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 | 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 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 3.000 | 5.000 | 0.1667 | 0.2727 | 0.3333 | 0.1667 | 0.0556 | 0.1111 | 0.1667 | 0.2778 |
| last_10 | 0.20 | 10 | - | 38.000 | 10.000 | 1.000 | 0.000 | 3.000 | 6.000 | 5.000 | 6.000 | 12.000 | 0.2632 | 0.3556 | 0.5263 | 0.2632 | 0.0790 | 0.1579 | 0.1579 | 0.3158 |
| season | 0.60 | 67 | - | 894.000 | 275.000 | 66.000 | 0.000 | 20.000 | 117.000 | 136.000 | 138.000 | 295.000 | 0.3076 | 0.4044 | 0.4485 | 0.3076 | 0.0224 | 0.1309 | 0.1544 | 0.3300 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4620 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.3290 |
| predicted_AVG | 0.2700 |
| predicted_BB | 1.4490 |
| predicted_H | 2.5180 |
| predicted_HBP | 0.0510 |
| predicted_HR | 0.3750 |
| predicted_OBP | 0.3668 |
| predicted_R | 1.4020 |
| predicted_RBI | 1.2340 |
| predicted_SLG | 0.4401 |
| predicted_SO | 2.9290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2690 | 0.4620 | 0.3543 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9200 | 9.3290 | 6.3098 | model_form_blend |
| predicted_AVG | 0.2460 | 0.2700 | 0.2566 | model_form_blend |
| predicted_BB | 0.5630 | 1.4490 | 0.9544 | model_form_blend |
| predicted_H | 0.9700 | 2.5180 | 1.6539 | model_form_blend |
| predicted_HBP | - | 0.0510 | 0.0510 | form_only |
| predicted_HR | 0.1600 | 0.3750 | 0.2550 | model_form_blend |
| predicted_OBP | 0.3450 | 0.3668 | 0.3546 | model_form_blend |
| predicted_R | 0.5550 | 1.4020 | 0.9292 | model_form_blend |
| predicted_RBI | 0.5100 | 1.2340 | 0.8299 | model_form_blend |
| predicted_SLG | 0.4320 | 0.4401 | 0.4356 | model_form_blend |
| predicted_SO | 1.2040 | 2.9290 | 1.9661 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 245 |
| Season rows before report date | 245 |
| Report year | 2026 |
| Profile rows used | 245 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.308 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 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 | LF |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 682985 |
| playerID | 682985 |
| playerName | Riley Greene |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.7 |
| sl_bb_percent | 12.6 |
| sl_woba | 0.376 |
| sl_xwoba | 0.365 |
| sl_xba | 0.263 |
| sl_xslg | 0.466 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 13.1 |
| sl_hard_hit_percent | 51.2 |
| sl_exit_velocity_avg | 91.3 |
| sl_launch_angle_avg | 16.0 |
| sl_whiff_percent | 30.0 |
| 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.186 | 0.000 | 0.000 | Hitting_2B | 0.186 | 0.000 | -0.186 | 0.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 3.233 | 4.000 | 5.000 | Hitting_AB | 3.233 | 3.000 | 0.767 | 1.000 |
| predicted_AVG | 0.235 | 0.250 | 0.200 | Hitting_AVG | 0.277 | 0.000 | -0.027 | 0.250 |
| predicted_BB | 0.209 | 0.000 | 0.000 | Hitting_BB | 0.209 | 0.000 | -0.209 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.720 | 1.000 | 1.000 | Hitting_H | 0.895 | 0.000 | 0.105 | 1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.266 | 0.250 | 0.200 | Hitting_OBP | 0.324 | 0.000 | -0.074 | 0.250 |
| predicted_R | 0.390 | 1.000 | 0.000 | Hitting_R | 0.390 | 0.000 | 0.610 | 1.000 |
| predicted_RBI | 0.230 | 1.000 | 0.000 | Hitting_RBI | 0.134 | 0.000 | 0.866 | 1.000 |
| predicted_SLG | 0.333 | 0.250 | 0.200 | Hitting_SLG | 0.345 | 0.000 | -0.095 | 0.250 |
| predicted_SO | 0.767 | 0.000 | 1.000 | Hitting_SO | 0.767 | 0.000 | -0.767 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 7 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_RBI: 0.2300 -> 1.0000 (boost 0.7700, better) |
| Biggest Deboost | predicted_SO: 0.7670 -> 0.0000 (deboost -0.7670, 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.2330 -> 4.6638 (boost 1.4308, better) | predicted_SLG: 0.3330 -> 0.3160 (deboost -0.0170, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_AVG: 0.2236 -> 0.2151 (deboost -0.0085, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 1 | 5 | 2 | 4 | predicted_AB: 4.6638 -> 5.0000 (boost 0.3362, better) | predicted_BB: 0.2873 -> 0.0000 (deboost -0.2873, worse) | AB rounded to 5 (raw=4.66), rates preserved: AVG=0.215 HR/AB=0.007 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4912 -> 0.0000 (deboost -0.4912, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3118 -> 0.2000 (deboost -0.1118, 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_R: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3118 (boost 0.1118, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "690993",
"player_name": "Colt Keith",
"position": "3B",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.186,
"predicted_3B": 0.017,
"predicted_AB": 3.233,
"predicted_AVG": 0.235,
"predicted_BB": 0.209,
"predicted_H": 0.72,
"predicted_HR": 0.05,
"predicted_OBP": 0.266,
"predicted_R": 0.39,
"predicted_RBI": 0.23,
"predicted_SLG": 0.333,
"predicted_SO": 0.767
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2047,
"predicted_3B": 0.0737,
"predicted_AB": 4.6638,
"predicted_AVG": 0.2236,
"predicted_BB": 0.2883,
"predicted_H": 0.999,
"predicted_HBP": 0.023,
"predicted_HR": 0.033,
"predicted_OBP": 0.2612,
"predicted_R": 0.4877,
"predicted_RBI": 0.2147,
"predicted_SLG": 0.316,
"predicted_SO": 1.1402
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.2047,
"delta": 0.0187,
"percent_delta": 0.1005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0737,
"delta": 0.0567,
"percent_delta": 3.3353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.233,
"after": 4.6638,
"delta": 1.4308,
"percent_delta": 0.4426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2236,
"delta": -0.0114,
"percent_delta": -0.0485,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.209,
"after": 0.2883,
"delta": 0.0793,
"percent_delta": 0.3794,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 0.999,
"delta": 0.279,
"percent_delta": 0.3875,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.033,
"delta": -0.017,
"percent_delta": -0.34,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.266,
"after": 0.2612,
"delta": -0.0048,
"percent_delta": -0.018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.39,
"after": 0.4877,
"delta": 0.0977,
"percent_delta": 0.2505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.23,
"after": 0.2147,
"delta": -0.0153,
"percent_delta": -0.0665,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.316,
"delta": -0.017,
"percent_delta": -0.0511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.767,
"after": 1.1402,
"delta": 0.3732,
"percent_delta": 0.4866,
"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.233,
"after": 4.6638,
"delta": 1.4308,
"percent_delta": 0.4426,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.316,
"delta": -0.017,
"percent_delta": -0.0511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 61
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2047,
"predicted_3B": 0.0737,
"predicted_AB": 4.6638,
"predicted_AVG": 0.2151,
"predicted_BB": 0.2873,
"predicted_H": 1.0033,
"predicted_HBP": 0.023,
"predicted_HR": 0.0329,
"predicted_OBP": 0.2607,
"predicted_R": 0.4912,
"predicted_RBI": 0.2162,
"predicted_SLG": 0.3118,
"predicted_SO": 1.144
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2047,
"after": 0.2047,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0737,
"after": 0.0737,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6638,
"after": 4.6638,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2236,
"after": 0.2151,
"delta": -0.0085,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2883,
"after": 0.2873,
"delta": -0.001,
"percent_delta": -0.0035,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.999,
"after": 1.0033,
"delta": 0.0043,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.023,
"after": 0.023,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.033,
"after": 0.0329,
"delta": -0.0001,
"percent_delta": -0.003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2612,
"after": 0.2607,
"delta": -0.0005,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4877,
"after": 0.4912,
"delta": 0.0035,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2147,
"after": 0.2162,
"delta": 0.0015,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.316,
"after": 0.3118,
"delta": -0.0042,
"percent_delta": -0.0133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.1402,
"after": 1.144,
"delta": 0.0038,
"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_AVG",
"before": 0.2236,
"after": 0.2151,
"delta": -0.0085,
"percent_delta": -0.038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.66), rates preserved: AVG=0.215 HR/AB=0.007",
"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.2047,
"after": 0.0,
"delta": -0.2047,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0737,
"after": 0.0,
"delta": -0.0737,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.6638,
"after": 5.0,
"delta": 0.3362,
"percent_delta": 0.0721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2873,
"after": 0.0,
"delta": -0.2873,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0033,
"after": 1.0,
"delta": -0.0033,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.023,
"after": 0.0,
"delta": -0.023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0329,
"after": 0.0,
"delta": -0.0329,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.144,
"after": 1.0,
"delta": -0.144,
"percent_delta": -0.1259,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 1,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.6638,
"after": 5.0,
"delta": 0.3362,
"percent_delta": 0.0721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.2873,
"after": 0.0,
"delta": -0.2873,
"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.4912,
"after": 0.0,
"delta": -0.4912,
"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.4912,
"after": 0.0,
"delta": -0.4912,
"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.2151,
"after": 0.2,
"delta": -0.0151,
"percent_delta": -0.0702,
"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.2607,
"after": 0.2,
"delta": -0.0607,
"percent_delta": -0.2328,
"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.3118,
"after": 0.2,
"delta": -0.1118,
"percent_delta": -0.3586,
"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.3118,
"after": 0.2,
"delta": -0.1118,
"percent_delta": -0.3586,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"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.2151,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2607,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3118,
"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.2,
"after": 0.2151,
"delta": 0.0151,
"percent_delta": 0.0756,
"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.2607,
"delta": 0.0607,
"percent_delta": 0.3034,
"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.3118,
"delta": 0.1118,
"percent_delta": 0.5591,
"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.3118,
"delta": 0.1118,
"percent_delta": 0.5591,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.186,
"after": 0.0,
"delta": -0.186,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.017,
"after": 0.0,
"delta": -0.017,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.233,
"after": 4.0,
"delta": 0.767,
"percent_delta": 0.2372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2151,
"delta": -0.0199,
"percent_delta": -0.0847,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.209,
"after": 0.0,
"delta": -0.209,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.72,
"after": 1.0,
"delta": 0.28,
"percent_delta": 0.3889,
"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.266,
"after": 0.2607,
"delta": -0.0053,
"percent_delta": -0.0199,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.39,
"after": 1.0,
"delta": 0.61,
"percent_delta": 1.5641,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.23,
"after": 1.0,
"delta": 0.77,
"percent_delta": 3.3478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.3118,
"delta": -0.0212,
"percent_delta": -0.0637,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.767,
"after": 0.0,
"delta": -0.767,
"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_RBI",
"before": 0.23,
"after": 1.0,
"delta": 0.77,
"percent_delta": 3.3478,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.767,
"after": 0.0,
"delta": -0.767,
"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.186 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 3.233 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.209 | - |
| predicted_H | 0.720 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.266 | - |
| predicted_R | 0.390 | - |
| predicted_RBI | 0.230 | - |
| predicted_SLG | 0.333 | - |
| predicted_SO | 0.767 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.205 | 0.019 |
| predicted_3B | 0.074 | 0.057 |
| predicted_AB | 4.664 | 1.431 |
| predicted_AVG | 0.224 | -0.011 |
| predicted_BB | 0.288 | 0.079 |
| predicted_H | 0.999 | 0.279 |
| predicted_HBP | 0.023 | - |
| predicted_HR | 0.033 | -0.017 |
| predicted_OBP | 0.261 | -0.005 |
| predicted_R | 0.488 | 0.098 |
| predicted_RBI | 0.215 | -0.015 |
| predicted_SLG | 0.316 | -0.017 |
| predicted_SO | 1.140 | 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.205 | 0.000 |
| predicted_3B | 0.074 | 0.000 |
| predicted_AB | 4.664 | 0.000 |
| predicted_AVG | 0.215 | -0.008 |
| predicted_BB | 0.287 | -0.001 |
| predicted_H | 1.003 | 0.004 |
| predicted_HBP | 0.023 | 0.000 |
| predicted_HR | 0.033 | -0.000 |
| predicted_OBP | 0.261 | -0.001 |
| predicted_R | 0.491 | 0.004 |
| predicted_RBI | 0.216 | 0.002 |
| predicted_SLG | 0.312 | -0.004 |
| predicted_SO | 1.144 | 0.004 |
AB rounded to 5 (raw=4.66), rates preserved: AVG=0.215 HR/AB=0.007
| 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.205 |
| predicted_3B | 0.000 | -0.074 |
| predicted_AB | 5.000 | 0.336 |
| predicted_AVG | 0.200 | -0.015 |
| predicted_BB | 0.000 | -0.287 |
| predicted_H | 1.000 | -0.003 |
| predicted_HR | 0.000 | -0.033 |
| predicted_OBP | 0.200 | -0.061 |
| predicted_R | 0.000 | -0.491 |
| predicted_RBI | 0.000 | -0.216 |
| predicted_SLG | 0.200 | -0.112 |
| 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 | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 1.000 | 1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 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 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 5.000 | 0.1333 | 0.1875 | 0.2667 | 0.1333 | 0.0000 | 0.0000 | 0.0667 | 0.3333 |
| last_10 | 0.20 | 10 | - | 29.000 | 2.000 | 0.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 6.000 | 0.0690 | 0.1000 | 0.1379 | 0.0690 | 0.0000 | 0.0000 | 0.0345 | 0.2069 |
| season | 0.60 | 61 | - | 556.000 | 154.000 | 32.000 | 3.000 | 0.000 | 23.000 | 67.000 | 36.000 | 132.000 | 0.2770 | 0.3244 | 0.3453 | 0.2770 | 0.0000 | 0.0414 | 0.0648 | 0.2374 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2290 |
| predicted_3B | 0.1470 |
| predicted_AB | 6.5150 |
| predicted_AVG | 0.2088 |
| predicted_BB | 0.3910 |
| predicted_H | 1.3600 |
| predicted_HBP | 0.0230 |
| predicted_HR | 0.0110 |
| predicted_OBP | 0.2551 |
| predicted_R | 0.6140 |
| predicted_RBI | 0.1950 |
| predicted_SLG | 0.2939 |
| predicted_SO | 1.6230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1860 | 0.2290 | 0.2047 | model_form_blend |
| predicted_3B | 0.0170 | 0.1470 | 0.0737 | model_form_blend |
| predicted_AB | 3.2330 | 6.5150 | 4.6638 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2088 | 0.2236 | model_form_blend |
| predicted_BB | 0.2090 | 0.3910 | 0.2883 | model_form_blend |
| predicted_H | 0.7200 | 1.3600 | 0.9990 | model_form_blend |
| predicted_HBP | - | 0.0230 | 0.0230 | form_only |
| predicted_HR | 0.0500 | 0.0110 | 0.0330 | model_form_blend |
| predicted_OBP | 0.2660 | 0.2551 | 0.2612 | model_form_blend |
| predicted_R | 0.3900 | 0.6140 | 0.4877 | model_form_blend |
| predicted_RBI | 0.2300 | 0.1950 | 0.2147 | model_form_blend |
| predicted_SLG | 0.3330 | 0.2939 | 0.3160 | model_form_blend |
| predicted_SO | 0.7670 | 1.6230 | 1.1402 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 172 |
| Season rows before report date | 172 |
| Report year | 2026 |
| Profile rows used | 172 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.277 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| 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 | 20260610_MIN@DET |
| game_type | full |
| mlbID | 690993 |
| playerID | 690993 |
| playerName | Colt Keith |
| pos | 3B |
| started | True |
| startingPosition | DH |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 5.6 |
| sl_woba | 0.281 |
| sl_xwoba | 0.301 |
| sl_xba | 0.258 |
| sl_xslg | 0.384 |
| sl_sweet_spot_percent | 35.7 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 41.3 |
| sl_exit_velocity_avg | 88.5 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 22.7 |
| sl_swing_percent | 43.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.223 | 0.000 | 0.000 | Hitting_2B | 0.223 | 0.000 | -0.223 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.900 | 4.000 | 6.000 | Hitting_AB | 3.730 | 5.000 | 0.270 | -1.000 |
| predicted_AVG | 0.251 | 0.500 | 0.333 | Hitting_AVG | 0.247 | 0.200 | 0.253 | 0.300 |
| predicted_BB | 0.400 | 0.000 | 1.000 | Hitting_BB | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.980 | 2.000 | 2.000 | Hitting_H | 0.921 | 1.000 | 1.079 | 1.000 |
| predicted_HR | 0.250 | 0.000 | 0.000 | Hitting_HR | 0.251 | 0.000 | -0.251 | 0.000 |
| predicted_OBP | 0.329 | 0.500 | 0.429 | Hitting_OBP | 0.334 | 0.200 | 0.166 | 0.300 |
| predicted_R | 0.465 | 0.000 | 1.000 | Hitting_R | 0.465 | 0.000 | -0.465 | 0.000 |
| predicted_RBI | 0.860 | 0.000 | 1.000 | Hitting_RBI | 0.758 | 1.000 | -0.758 | -1.000 |
| predicted_SLG | 0.527 | 0.500 | 0.333 | Hitting_SLG | 0.509 | 0.200 | -0.009 | 0.300 |
| predicted_SO | 0.860 | 0.000 | 1.000 | Hitting_SO | 0.860 | 3.000 | -0.860 | -3.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.9800 -> 2.0000 (boost 1.0200, 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.9000 -> 6.3478 (boost 2.4478, 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.2598 -> 0.2653 (boost 0.0055, better) | predicted_OBP: 0.3352 -> 0.3299 (deboost -0.0053, 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.6117 -> 1.0000 (boost 0.3883, better) | predicted_RBI: 1.5779 -> 1.0000 (deboost -0.5779, worse) | AB rounded to 6 (raw=6.35), rates preserved: AVG=0.265 HR/AB=0.080 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9436 -> 1.0000 (boost 0.0564, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3299 -> 0.4290 (boost 0.0991, better) | predicted_SLG: 0.5602 -> 0.3330 (deboost -0.2272, 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 -> 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.5602 (boost 0.2272, better) | predicted_OBP: 0.4290 -> 0.3299 (deboost -0.0991, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "693307",
"player_name": "Dillon Dingler",
"position": "DH",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.223,
"predicted_3B": 0.0,
"predicted_AB": 3.9,
"predicted_AVG": 0.251,
"predicted_BB": 0.4,
"predicted_H": 0.98,
"predicted_HR": 0.25,
"predicted_OBP": 0.329,
"predicted_R": 0.465,
"predicted_RBI": 0.86,
"predicted_SLG": 0.527,
"predicted_SO": 0.86
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3556,
"predicted_3B": 0.0004,
"predicted_AB": 6.3478,
"predicted_AVG": 0.2598,
"predicted_BB": 0.6137,
"predicted_H": 1.6767,
"predicted_HBP": 0.178,
"predicted_HR": 0.506,
"predicted_OBP": 0.3352,
"predicted_R": 0.9369,
"predicted_RBI": 1.5668,
"predicted_SLG": 0.5548,
"predicted_SO": 1.4082
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.223,
"after": 0.3556,
"delta": 0.1326,
"percent_delta": 0.5946,
"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.9,
"after": 6.3478,
"delta": 2.4478,
"percent_delta": 0.6276,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2598,
"delta": 0.0088,
"percent_delta": 0.0351,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4,
"after": 0.6137,
"delta": 0.2137,
"percent_delta": 0.5343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.98,
"after": 1.6767,
"delta": 0.6967,
"percent_delta": 0.7109,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.25,
"after": 0.506,
"delta": 0.256,
"percent_delta": 1.024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.329,
"after": 0.3352,
"delta": 0.0062,
"percent_delta": 0.0188,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.465,
"after": 0.9369,
"delta": 0.4719,
"percent_delta": 1.0148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.86,
"after": 1.5668,
"delta": 0.7068,
"percent_delta": 0.8219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.527,
"after": 0.5548,
"delta": 0.0278,
"percent_delta": 0.0528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.86,
"after": 1.4082,
"delta": 0.5482,
"percent_delta": 0.6374,
"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.9,
"after": 6.3478,
"delta": 2.4478,
"percent_delta": 0.6276,
"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.3556,
"predicted_3B": 0.0004,
"predicted_AB": 6.3478,
"predicted_AVG": 0.2653,
"predicted_BB": 0.6117,
"predicted_H": 1.6839,
"predicted_HBP": 0.178,
"predicted_HR": 0.5052,
"predicted_OBP": 0.3299,
"predicted_R": 0.9436,
"predicted_RBI": 1.5779,
"predicted_SLG": 0.5602,
"predicted_SO": 1.4128
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3556,
"after": 0.3556,
"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.3478,
"after": 6.3478,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2598,
"after": 0.2653,
"delta": 0.0055,
"percent_delta": 0.0212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6137,
"after": 0.6117,
"delta": -0.002,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6767,
"after": 1.6839,
"delta": 0.0072,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.178,
"after": 0.178,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.506,
"after": 0.5052,
"delta": -0.0008,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3352,
"after": 0.3299,
"delta": -0.0053,
"percent_delta": -0.0158,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9369,
"after": 0.9436,
"delta": 0.0067,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.5668,
"after": 1.5779,
"delta": 0.0111,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5548,
"after": 0.5602,
"delta": 0.0054,
"percent_delta": 0.0097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4082,
"after": 1.4128,
"delta": 0.0046,
"percent_delta": 0.0033,
"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.2598,
"after": 0.2653,
"delta": 0.0055,
"percent_delta": 0.0212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3352,
"after": 0.3299,
"delta": -0.0053,
"percent_delta": -0.0158,
"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.265 HR/AB=0.080",
"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.3556,
"after": 0.0,
"delta": -0.3556,
"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.3478,
"after": 6.0,
"delta": -0.3478,
"percent_delta": -0.0548,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6117,
"after": 1.0,
"delta": 0.3883,
"percent_delta": 0.6348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6839,
"after": 2.0,
"delta": 0.3161,
"percent_delta": 0.1877,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.178,
"after": 0.0,
"delta": -0.178,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.5052,
"after": 0.0,
"delta": -0.5052,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.5779,
"after": 1.0,
"delta": -0.5779,
"percent_delta": -0.3662,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4128,
"after": 1.0,
"delta": -0.4128,
"percent_delta": -0.2922,
"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.6117,
"after": 1.0,
"delta": 0.3883,
"percent_delta": 0.6348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.5779,
"after": 1.0,
"delta": -0.5779,
"percent_delta": -0.3662,
"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": 0.9436,
"after": 1.0,
"delta": 0.0564,
"percent_delta": 0.0598,
"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.9436,
"after": 1.0,
"delta": 0.0564,
"percent_delta": 0.0598,
"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": 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.2653,
"after": 0.333,
"delta": 0.0677,
"percent_delta": 0.2552,
"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.3299,
"after": 0.429,
"delta": 0.0991,
"percent_delta": 0.3004,
"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.5602,
"after": 0.333,
"delta": -0.2272,
"percent_delta": -0.4056,
"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.3299,
"after": 0.429,
"delta": 0.0991,
"percent_delta": 0.3004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5602,
"after": 0.333,
"delta": -0.2272,
"percent_delta": -0.4056,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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.2653,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3299,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5602,
"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.2653,
"delta": -0.0677,
"percent_delta": -0.2034,
"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.3299,
"delta": -0.0991,
"percent_delta": -0.2311,
"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.5602,
"delta": 0.2272,
"percent_delta": 0.6822,
"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.5602,
"delta": 0.2272,
"percent_delta": 0.6822,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3299,
"delta": -0.0991,
"percent_delta": -0.2311,
"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.223,
"after": 0.0,
"delta": -0.223,
"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.9,
"after": 4.0,
"delta": 0.1,
"percent_delta": 0.0256,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2653,
"delta": 0.0143,
"percent_delta": 0.057,
"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.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"direction": "boost",
"projection_effect": "better",
"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.329,
"after": 0.3299,
"delta": 0.0009,
"percent_delta": 0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.465,
"after": 0.0,
"delta": -0.465,
"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.527,
"after": 0.5602,
"delta": 0.0332,
"percent_delta": 0.063,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.86,
"after": 0.0,
"delta": -0.86,
"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.98,
"after": 2.0,
"delta": 1.02,
"percent_delta": 1.0408,
"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": "deboosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.223 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.900 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.400 | - |
| predicted_H | 0.980 | - |
| predicted_HR | 0.250 | - |
| predicted_OBP | 0.329 | - |
| predicted_R | 0.465 | - |
| predicted_RBI | 0.860 | - |
| predicted_SLG | 0.527 | - |
| predicted_SO | 0.860 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.356 | 0.133 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.348 | 2.448 |
| predicted_AVG | 0.260 | 0.009 |
| predicted_BB | 0.614 | 0.214 |
| predicted_H | 1.677 | 0.697 |
| predicted_HBP | 0.178 | - |
| predicted_HR | 0.506 | 0.256 |
| predicted_OBP | 0.335 | 0.006 |
| predicted_R | 0.937 | 0.472 |
| predicted_RBI | 1.567 | 0.707 |
| predicted_SLG | 0.555 | 0.028 |
| predicted_SO | 1.408 | 0.548 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.356 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.348 | 0.000 |
| predicted_AVG | 0.265 | 0.006 |
| predicted_BB | 0.612 | -0.002 |
| predicted_H | 1.684 | 0.007 |
| predicted_HBP | 0.178 | 0.000 |
| predicted_HR | 0.505 | -0.001 |
| predicted_OBP | 0.330 | -0.005 |
| predicted_R | 0.944 | 0.007 |
| predicted_RBI | 1.578 | 0.011 |
| predicted_SLG | 0.560 | 0.005 |
| predicted_SO | 1.413 | 0.005 |
AB rounded to 6 (raw=6.35), rates preserved: AVG=0.265 HR/AB=0.080
| 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.356 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.348 |
| predicted_AVG | 0.333 | 0.068 |
| predicted_BB | 1.000 | 0.388 |
| predicted_H | 2.000 | 0.316 |
| predicted_HR | 0.000 | -0.505 |
| predicted_OBP | 0.429 | 0.099 |
| predicted_R | 1.000 | 0.056 |
| predicted_RBI | 1.000 | -0.578 |
| predicted_SLG | 0.333 | -0.227 |
| 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 | -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 | 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 | 6.000 | 1.000 | 0.000 | 2.000 | 6.000 | 4.000 | 2.000 | 5.000 | 0.3000 | 0.3636 | 0.6500 | 0.3000 | 0.1000 | 0.3000 | 0.1000 | 0.2500 |
| last_10 | 0.20 | 10 | - | 41.000 | 13.000 | 2.000 | 0.000 | 6.000 | 17.000 | 10.000 | 2.000 | 7.000 | 0.3171 | 0.3556 | 0.8049 | 0.3171 | 0.1463 | 0.4146 | 0.0488 | 0.1707 |
| season | 0.60 | 60 | - | 802.000 | 198.000 | 48.000 | 0.000 | 54.000 | 163.000 | 100.000 | 86.000 | 185.000 | 0.2469 | 0.3337 | 0.5087 | 0.2469 | 0.0673 | 0.2032 | 0.1072 | 0.2307 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5240 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.4550 |
| predicted_AVG | 0.2709 |
| predicted_BB | 0.8850 |
| predicted_H | 2.5610 |
| predicted_HBP | 0.1780 |
| predicted_HR | 0.8310 |
| predicted_OBP | 0.3431 |
| predicted_R | 1.5360 |
| predicted_RBI | 2.4640 |
| predicted_SLG | 0.5902 |
| predicted_SO | 2.1040 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2230 | 0.5240 | 0.3556 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.9000 | 9.4550 | 6.3478 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2709 | 0.2598 | model_form_blend |
| predicted_BB | 0.4000 | 0.8850 | 0.6137 | model_form_blend |
| predicted_H | 0.9800 | 2.5610 | 1.6767 | model_form_blend |
| predicted_HBP | - | 0.1780 | 0.1780 | form_only |
| predicted_HR | 0.2500 | 0.8310 | 0.5060 | model_form_blend |
| predicted_OBP | 0.3290 | 0.3431 | 0.3352 | model_form_blend |
| predicted_R | 0.4650 | 1.5360 | 0.9369 | model_form_blend |
| predicted_RBI | 0.8600 | 2.4640 | 1.5668 | model_form_blend |
| predicted_SLG | 0.5270 | 0.5902 | 0.5548 | model_form_blend |
| predicted_SO | 0.8600 | 2.1040 | 1.4082 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 215 |
| Season rows before report date | 215 |
| Report year | 2026 |
| Profile rows used | 215 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.247 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| 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 | 3 |
| 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 | C |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 693307 |
| playerID | 693307 |
| playerName | Dillon Dingler |
| pos | C |
| started | True |
| startingPosition | C |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 8.7 |
| sl_woba | 0.367 |
| sl_xwoba | 0.403 |
| sl_xba | 0.294 |
| sl_xslg | 0.57 |
| sl_sweet_spot_percent | 41.6 |
| sl_barrel_batted_rate | 13.4 |
| sl_hard_hit_percent | 52.0 |
| sl_exit_velocity_avg | 90.9 |
| sl_launch_angle_avg | 17.0 |
| sl_whiff_percent | 20.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_2B | 0.235 | 0.000 | 0.000 | Hitting_2B | 0.235 | 0.000 | -0.235 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.473 | 3.000 | 6.000 | Hitting_AB | 3.473 | 3.000 | -0.473 | 0.000 |
| predicted_AVG | 0.231 | 0.000 | 0.167 | Hitting_AVG | 0.209 | 0.000 | -0.209 | 0.000 |
| predicted_BB | 0.487 | 1.000 | 1.000 | Hitting_BB | 0.487 | 1.000 | 0.513 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 0.770 | 0.000 | 1.000 | Hitting_H | 0.726 | 0.000 | -0.726 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.146 | 0.000 | -0.146 | 0.000 |
| predicted_OBP | 0.306 | 0.250 | 0.286 | Hitting_OBP | 0.314 | 0.250 | -0.064 | 0.000 |
| predicted_R | 0.358 | 0.000 | 1.000 | Hitting_R | 0.358 | 0.000 | -0.358 | 0.000 |
| predicted_RBI | 0.400 | 0.000 | 1.000 | Hitting_RBI | 0.372 | 0.000 | -0.372 | 0.000 |
| predicted_SLG | 0.392 | 0.000 | 0.167 | Hitting_SLG | 0.403 | 0.000 | -0.403 | 0.000 |
| predicted_SO | 1.323 | 2.000 | 2.000 | Hitting_SO | 1.323 | 2.000 | 0.677 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_SO: 1.3230 -> 2.0000 (boost 0.6770, 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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 3.4730 -> 5.6302 (boost 2.1572, better) | predicted_AVG: 0.2310 -> 0.2232 (deboost -0.0078, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.3923 -> 0.3995 (boost 0.0072, better) | predicted_AVG: 0.2232 -> 0.2171 (deboost -0.0061, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 4 | 4 | predicted_AB: 5.6302 -> 6.0000 (boost 0.3698, better) | predicted_2B: 0.3227 -> 0.0000 (deboost -0.3227, worse) | AB rounded to 6 (raw=5.63), rates preserved: AVG=0.217 HR/AB=0.042 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6690 -> 1.0000 (boost 0.3310, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3995 -> 0.1670 (deboost -0.2325, 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 -> 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.3995 (boost 0.2325, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "679529",
"player_name": "Spencer Torkelson",
"position": "1B",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.235,
"predicted_3B": 0.0,
"predicted_AB": 3.473,
"predicted_AVG": 0.231,
"predicted_BB": 0.487,
"predicted_H": 0.77,
"predicted_HR": 0.14,
"predicted_OBP": 0.306,
"predicted_R": 0.358,
"predicted_RBI": 0.4,
"predicted_SLG": 0.392,
"predicted_SO": 1.323
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3227,
"predicted_3B": 0.0004,
"predicted_AB": 5.6302,
"predicted_AVG": 0.2232,
"predicted_BB": 0.7267,
"predicted_H": 1.2173,
"predicted_HBP": 0.123,
"predicted_HR": 0.2348,
"predicted_OBP": 0.306,
"predicted_R": 0.6643,
"predicted_RBI": 0.634,
"predicted_SLG": 0.3923,
"predicted_SO": 2.1207
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.235,
"after": 0.3227,
"delta": 0.0877,
"percent_delta": 0.3732,
"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.473,
"after": 5.6302,
"delta": 2.1572,
"percent_delta": 0.6211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2232,
"delta": -0.0078,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.487,
"after": 0.7267,
"delta": 0.2397,
"percent_delta": 0.4922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.2173,
"delta": 0.4473,
"percent_delta": 0.5809,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2348,
"delta": 0.0948,
"percent_delta": 0.6771,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.306,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.358,
"after": 0.6643,
"delta": 0.3063,
"percent_delta": 0.8556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.634,
"delta": 0.234,
"percent_delta": 0.585,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3923,
"delta": 0.0003,
"percent_delta": 0.0008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.323,
"after": 2.1207,
"delta": 0.7977,
"percent_delta": 0.6029,
"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": 3.473,
"after": 5.6302,
"delta": 2.1572,
"percent_delta": 0.6211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2232,
"delta": -0.0078,
"percent_delta": -0.0338,
"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.3227,
"predicted_3B": 0.0004,
"predicted_AB": 5.6302,
"predicted_AVG": 0.2171,
"predicted_BB": 0.7243,
"predicted_H": 1.2225,
"predicted_HBP": 0.123,
"predicted_HR": 0.2344,
"predicted_OBP": 0.3064,
"predicted_R": 0.669,
"predicted_RBI": 0.6385,
"predicted_SLG": 0.3995,
"predicted_SO": 2.1277
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3227,
"after": 0.3227,
"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.6302,
"after": 5.6302,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2232,
"after": 0.2171,
"delta": -0.0061,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7267,
"after": 0.7243,
"delta": -0.0024,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2173,
"after": 1.2225,
"delta": 0.0052,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.123,
"after": 0.123,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2348,
"after": 0.2344,
"delta": -0.0004,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.3064,
"delta": 0.0004,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6643,
"after": 0.669,
"delta": 0.0047,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.634,
"after": 0.6385,
"delta": 0.0045,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3923,
"after": 0.3995,
"delta": 0.0072,
"percent_delta": 0.0184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1207,
"after": 2.1277,
"delta": 0.007,
"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.3923,
"after": 0.3995,
"delta": 0.0072,
"percent_delta": 0.0184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2232,
"after": 0.2171,
"delta": -0.0061,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.63), rates preserved: AVG=0.217 HR/AB=0.042",
"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.3227,
"after": 0.0,
"delta": -0.3227,
"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.6302,
"after": 6.0,
"delta": 0.3698,
"percent_delta": 0.0657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7243,
"after": 1.0,
"delta": 0.2757,
"percent_delta": 0.3806,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2225,
"after": 1.0,
"delta": -0.2225,
"percent_delta": -0.182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.123,
"after": 0.0,
"delta": -0.123,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2344,
"after": 0.0,
"delta": -0.2344,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6385,
"after": 1.0,
"delta": 0.3615,
"percent_delta": 0.5662,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1277,
"after": 2.0,
"delta": -0.1277,
"percent_delta": -0.06,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 4,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 5.6302,
"after": 6.0,
"delta": 0.3698,
"percent_delta": 0.0657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3227,
"after": 0.0,
"delta": -0.3227,
"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.669,
"after": 1.0,
"delta": 0.331,
"percent_delta": 0.4948,
"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.669,
"after": 1.0,
"delta": 0.331,
"percent_delta": 0.4948,
"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.2171,
"after": 0.167,
"delta": -0.0501,
"percent_delta": -0.2308,
"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.3064,
"after": 0.286,
"delta": -0.0204,
"percent_delta": -0.0666,
"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.3995,
"after": 0.167,
"delta": -0.2325,
"percent_delta": -0.582,
"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.3995,
"after": 0.167,
"delta": -0.2325,
"percent_delta": -0.582,
"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": 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": 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": 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.2171,
"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.3064,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3995,
"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.2171,
"delta": 0.0501,
"percent_delta": 0.3002,
"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.3064,
"delta": 0.0204,
"percent_delta": 0.0712,
"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.3995,
"delta": 0.2325,
"percent_delta": 1.3923,
"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.3995,
"delta": 0.2325,
"percent_delta": 1.3923,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.235,
"after": 0.0,
"delta": -0.235,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.473,
"after": 3.0,
"delta": -0.473,
"percent_delta": -0.1362,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.231,
"after": 0.2171,
"delta": -0.0139,
"percent_delta": -0.0602,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.487,
"after": 1.0,
"delta": 0.513,
"percent_delta": 1.0534,
"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.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.3064,
"delta": 0.0004,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.358,
"after": 0.0,
"delta": -0.358,
"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.392,
"after": 0.3995,
"delta": 0.0075,
"percent_delta": 0.0191,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.323,
"after": 2.0,
"delta": 0.677,
"percent_delta": 0.5117,
"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.323,
"after": 2.0,
"delta": 0.677,
"percent_delta": 0.5117,
"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.235 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.473 | - |
| predicted_AVG | 0.231 | - |
| predicted_BB | 0.487 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.306 | - |
| predicted_R | 0.358 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.392 | - |
| predicted_SO | 1.323 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.088 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.630 | 2.157 |
| predicted_AVG | 0.223 | -0.008 |
| predicted_BB | 0.727 | 0.240 |
| predicted_H | 1.217 | 0.447 |
| predicted_HBP | 0.123 | - |
| predicted_HR | 0.235 | 0.095 |
| predicted_OBP | 0.306 | 0.000 |
| predicted_R | 0.664 | 0.306 |
| predicted_RBI | 0.634 | 0.234 |
| predicted_SLG | 0.392 | 0.000 |
| predicted_SO | 2.121 | 0.798 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 5.630 | 0.000 |
| predicted_AVG | 0.217 | -0.006 |
| predicted_BB | 0.724 | -0.002 |
| predicted_H | 1.222 | 0.005 |
| predicted_HBP | 0.123 | 0.000 |
| predicted_HR | 0.234 | -0.000 |
| predicted_OBP | 0.306 | 0.000 |
| predicted_R | 0.669 | 0.005 |
| predicted_RBI | 0.638 | 0.004 |
| predicted_SLG | 0.400 | 0.007 |
| predicted_SO | 2.128 | 0.007 |
AB rounded to 6 (raw=5.63), rates preserved: AVG=0.217 HR/AB=0.042
| 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.323 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.370 |
| predicted_AVG | 0.167 | -0.050 |
| predicted_BB | 1.000 | 0.276 |
| predicted_H | 1.000 | -0.222 |
| predicted_HR | 0.000 | -0.234 |
| predicted_OBP | 0.286 | -0.020 |
| predicted_R | 1.000 | 0.331 |
| predicted_RBI | 1.000 | 0.362 |
| predicted_SLG | 0.167 | -0.233 |
| predicted_SO | 2.000 | -0.128 |
Attached 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 | 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 | 1.000 | 2.000 | 3.000 | 2.000 | 7.000 | 0.1765 | 0.2632 | 0.3529 | 0.1765 | 0.0588 | 0.1177 | 0.1177 | 0.4118 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 2.000 | 0.000 | 1.000 | 4.000 | 5.000 | 3.000 | 12.000 | 0.2571 | 0.3250 | 0.4000 | 0.2571 | 0.0286 | 0.1143 | 0.0857 | 0.3429 |
| season | 0.60 | 66 | - | 785.000 | 164.000 | 53.000 | 0.000 | 33.000 | 84.000 | 81.000 | 110.000 | 299.000 | 0.2089 | 0.3136 | 0.4025 | 0.2089 | 0.0420 | 0.1070 | 0.1401 | 0.3809 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4340 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.3680 |
| predicted_AVG | 0.2133 |
| predicted_BB | 1.0310 |
| predicted_H | 1.7850 |
| predicted_HBP | 0.1230 |
| predicted_HR | 0.3550 |
| predicted_OBP | 0.3060 |
| predicted_R | 1.0530 |
| predicted_RBI | 0.9310 |
| predicted_SLG | 0.3926 |
| predicted_SO | 3.1330 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2350 | 0.4340 | 0.3227 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.4730 | 8.3680 | 5.6302 | model_form_blend |
| predicted_AVG | 0.2310 | 0.2133 | 0.2232 | model_form_blend |
| predicted_BB | 0.4870 | 1.0310 | 0.7267 | model_form_blend |
| predicted_H | 0.7700 | 1.7850 | 1.2173 | model_form_blend |
| predicted_HBP | - | 0.1230 | 0.1230 | form_only |
| predicted_HR | 0.1400 | 0.3550 | 0.2348 | model_form_blend |
| predicted_OBP | 0.3060 | 0.3060 | 0.3060 | model_form_blend |
| predicted_R | 0.3580 | 1.0530 | 0.6643 | model_form_blend |
| predicted_RBI | 0.4000 | 0.9310 | 0.6340 | model_form_blend |
| predicted_SLG | 0.3920 | 0.3926 | 0.3923 | model_form_blend |
| predicted_SO | 1.3230 | 3.1330 | 2.1207 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.209 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 679529 |
| playerID | 679529 |
| playerName | Spencer Torkelson |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 32.0 |
| sl_bb_percent | 11.6 |
| sl_woba | 0.316 |
| sl_xwoba | 0.317 |
| sl_xba | 0.211 |
| sl_xslg | 0.4 |
| sl_sweet_spot_percent | 45.8 |
| sl_barrel_batted_rate | 13.5 |
| sl_hard_hit_percent | 44.4 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 20.3 |
| sl_whiff_percent | 29.9 |
| sl_swing_percent | 42.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.073 | 0.000 | 0.000 | Hitting_2B | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_3B | 0.008 | 0.000 | 0.000 | Hitting_3B | 0.008 | 0.000 | -0.008 | 0.000 |
| predicted_AB | 3.161 | 3.000 | 5.000 | Hitting_AB | 3.136 | 4.000 | -0.136 | -1.000 |
| predicted_AVG | 0.242 | 0.000 | 0.200 | Hitting_AVG | 0.158 | 0.250 | -0.158 | -0.250 |
| predicted_BB | 0.371 | 1.000 | 1.000 | Hitting_BB | 0.368 | 0.000 | 0.632 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.080 | 0.000 | -0.080 | 0.000 |
| predicted_H | 0.660 | 0.000 | 1.000 | Hitting_H | 0.496 | 1.000 | -0.496 | -1.000 |
| predicted_HR | 0.050 | 0.000 | 0.000 | Hitting_HR | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_OBP | 0.325 | 0.250 | 0.333 | Hitting_OBP | 0.242 | 0.250 | 0.008 | 0.000 |
| predicted_R | 0.105 | 0.000 | 0.000 | Hitting_R | 0.104 | 1.000 | -0.104 | -1.000 |
| predicted_RBI | 0.250 | 0.000 | 0.000 | Hitting_RBI | 0.288 | 0.000 | -0.288 | 0.000 |
| predicted_SLG | 0.336 | 0.000 | 0.200 | Hitting_SLG | 0.224 | 0.250 | -0.224 | -0.250 |
| predicted_SO | 0.669 | 0.000 | 1.000 | Hitting_SO | 0.664 | 1.000 | -0.664 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.3710 -> 1.0000 (boost 0.6290, better) |
| Biggest Deboost | predicted_SO: 0.6690 -> 0.0000 (deboost -0.6690, 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 | 7 | 2 | 6 | 3 | predicted_AB: 3.1610 -> 4.6357 (boost 1.4747, better) | predicted_SLG: 0.3360 -> 0.3168 (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.3168 -> 0.2894 (deboost -0.0274, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 6 | 2 | 4 | 2 | 4 | predicted_AB: 4.6357 -> 5.0000 (boost 0.3643, better) | predicted_RBI: 0.3143 -> 0.0000 (deboost -0.3143, worse) | AB rounded to 5 (raw=4.64), rates preserved: AVG=0.208 HR/AB=0.012 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4070 -> 0.0000 (deboost -0.4070, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3129 -> 0.3330 (boost 0.0201, better) | predicted_SLG: 0.2894 -> 0.2000 (deboost -0.0894, 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 -> 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.2894 (boost 0.0894, better) | predicted_OBP: 0.3330 -> 0.3129 (deboost -0.0201, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "656716",
"player_name": "Zach McKinstry",
"position": "CF",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.073,
"predicted_3B": 0.008,
"predicted_AB": 3.161,
"predicted_AVG": 0.242,
"predicted_BB": 0.371,
"predicted_H": 0.66,
"predicted_HR": 0.05,
"predicted_OBP": 0.325,
"predicted_R": 0.105,
"predicted_RBI": 0.25,
"predicted_SLG": 0.336,
"predicted_SO": 0.669
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0868,
"predicted_3B": 0.0628,
"predicted_AB": 4.6357,
"predicted_AVG": 0.2267,
"predicted_BB": 0.7085,
"predicted_H": 0.9612,
"predicted_HBP": 0.004,
"predicted_HR": 0.0547,
"predicted_OBP": 0.3217,
"predicted_R": 0.4041,
"predicted_RBI": 0.3121,
"predicted_SLG": 0.3168,
"predicted_SO": 1.0337
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.073,
"after": 0.0868,
"delta": 0.0138,
"percent_delta": 0.189,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.008,
"after": 0.0628,
"delta": 0.0548,
"percent_delta": 6.85,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.161,
"after": 4.6357,
"delta": 1.4747,
"percent_delta": 0.4665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2267,
"delta": -0.0153,
"percent_delta": -0.0632,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.371,
"after": 0.7085,
"delta": 0.3375,
"percent_delta": 0.9097,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.9612,
"delta": 0.3012,
"percent_delta": 0.4564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0547,
"delta": 0.0047,
"percent_delta": 0.094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3217,
"delta": -0.0033,
"percent_delta": -0.0102,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.105,
"after": 0.4041,
"delta": 0.2991,
"percent_delta": 2.8486,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.25,
"after": 0.3121,
"delta": 0.0621,
"percent_delta": 0.2484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3168,
"delta": -0.0192,
"percent_delta": -0.0571,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.669,
"after": 1.0337,
"delta": 0.3647,
"percent_delta": 0.5451,
"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.161,
"after": 4.6357,
"delta": 1.4747,
"percent_delta": 0.4665,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.3168,
"delta": -0.0192,
"percent_delta": -0.0571,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 42
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0868,
"predicted_3B": 0.0628,
"predicted_AB": 4.6357,
"predicted_AVG": 0.2082,
"predicted_BB": 0.7062,
"predicted_H": 0.9653,
"predicted_HBP": 0.004,
"predicted_HR": 0.0546,
"predicted_OBP": 0.3129,
"predicted_R": 0.407,
"predicted_RBI": 0.3143,
"predicted_SLG": 0.2894,
"predicted_SO": 1.0371
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0868,
"after": 0.0868,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0628,
"after": 0.0628,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.6357,
"after": 4.6357,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2267,
"after": 0.2082,
"delta": -0.0185,
"percent_delta": -0.0816,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7085,
"after": 0.7062,
"delta": -0.0023,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9612,
"after": 0.9653,
"delta": 0.0041,
"percent_delta": 0.0043,
"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.0547,
"after": 0.0546,
"delta": -0.0001,
"percent_delta": -0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3217,
"after": 0.3129,
"delta": -0.0088,
"percent_delta": -0.0274,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4041,
"after": 0.407,
"delta": 0.0029,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.3121,
"after": 0.3143,
"delta": 0.0022,
"percent_delta": 0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3168,
"after": 0.2894,
"delta": -0.0274,
"percent_delta": -0.0865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0337,
"after": 1.0371,
"delta": 0.0034,
"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_SLG",
"before": 0.3168,
"after": 0.2894,
"delta": -0.0274,
"percent_delta": -0.0865,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.64), rates preserved: AVG=0.208 HR/AB=0.012",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0868,
"after": 0.0,
"delta": -0.0868,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0628,
"after": 0.0,
"delta": -0.0628,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.6357,
"after": 5.0,
"delta": 0.3643,
"percent_delta": 0.0786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7062,
"after": 1.0,
"delta": 0.2938,
"percent_delta": 0.416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9653,
"after": 1.0,
"delta": 0.0347,
"percent_delta": 0.0359,
"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.0546,
"after": 0.0,
"delta": -0.0546,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3143,
"after": 0.0,
"delta": -0.3143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0371,
"after": 1.0,
"delta": -0.0371,
"percent_delta": -0.0358,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.6357,
"after": 5.0,
"delta": 0.3643,
"percent_delta": 0.0786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3143,
"after": 0.0,
"delta": -0.3143,
"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": 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": 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.407,
"after": 0.0,
"delta": -0.407,
"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.407,
"after": 0.0,
"delta": -0.407,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.2082,
"after": 0.2,
"delta": -0.0082,
"percent_delta": -0.0394,
"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.3129,
"after": 0.333,
"delta": 0.0201,
"percent_delta": 0.0642,
"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.2894,
"after": 0.2,
"delta": -0.0894,
"percent_delta": -0.3089,
"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.3129,
"after": 0.333,
"delta": 0.0201,
"percent_delta": 0.0642,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2894,
"after": 0.2,
"delta": -0.0894,
"percent_delta": -0.3089,
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"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": 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.2082,
"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.3129,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2894,
"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.2,
"after": 0.2082,
"delta": 0.0082,
"percent_delta": 0.0412,
"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.3129,
"delta": -0.0201,
"percent_delta": -0.0603,
"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.2894,
"delta": 0.0894,
"percent_delta": 0.447,
"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.2894,
"delta": 0.0894,
"percent_delta": 0.447,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3129,
"delta": -0.0201,
"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.073,
"after": 0.0,
"delta": -0.073,
"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": 3.161,
"after": 3.0,
"delta": -0.161,
"percent_delta": -0.0509,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2082,
"delta": -0.0338,
"percent_delta": -0.1397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.371,
"after": 1.0,
"delta": 0.629,
"percent_delta": 1.6954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.325,
"after": 0.3129,
"delta": -0.0121,
"percent_delta": -0.0372,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.105,
"after": 0.0,
"delta": -0.105,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.336,
"after": 0.2894,
"delta": -0.0466,
"percent_delta": -0.1387,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.669,
"after": 0.0,
"delta": -0.669,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.371,
"after": 1.0,
"delta": 0.629,
"percent_delta": 1.6954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.669,
"after": 0.0,
"delta": -0.669,
"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.073 | - |
| predicted_3B | 0.008 | - |
| predicted_AB | 3.161 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.371 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.050 | - |
| predicted_OBP | 0.325 | - |
| predicted_R | 0.105 | - |
| predicted_RBI | 0.250 | - |
| predicted_SLG | 0.336 | - |
| predicted_SO | 0.669 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.087 | 0.014 |
| predicted_3B | 0.063 | 0.055 |
| predicted_AB | 4.636 | 1.475 |
| predicted_AVG | 0.227 | -0.015 |
| predicted_BB | 0.709 | 0.338 |
| predicted_H | 0.961 | 0.301 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.055 | 0.005 |
| predicted_OBP | 0.322 | -0.003 |
| predicted_R | 0.404 | 0.299 |
| predicted_RBI | 0.312 | 0.062 |
| predicted_SLG | 0.317 | -0.019 |
| predicted_SO | 1.034 | 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.087 | 0.000 |
| predicted_3B | 0.063 | 0.000 |
| predicted_AB | 4.636 | 0.000 |
| predicted_AVG | 0.208 | -0.019 |
| predicted_BB | 0.706 | -0.002 |
| predicted_H | 0.965 | 0.004 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.055 | -0.000 |
| predicted_OBP | 0.313 | -0.009 |
| predicted_R | 0.407 | 0.003 |
| predicted_RBI | 0.314 | 0.002 |
| predicted_SLG | 0.289 | -0.027 |
| predicted_SO | 1.037 | 0.003 |
AB rounded to 5 (raw=4.64), rates preserved: AVG=0.208 HR/AB=0.012
| 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 | 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 | 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.087 |
| predicted_3B | 0.000 | -0.063 |
| predicted_AB | 5.000 | 0.364 |
| predicted_AVG | 0.200 | -0.008 |
| predicted_BB | 1.000 | 0.294 |
| predicted_H | 1.000 | 0.035 |
| predicted_HR | 0.000 | -0.055 |
| predicted_OBP | 0.333 | 0.020 |
| predicted_R | 0.000 | -0.407 |
| predicted_RBI | 0.000 | -0.314 |
| predicted_SLG | 0.200 | -0.089 |
| predicted_SO | 1.000 | -0.037 |
Attached 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 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 16.000 | 5.000 | 0.000 | 1.000 | 0.000 | 0.000 | 5.000 | 4.000 | 4.000 | 0.3125 | 0.4500 | 0.4375 | 0.3125 | 0.0000 | 0.0000 | 0.2500 | 0.2500 |
| last_10 | 0.20 | 10 | - | 26.000 | 6.000 | 0.000 | 1.000 | 0.000 | 0.000 | 5.000 | 8.000 | 7.000 | 0.2308 | 0.4118 | 0.3077 | 0.2308 | 0.0000 | 0.0000 | 0.3077 | 0.2692 |
| season | 0.60 | 42 | - | 392.000 | 62.000 | 9.000 | 1.000 | 5.000 | 36.000 | 13.000 | 46.000 | 83.000 | 0.1582 | 0.2422 | 0.2245 | 0.1582 | 0.0128 | 0.0918 | 0.1173 | 0.2117 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1050 |
| predicted_3B | 0.1350 |
| predicted_AB | 6.5780 |
| predicted_AVG | 0.2065 |
| predicted_BB | 1.1530 |
| predicted_H | 1.3580 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.0610 |
| predicted_OBP | 0.3174 |
| predicted_R | 0.7980 |
| predicted_RBI | 0.3940 |
| predicted_SLG | 0.2916 |
| predicted_SO | 1.5140 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0730 | 0.1050 | 0.0868 | model_form_blend |
| predicted_3B | 0.0080 | 0.1350 | 0.0628 | model_form_blend |
| predicted_AB | 3.1610 | 6.5780 | 4.6357 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2065 | 0.2267 | model_form_blend |
| predicted_BB | 0.3710 | 1.1530 | 0.7085 | model_form_blend |
| predicted_H | 0.6600 | 1.3580 | 0.9612 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0500 | 0.0610 | 0.0547 | model_form_blend |
| predicted_OBP | 0.3250 | 0.3174 | 0.3217 | model_form_blend |
| predicted_R | 0.1050 | 0.7980 | 0.4041 | model_form_blend |
| predicted_RBI | 0.2500 | 0.3940 | 0.3121 | model_form_blend |
| predicted_SLG | 0.3360 | 0.2916 | 0.3168 | model_form_blend |
| predicted_SO | 0.6690 | 1.5140 | 1.0337 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 125 |
| Season rows before report date | 125 |
| Report year | 2026 |
| Profile rows used | 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 | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.158 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF-SS |
| gameID | 20260610_MIN@DET |
| game_type | full |
| mlbID | 656716 |
| playerID | 656716 |
| playerName | Zach McKinstry |
| pos | 2B |
| started | True |
| startingPosition | CF |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.2 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.24 |
| sl_xwoba | 0.258 |
| sl_xba | 0.196 |
| sl_xslg | 0.273 |
| sl_sweet_spot_percent | 27.9 |
| sl_barrel_batted_rate | 2.9 |
| sl_hard_hit_percent | 23.1 |
| sl_exit_velocity_avg | 85.0 |
| sl_launch_angle_avg | 14.2 |
| sl_whiff_percent | 15.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.123 | 0.000 | 0.000 | Hitting_2B | 0.119 | 0.000 | -0.119 | 0.000 |
| predicted_3B | 0.053 | 0.000 | 0.000 | Hitting_3B | 0.051 | 0.000 | -0.051 | 0.000 |
| predicted_AB | 2.930 | 4.000 | 5.000 | Hitting_AB | 2.831 | 3.000 | 1.169 | 1.000 |
| predicted_AVG | 0.243 | 0.000 | 0.200 | Hitting_AVG | 0.144 | 0.667 | -0.144 | -0.667 |
| predicted_BB | 0.298 | 0.000 | 1.000 | Hitting_BB | 0.288 | 0.000 | -0.288 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.560 | 0.000 | 1.000 | Hitting_H | 0.407 | 2.000 | -0.407 | -2.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.017 | 1.000 | -0.017 | -1.000 |
| predicted_OBP | 0.290 | 0.000 | 0.333 | Hitting_OBP | 0.227 | 0.667 | -0.227 | -0.667 |
| predicted_R | 0.228 | 0.000 | 0.000 | Hitting_R | 0.220 | 1.000 | -0.220 | -1.000 |
| predicted_RBI | 0.290 | 0.000 | 0.000 | Hitting_RBI | 0.254 | 1.000 | -0.254 | -1.000 |
| predicted_SLG | 0.370 | 0.000 | 0.200 | Hitting_SLG | 0.240 | 1.667 | -0.240 | -1.667 |
| predicted_SO | 1.070 | 1.000 | 2.000 | Hitting_SO | 1.034 | 1.000 | -0.034 | 0.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_AB: 2.9300 -> 4.0000 (boost 1.0700, better) |
| Biggest Deboost | predicted_H: 0.5600 -> 0.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 | 9 | 6 | 3 | 5 | 4 | predicted_AB: 2.9300 -> 4.5060 (boost 1.5760, better) | predicted_AVG: 0.2430 -> 0.2097 (deboost -0.0333, 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.2097 -> 0.1739 (deboost -0.0358, 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_AB: 4.5060 -> 5.0000 (boost 0.4940, better) | predicted_RBI: 0.4278 -> 0.0000 (deboost -0.4278, worse) | AB rounded to 5 (raw=4.51), rates preserved: AVG=0.174 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3695 -> 0.0000 (deboost -0.3695, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2659 -> 0.3330 (boost 0.0671, better) | predicted_SLG: 0.3225 -> 0.2000 (deboost -0.1225, 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: 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.3225 (boost 0.1225, better) | predicted_OBP: 0.3330 -> 0.2659 (deboost -0.0671, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668670",
"player_name": "Jake Rogers",
"position": "C",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is 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.053,
"predicted_AB": 2.93,
"predicted_AVG": 0.243,
"predicted_BB": 0.298,
"predicted_H": 0.56,
"predicted_HR": 0.09,
"predicted_OBP": 0.29,
"predicted_R": 0.228,
"predicted_RBI": 0.29,
"predicted_SLG": 0.37,
"predicted_SO": 1.07
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1629,
"predicted_3B": 0.0637,
"predicted_AB": 4.506,
"predicted_AVG": 0.2097,
"predicted_BB": 0.5663,
"predicted_H": 0.7802,
"predicted_HBP": 0.083,
"predicted_HR": 0.1266,
"predicted_OBP": 0.2802,
"predicted_R": 0.3669,
"predicted_RBI": 0.4248,
"predicted_SLG": 0.34,
"predicted_SO": 1.6965
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.123,
"after": 0.1629,
"delta": 0.0399,
"percent_delta": 0.3244,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.053,
"after": 0.0637,
"delta": 0.0107,
"percent_delta": 0.2019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.93,
"after": 4.506,
"delta": 1.576,
"percent_delta": 0.5379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2097,
"delta": -0.0333,
"percent_delta": -0.137,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.298,
"after": 0.5663,
"delta": 0.2683,
"percent_delta": 0.9003,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.56,
"after": 0.7802,
"delta": 0.2202,
"percent_delta": 0.3932,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1266,
"delta": 0.0366,
"percent_delta": 0.4067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2802,
"delta": -0.0098,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.228,
"after": 0.3669,
"delta": 0.1389,
"percent_delta": 0.6092,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.4248,
"delta": 0.1348,
"percent_delta": 0.4648,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.34,
"delta": -0.03,
"percent_delta": -0.0811,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.07,
"after": 1.6965,
"delta": 0.6265,
"percent_delta": 0.5855,
"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": 2.93,
"after": 4.506,
"delta": 1.576,
"percent_delta": 0.5379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2097,
"delta": -0.0333,
"percent_delta": -0.137,
"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": 4,
"last_10": 6,
"season": 19
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1629,
"predicted_3B": 0.0637,
"predicted_AB": 4.506,
"predicted_AVG": 0.1739,
"predicted_BB": 0.5644,
"predicted_H": 0.7836,
"predicted_HBP": 0.083,
"predicted_HR": 0.1264,
"predicted_OBP": 0.2659,
"predicted_R": 0.3695,
"predicted_RBI": 0.4278,
"predicted_SLG": 0.3225,
"predicted_SO": 1.7021
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1629,
"after": 0.1629,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0637,
"after": 0.0637,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.506,
"after": 4.506,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2097,
"after": 0.1739,
"delta": -0.0358,
"percent_delta": -0.1707,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5663,
"after": 0.5644,
"delta": -0.0019,
"percent_delta": -0.0034,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7802,
"after": 0.7836,
"delta": 0.0034,
"percent_delta": 0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.083,
"after": 0.083,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1266,
"after": 0.1264,
"delta": -0.0002,
"percent_delta": -0.0016,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2802,
"after": 0.2659,
"delta": -0.0143,
"percent_delta": -0.051,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3669,
"after": 0.3695,
"delta": 0.0026,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4248,
"after": 0.4278,
"delta": 0.003,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3225,
"delta": -0.0175,
"percent_delta": -0.0515,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6965,
"after": 1.7021,
"delta": 0.0056,
"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.2097,
"after": 0.1739,
"delta": -0.0358,
"percent_delta": -0.1707,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.51), rates preserved: AVG=0.174 HR/AB=0.028",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1629,
"after": 0.0,
"delta": -0.1629,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0637,
"after": 0.0,
"delta": -0.0637,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.506,
"after": 5.0,
"delta": 0.494,
"percent_delta": 0.1096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5644,
"after": 1.0,
"delta": 0.4356,
"percent_delta": 0.7718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7836,
"after": 1.0,
"delta": 0.2164,
"percent_delta": 0.2762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.083,
"after": 0.0,
"delta": -0.083,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1264,
"after": 0.0,
"delta": -0.1264,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4278,
"after": 0.0,
"delta": -0.4278,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7021,
"after": 2.0,
"delta": 0.2979,
"percent_delta": 0.175,
"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_AB",
"before": 4.506,
"after": 5.0,
"delta": 0.494,
"percent_delta": 0.1096,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4278,
"after": 0.0,
"delta": -0.4278,
"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": 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": 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.3695,
"after": 0.0,
"delta": -0.3695,
"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.3695,
"after": 0.0,
"delta": -0.3695,
"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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.1739,
"after": 0.2,
"delta": 0.0261,
"percent_delta": 0.1501,
"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.2659,
"after": 0.333,
"delta": 0.0671,
"percent_delta": 0.2524,
"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.3225,
"after": 0.2,
"delta": -0.1225,
"percent_delta": -0.3798,
"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.2659,
"after": 0.333,
"delta": 0.0671,
"percent_delta": 0.2524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3225,
"after": 0.2,
"delta": -0.1225,
"percent_delta": -0.3798,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"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": 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.1739,
"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.2659,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3225,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.1739,
"delta": -0.0261,
"percent_delta": -0.1305,
"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.2659,
"delta": -0.0671,
"percent_delta": -0.2016,
"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.3225,
"delta": 0.1225,
"percent_delta": 0.6123,
"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.3225,
"delta": 0.1225,
"percent_delta": 0.6123,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2659,
"delta": -0.0671,
"percent_delta": -0.2016,
"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.053,
"after": 0.0,
"delta": -0.053,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 2.93,
"after": 4.0,
"delta": 1.07,
"percent_delta": 0.3652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.1739,
"delta": -0.0691,
"percent_delta": -0.2844,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.298,
"after": 0.0,
"delta": -0.298,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.56,
"after": 0.0,
"delta": -0.56,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.0,
"delta": -0.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.29,
"after": 0.2659,
"delta": -0.0241,
"percent_delta": -0.0831,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.228,
"after": 0.0,
"delta": -0.228,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3225,
"delta": -0.0475,
"percent_delta": -0.1284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.07,
"after": 1.0,
"delta": -0.07,
"percent_delta": -0.0654,
"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_AB",
"before": 2.93,
"after": 4.0,
"delta": 1.07,
"percent_delta": 0.3652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.56,
"after": 0.0,
"delta": -0.56,
"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.123 | - |
| predicted_3B | 0.053 | - |
| predicted_AB | 2.930 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.298 | - |
| predicted_H | 0.560 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.290 | - |
| predicted_R | 0.228 | - |
| predicted_RBI | 0.290 | - |
| predicted_SLG | 0.370 | - |
| predicted_SO | 1.070 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.163 | 0.040 |
| predicted_3B | 0.064 | 0.011 |
| predicted_AB | 4.506 | 1.576 |
| predicted_AVG | 0.210 | -0.033 |
| predicted_BB | 0.566 | 0.268 |
| predicted_H | 0.780 | 0.220 |
| predicted_HBP | 0.083 | - |
| predicted_HR | 0.127 | 0.037 |
| predicted_OBP | 0.280 | -0.010 |
| predicted_R | 0.367 | 0.139 |
| predicted_RBI | 0.425 | 0.135 |
| predicted_SLG | 0.340 | -0.030 |
| predicted_SO | 1.696 | 0.626 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.163 | 0.000 |
| predicted_3B | 0.064 | 0.000 |
| predicted_AB | 4.506 | 0.000 |
| predicted_AVG | 0.174 | -0.036 |
| predicted_BB | 0.564 | -0.002 |
| predicted_H | 0.784 | 0.003 |
| predicted_HBP | 0.083 | 0.000 |
| predicted_HR | 0.126 | -0.000 |
| predicted_OBP | 0.266 | -0.014 |
| predicted_R | 0.369 | 0.003 |
| predicted_RBI | 0.428 | 0.003 |
| predicted_SLG | 0.323 | -0.018 |
| predicted_SO | 1.702 | 0.006 |
AB rounded to 5 (raw=4.51), rates preserved: AVG=0.174 HR/AB=0.028
| 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 | 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 | 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 | 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.163 |
| predicted_3B | 0.000 | -0.064 |
| predicted_AB | 5.000 | 0.494 |
| predicted_AVG | 0.200 | 0.026 |
| predicted_BB | 1.000 | 0.436 |
| predicted_H | 1.000 | 0.216 |
| predicted_HR | 0.000 | -0.126 |
| predicted_OBP | 0.333 | 0.067 |
| predicted_R | 0.000 | -0.369 |
| predicted_RBI | 0.000 | -0.428 |
| predicted_SLG | 0.200 | -0.122 |
| predicted_SO | 2.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 | -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 | 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 | 4 | - | 11.000 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 3.000 | 6.000 | 0.1818 | 0.3571 | 0.4545 | 0.1818 | 0.0909 | 0.0909 | 0.2727 | 0.5454 |
| last_10 | 0.20 | 6 | - | 26.000 | 3.000 | 0.000 | 0.000 | 1.000 | 1.000 | 1.000 | 7.000 | 12.000 | 0.1154 | 0.3030 | 0.2308 | 0.1154 | 0.0385 | 0.0385 | 0.2692 | 0.4615 |
| season | 0.60 | 19 | - | 167.000 | 24.000 | 7.000 | 3.000 | 1.000 | 15.000 | 13.000 | 17.000 | 61.000 | 0.1437 | 0.2268 | 0.2395 | 0.1437 | 0.0060 | 0.0898 | 0.1018 | 0.3653 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2200 |
| predicted_3B | 0.0790 |
| predicted_AB | 6.7660 |
| predicted_AVG | 0.1619 |
| predicted_BB | 0.9510 |
| predicted_H | 1.0960 |
| predicted_HBP | 0.0830 |
| predicted_HR | 0.1790 |
| predicted_OBP | 0.2662 |
| predicted_R | 0.5660 |
| predicted_RBI | 0.6180 |
| predicted_SLG | 0.2969 |
| predicted_SO | 2.5950 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1230 | 0.2200 | 0.1629 | model_form_blend |
| predicted_3B | 0.0530 | 0.0790 | 0.0637 | model_form_blend |
| predicted_AB | 2.9300 | 6.7660 | 4.5060 | model_form_blend |
| predicted_AVG | 0.2430 | 0.1619 | 0.2097 | model_form_blend |
| predicted_BB | 0.2980 | 0.9510 | 0.5663 | model_form_blend |
| predicted_H | 0.5600 | 1.0960 | 0.7802 | model_form_blend |
| predicted_HBP | - | 0.0830 | 0.0830 | form_only |
| predicted_HR | 0.0900 | 0.1790 | 0.1266 | model_form_blend |
| predicted_OBP | 0.2900 | 0.2662 | 0.2802 | model_form_blend |
| predicted_R | 0.2280 | 0.5660 | 0.3669 | model_form_blend |
| predicted_RBI | 0.2900 | 0.6180 | 0.4248 | model_form_blend |
| predicted_SLG | 0.3700 | 0.2969 | 0.3400 | model_form_blend |
| predicted_SO | 1.0700 | 2.5950 | 1.6965 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 59 |
| Season rows before report date | 59 |
| Report year | 2026 |
| Profile rows used | 57 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| 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 | 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 | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 1 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 5 |
| 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 | 20260603_DET@TB |
| game_type | full |
| mlbID | 668670 |
| playerID | 668670 |
| playerName | Jake Rogers |
| pos | C |
| started | True |
| startingPosition | C |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-03 |
| sl_k_percent | 31.7 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.241 |
| sl_xwoba | 0.258 |
| sl_xba | 0.181 |
| sl_xslg | 0.327 |
| sl_sweet_spot_percent | 32.4 |
| sl_barrel_batted_rate | 10.8 |
| sl_hard_hit_percent | 35.1 |
| sl_exit_velocity_avg | 86.7 |
| sl_launch_angle_avg | 32.0 |
| sl_whiff_percent | 29.7 |
| 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_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 1.333 | 1.000 | 0.667 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.417 | 4.000 | -1.417 | -3.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 4.333 | 6.000 | 0.667 | -1.000 |
| predicted_IP | 5.200 | 5.200 | 5.200 | Pitching_InningsPitched | 5.325 | 5.000 | -0.125 | 0.200 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 3.667 | 1.000 | 2.333 | 5.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | pitcher_quality_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 5.2000 (deboost -0.4667, worse) | Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form. |
| 3 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "672456",
"player_name": "Keider Montero",
"position": "Starter",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement 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": 1.0,
"predicted_IP": 5.6667,
"predicted_SO": 6.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "pitcher_quality_guardrail",
"description": "Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 1.0,
"predicted_H": 5.0,
"predicted_HR": 1.0,
"predicted_IP": 5.2,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"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": 1.0,
"predicted_IP": 5.2,
"predicted_R": 1.0,
"predicted_SO": 6.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.2,
"after": 5.2,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 6.0,
"after": 6.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 5.2,
"delta": -0.4667,
"percent_delta": -0.0824,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 5.667 | - |
| predicted_SO | 6.000 | - |
Elite/strong starter guardrail capped a noisy simulation draw using season workload, ERA/WHIP, and weighted recent form.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | 0.000 |
| predicted_ER | 1.000 | 0.000 |
| predicted_H | 5.000 | 0.000 |
| predicted_HR | 1.000 | 0.000 |
| predicted_IP | 5.200 | -0.467 |
| 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 | 26.100 | 15.000 | 22.000 | 8.000 | 15.000 | 5.000 | 5.1266 | 1.1392 | 0.5696 | 0.8354 | 0.3038 | 0.5696 | 0.1899 |
| last_10 | 0.35 | 10 | 55.200 | 27.000 | 47.000 | 14.000 | 34.000 | 8.000 | 4.3653 | 1.0958 | 0.4850 | 0.8443 | 0.2515 | 0.6108 | 0.1437 |
| season | 0.20 | 12 | 66.000 | 29.000 | 52.000 | 16.000 | 44.000 | 8.000 | 3.9545 | 1.0303 | 0.4394 | 0.7879 | 0.2424 | 0.6667 | 0.1212 |
| Metric | Value |
|---|---|
| predicted_BB | 1.6550 |
| predicted_ER | 2.7890 |
| predicted_ERA | 4.5518 |
| predicted_H | 4.7830 |
| predicted_HR | 0.8510 |
| predicted_IP | 5.2000 |
| predicted_SO | 3.8660 |
| predicted_WHIP | 1.1677 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 1.6550 | 1.8186 | model_form_blend |
| predicted_ER | 1.0000 | 2.7890 | 1.9406 | model_form_blend |
| predicted_ERA | - | 4.5518 | 4.5518 | form_only |
| predicted_H | 5.0000 | 4.7830 | 4.8859 | model_form_blend |
| predicted_HR | 1.0000 | 0.8510 | 0.9217 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 6.0000 | 3.8660 | 4.8781 | model_form_blend |
| predicted_WHIP | - | 1.1677 | 1.1677 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 12 |
| Season rows before report date | 12 |
| Report year | 2026 |
| Profile rows used | 12 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.2 |
| H | 5 |
| R | 1 |
| ER | 1 |
| BB | 2 |
| SO | 6 |
| HR | 1 |
| BF | 24 |
| Pitches | 95 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 22 |
| Pitching_ER | 4 |
| Pitching_ERA | 3.95 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 5 |
| Pitching_H | 6 |
| Pitching_HBP | 1 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 79 |
| Pitching_R | 4 |
| Pitching_SO | 1 |
| Pitching_Strikes | 55 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260606_SEA@DET |
| game_type | full |
| mlbID | 672456 |
| playerID | 672456 |
| playerName | Keider Montero |
| pos | P |
| started | True |
| startingPosition | P |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-06 |
| sl_k_percent | 16.7 |
| sl_bb_percent | 6.1 |
| sl_woba | 0.285 |
| sl_xwoba | 0.307 |
| sl_sweet_spot_percent | 30.2 |
| sl_barrel_batted_rate | 9.5 |
| sl_hard_hit_percent | 41.1 |
| sl_whiff_percent | 16.7 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 80.7320347 |
| sl_avg_hyper_speed | 94.148739397 |
| 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.700 | 1.000 | -0.700 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.233 | 0.000 | -0.233 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.833 | 0.000 | 0.167 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.920 | 1.200 | 0.080 | -0.200 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.667 | 3.000 | 0.333 | -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": "640448",
"player_name": "Kyle Finnegan",
"position": "Middle Reliever",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.200 | 2.000 | 4.000 | 2.000 | 5.000 | 0.000 | 3.1765 | 1.0588 | 0.3529 | 0.7059 | 0.3529 | 0.8823 | 0.0000 |
| last_10 | 0.35 | 10 | 10.200 | 4.000 | 10.000 | 6.000 | 6.000 | 1.000 | 3.3750 | 1.5000 | 0.3750 | 0.9375 | 0.5625 | 0.5625 | 0.0938 |
| season | 0.20 | 29 | 31.100 | 5.000 | 22.000 | 20.000 | 20.000 | 2.000 | 1.4362 | 1.3404 | 0.1596 | 0.7021 | 0.6383 | 0.6383 | 0.0638 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4300 |
| predicted_ER | 0.3950 |
| predicted_ERA | 3.5576 |
| predicted_H | 0.8640 |
| predicted_HR | 0.0880 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8170 |
| predicted_WHIP | 1.2942 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4300 | 0.1983 | model_form_blend |
| predicted_ER | 0.0000 | 0.3950 | 0.1822 | model_form_blend |
| predicted_ERA | - | 3.5576 | 3.5576 | form_only |
| predicted_H | 1.0000 | 0.8640 | 0.9373 | model_form_blend |
| predicted_HR | 0.0000 | 0.0880 | 0.0406 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8170 | 0.9156 | model_form_blend |
| predicted_WHIP | - | 1.2942 | 1.2942 | 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 | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.01 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 3 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.2 |
| Pitching_Pitches | 22 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 15 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260609_MIN@DET |
| game_type | full |
| mlbID | 640448 |
| playerID | 640448 |
| playerName | Kyle Finnegan |
| pos | P |
| started | False |
| startingPosition | P |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-09 |
| sl_k_percent | 15.4 |
| sl_bb_percent | 16.2 |
| sl_woba | 0.326 |
| sl_xwoba | 0.322 |
| sl_sweet_spot_percent | 27.0 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 39.3 |
| sl_whiff_percent | 24.2 |
| sl_swing_percent | 45.3 |
| sl_avg_best_speed | 77.798850909 |
| sl_avg_hyper_speed | 94.10388977 |
| 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.381 | 0.000 | -0.381 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.714 | 0.000 | -0.714 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.048 | 1.000 | -1.048 | -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 | 1.095 | 1.000 | -1.095 | -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": "676684",
"player_name": "Will Vest",
"position": "Middle Reliever",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 6.000 | 6.000 | 9.000 | 2.000 | 7.000 | 1.000 | 9.0000 | 1.8333 | 1.0000 | 1.5000 | 0.3333 | 1.1667 | 0.1667 |
| last_10 | 0.35 | 10 | 10.200 | 9.000 | 13.000 | 3.000 | 12.000 | 2.000 | 7.5938 | 1.5000 | 0.8438 | 1.2188 | 0.2812 | 1.1250 | 0.1875 |
| season | 0.20 | 21 | 20.200 | 15.000 | 22.000 | 8.000 | 23.000 | 2.000 | 6.5323 | 1.4516 | 0.7258 | 1.0645 | 0.3871 | 1.1129 | 0.0968 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3710 |
| predicted_ER | 0.7130 |
| predicted_ERA | 6.0105 |
| predicted_H | 1.1950 |
| predicted_HR | 0.1600 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0980 |
| predicted_WHIP | 1.4666 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3710 | 0.1549 | model_form_blend |
| predicted_ER | 0.0000 | 0.7130 | 0.2976 | model_form_blend |
| predicted_ERA | - | 6.0105 | 6.0105 | form_only |
| predicted_H | 0.0000 | 1.1950 | 0.4988 | model_form_blend |
| predicted_HR | 0.0000 | 0.1600 | 0.0668 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0980 | 0.4583 | model_form_blend |
| predicted_WHIP | - | 1.4666 | 1.4666 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 21 |
| Season rows before report date | 21 |
| Report year | 2026 |
| Profile rows used | 21 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 19 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 6.53 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 10 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260607_SEA@DET |
| game_type | full |
| mlbID | 676684 |
| playerID | 676684 |
| playerName | Will Vest |
| pos | P |
| started | False |
| startingPosition | P |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.3 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.332 |
| sl_xwoba | 0.299 |
| sl_sweet_spot_percent | 20.3 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 37.3 |
| sl_whiff_percent | 29.7 |
| sl_swing_percent | 47.6 |
| sl_avg_best_speed | 78.289563448 |
| sl_avg_hyper_speed | 94.419797368 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.276 | 0.000 | 0.724 | 1.000 |
| predicted_ER | 3.000 | 3.000 | 3.000 | Pitching_ER | 0.483 | 0.000 | 2.517 | 3.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 1.207 | 1.000 | 1.793 | 2.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.803 | 0.100 | 0.297 | 1.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.862 | 1.000 | 0.138 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 0.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": "663947",
"player_name": "Tyler Holton",
"position": "Middle Reliever",
"team": "DET",
"interpretation": "Boost/deboost is numeric movement 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": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 3.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 1.1,
"predicted_R": 3.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": 3.0,
"after": 3.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": 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": 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": 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": 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 | 1.000 | - |
| predicted_ER | 3.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 0.667 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.000 | 1.000 | 6.000 | 0.000 | 2.000 | 0.000 | 3.0000 | 2.0000 | 0.3333 | 2.0000 | 0.0000 | 0.6667 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 4.000 | 12.000 | 0.000 | 10.000 | 1.000 | 3.7241 | 1.2414 | 0.4138 | 1.2414 | 0.0000 | 1.0345 | 0.1035 |
| season | 0.20 | 29 | 28.200 | 14.000 | 35.000 | 8.000 | 25.000 | 4.000 | 4.3953 | 1.5000 | 0.4884 | 1.2209 | 0.2791 | 0.8721 | 0.1395 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1530 |
| predicted_ER | 0.3330 |
| predicted_ERA | 3.9273 |
| predicted_H | 0.9840 |
| predicted_HR | 0.0760 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6750 |
| predicted_WHIP | 1.4893 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.1530 | 0.6172 | model_form_blend |
| predicted_ER | 3.0000 | 0.3330 | 1.7948 | model_form_blend |
| predicted_ERA | - | 3.9273 | 3.9273 | form_only |
| predicted_H | 3.0000 | 0.9840 | 2.0890 | model_form_blend |
| predicted_HR | 0.0000 | 0.0760 | 0.0343 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 1.0000 | 0.6750 | 0.8531 | model_form_blend |
| predicted_WHIP | - | 1.4893 | 1.4893 | 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 | 3 |
| R | 3 |
| ER | 3 |
| BB | 1 |
| SO | 1 |
| HR | 0 |
| BF | 8 |
| 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 | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 4.40 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 16 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260609_MIN@DET |
| game_type | full |
| mlbID | 663947 |
| playerID | 663947 |
| playerName | Tyler Holton |
| pos | P |
| started | False |
| startingPosition | P |
| team | DET |
| teamID | 10 |
| game_date | 2026-06-09 |
| sl_k_percent | 20.0 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.372 |
| sl_xwoba | 0.315 |
| sl_sweet_spot_percent | 37.8 |
| sl_barrel_batted_rate | 5.6 |
| sl_hard_hit_percent | 38.9 |
| sl_whiff_percent | 23.9 |
| sl_swing_percent | 46.1 |
| sl_avg_best_speed | 78.165225682 |
| sl_avg_hyper_speed | 93.897324205 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | SEA 3 - 2 BAL | SEA | 0.551 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | SEA 4 - 3 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.7000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5505 |
| 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.729 | 4.766 | - | Base ML historical model prediction |
| 2 | variance_applied | 6 | 5 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 2 | 0.5505 | 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 | 3 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.44563589973142353,
"base_low_score_probability": 0.41808415398388543,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.027551745747538103,
"confidence": 0.63295,
"factors": {
"environmental": 0.969,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.0659
},
"prediction": "normal_scoring",
"expected_total_runs": 5,
"pre_simulation_expected_total_runs": 9.7,
"low_score_model_expected_total_runs": 9.7,
"final_simulation_total_runs": 7,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 77,
"near_bucket_sample_size": 21,
"medium_bucket_sample_size": 77,
"wide_bucket_sample_size": 164,
"global_sample_size": 174,
"bucket_scope": "pooled_0.08",
"sparse_bucket": false,
"empirical_hit_rate": 0.5065,
"bayesian_hit_rate": 0.5053,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8105,
"confidence_cap": 0.78,
"raw_pick_probability": 0.6324,
"calibrated_pick_probability": 0.5505,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "BAL",
"games": 69,
"wins": 32,
"losses": 37,
"win_pct": 0.463768115942029,
"runs_scored": 324,
"runs_allowed": 354,
"run_differential": -30,
"run_differential_per_game": -0.43478260869565216,
"available": true
},
"away": {
"team": "SEA",
"games": 69,
"wins": 36,
"losses": 33,
"win_pct": 0.5217391304347826,
"runs_scored": 292,
"runs_allowed": 264,
"run_differential": 28,
"run_differential_per_game": 0.4057971014492754,
"available": true
},
"run_differential_edge_per_game": -0.8406,
"win_pct_edge": -0.058,
"quality_edge": -0.9275,
"margin_adjustment": -0.3896,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.365,
"home_runs": 1.807,
"home_win_probability": 0.3676
}
}{
"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": 2,
"score_text": "SEA 3 - 2 BAL",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "SEA 4 - 3 BAL",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 1,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"home": {
"team": "BAL",
"games": 69,
"wins": 32,
"losses": 37,
"win_pct": 0.463768115942029,
"runs_scored": 324,
"runs_allowed": 354,
"run_differential": -30,
"run_differential_per_game": -0.43478260869565216,
"available": true
},
"away": {
"team": "SEA",
"games": 69,
"wins": 36,
"losses": 33,
"win_pct": 0.5217391304347826,
"runs_scored": 292,
"runs_allowed": 264,
"run_differential": 28,
"run_differential_per_game": 0.4057971014492754,
"available": true
}
}
}{
"applied": false,
"raw_margin": -1.5578,
"final_margin": -1.5578,
"margin_cap": 2.0,
"season_quality_edge": 0.9275,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.550509,
"final_confidence": 0.550509,
"confidence_cap": 0.66,
"score_gap": 1.5578,
"calibration_sample_size": 77,
"calibration_empirical_hit_rate": 0.5065,
"calibration_bayesian_hit_rate": 0.5053,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.9275,
"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": 3,
"home_runs": 2,
"score_text": "SEA 3 - 2 BAL",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "SEA 4 - 3 BAL",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 1,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 3,
"home_runs": 2,
"confidence": 0.550509,
"home_win_probability": 0.449491,
"away_win_probability": 0.550509,
"predicted_score_text": "SEA 3 - 2 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.1863,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 46.0,
"quality": 0.26906534353006645,
"contact": 0.30067417234698507,
"power": 0.243736597191406,
"discipline": -0.2171343546562165,
"xwoba": 0.33658695652173914,
"recent_xwoba": 0.33658695652173914,
"barrel": 8.60217391304348,
"ab_hard_contact": 0.09076507012210232,
"ab_bat_speed": 71.38771474727821,
"ab_strikeout_rate": 0.22590274301842625,
"available_players": 8,
"top_players": [
{
"player_id": "686527",
"player_name": "Dominic Canzone",
"position": "DH",
"weight": 4.0,
"quality": 0.6461810504088282,
"contact": 1.2427661374858272,
"power": 1.668248053943198,
"discipline": -0.23900278473962688,
"xwoba": 0.38,
"recent_xwoba": 0.38,
"barrel": 16.4,
"ab_hard_contact": 0.3078182217210953,
"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.4914180459701529,
"contact": 0.5152004150368487,
"power": 1.6957025744569187,
"discipline": -1.4996947726459005,
"xwoba": 0.367,
"recent_xwoba": 0.367,
"barrel": 18.3,
"ab_hard_contact": 0.8081467272335958,
"ab_bat_speed": 73.79295027534823,
"ab_strikeout_rate": 0.3860544217687075,
"available": 1.0
},
{
"player_id": "677594",
"player_name": "Julio Rodríguez",
"position": "CF",
"weight": 7.0,
"quality": 0.48495145750758567,
"contact": 0.5254682324566741,
"power": 0.6858155030627086,
"discipline": -0.27594137128535645,
"xwoba": 0.34,
"recent_xwoba": 0.34,
"barrel": 9.3,
"ab_hard_contact": 0.653833870777962,
"ab_bat_speed": 75.45754712301587,
"ab_strikeout_rate": 0.21594387755102043,
"available": 1.0
},
{
"player_id": "670156",
"player_name": "Miles Mastrobuoni",
"position": "3B",
"weight": 3.0,
"quality": -0.0017062733732095751,
"contact": -1.7999999999999998,
"power": -2.0,
"discipline": 0.14999999999999986,
"xwoba": 0.315,
"recent_xwoba": 0.315,
"barrel": 7.8,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26223456790123,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
},
{
"player_id": "668227",
"player_name": "Randy Arozarena",
"position": "LF",
"weight": 6.0,
"quality": 0.4432015515261507,
"contact": 0.7506655345096372,
"power": 0.40855715509643803,
"discipline": -0.05053320802005034,
"xwoba": 0.355,
"recent_xwoba": 0.355,
"barrel": 7.7,
"ab_hard_contact": 0.005428816214470965,
"ab_bat_speed": 69.1499007936508,
"ab_strikeout_rate": 0.24910714285714283,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "680694",
"player_name": "Kyle Bradish",
"quality": -0.05662236717156363,
"contact": -0.09644120965722193,
"command": -0.19866689617817437,
"movement": 0.1996771391396525,
"xwoba": 0.318,
"whiff": 25.5,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "BAL",
"original_runs": 2,
"run_delta": -0.0023,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 52.0,
"quality": 0.3293305453329548,
"contact": 0.39435216468745615,
"power": 0.49011745054694056,
"discipline": 0.18692444816394327,
"xwoba": 0.33865384615384614,
"recent_xwoba": 0.33865384615384614,
"barrel": 9.692307692307692,
"ab_hard_contact": 0.2516200732098655,
"ab_bat_speed": 71.10865195681671,
"ab_strikeout_rate": 0.2413280581017207,
"available_players": 9,
"top_players": [
{
"player_id": "624413",
"player_name": "Pete Alonso",
"position": "1B",
"weight": 7.0,
"quality": 1.1990993914528416,
"contact": 1.2835376886574077,
"power": 1.5273697571366853,
"discipline": 0.012021906618397693,
"xwoba": 0.368,
"recent_xwoba": 0.368,
"barrel": 12.1,
"ab_hard_contact": 1.081871333209884,
"ab_bat_speed": 73.31301087595531,
"ab_strikeout_rate": 0.24369488536155204,
"available": 1.0
},
{
"player_id": "668939",
"player_name": "Adley Rutschman",
"position": "DH",
"weight": 7.0,
"quality": 0.70523966593742,
"contact": 1.29287608960938,
"power": 0.8321511111574105,
"discipline": 0.8306698164329742,
"xwoba": 0.376,
"recent_xwoba": 0.376,
"barrel": 9.8,
"ab_hard_contact": 0.10245079457676201,
"ab_bat_speed": 70.20796203346204,
"ab_strikeout_rate": 0.13626126126126126,
"available": 1.0
},
{
"player_id": "694212",
"player_name": "Samuel Basallo",
"position": "C",
"weight": 5.0,
"quality": 0.5092565379964455,
"contact": 0.7374668742205212,
"power": 1.136420547911236,
"discipline": -0.3494736842105265,
"xwoba": 0.357,
"recent_xwoba": 0.357,
"barrel": 12.4,
"ab_hard_contact": -0.16111285129907968,
"ab_bat_speed": 73.77122354497354,
"ab_strikeout_rate": 0.25476190476190474,
"available": 1.0
},
{
"player_id": "665750",
"player_name": "Leody Taveras",
"position": "RF",
"weight": 5.0,
"quality": -0.298053494704845,
"contact": -0.3301786419161654,
"power": -0.714765525676422,
"discipline": 0.258707932622253,
"xwoba": 0.313,
"recent_xwoba": 0.313,
"barrel": 4.4,
"ab_hard_contact": -0.5661676563855925,
"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.3691582562659515,
"contact": 0.6122373699206882,
"power": -0.19960642908114018,
"discipline": 1.5226547973707854,
"xwoba": 0.355,
"recent_xwoba": 0.355,
"barrel": 4.8,
"ab_hard_contact": 0.17168094218671504,
"ab_bat_speed": 65.58632936507937,
"ab_strikeout_rate": 0.20849056603773586,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "693433",
"player_name": "Bryan Woo",
"quality": 0.4787000440866565,
"contact": 0.732435575368174,
"command": 0.16047596096468278,
"movement": 0.7247650459890163,
"xwoba": 0.272,
"whiff": 24.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": 2,
"predicted_score_text": "SEA 3 - 2 BAL",
"confidence": 0.550509,
"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": "SEA 3 - 2 BAL",
"winner": "SEA"
},
"final_simulation_score": {
"away_runs": 4,
"home_runs": 3,
"score_text": "SEA 4 - 3 BAL",
"winner": "SEA"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 1,
"home_run_delta": 1,
"total_run_delta": 2,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}
}Source: data/all_players_stats.csv embedded Savant hitter features. It adjusts team offense through expected production and contact quality, then records coverage so missing hitters are visible.
| Team | Applied | Offense Factor | Raw Avg Factor | Coverage Weight | Covered | Missing |
|---|---|---|---|---|---|---|
| Away SEA | True | 1.0348 | 1.0348 | 1 | 9 | 0 |
| Home BAL | True | 1.0369 | 1.0369 | 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 | 68 | 1.0558 | 0.7440 | neutral | 0.3400 | 0.2630 | 0.4680 | 9.30 | 44.40 | 90.40 | 13.10 | 27.30 | 21.10 | 7.20 | 0.3429 |
| 2B | Cole Young | 35 | 1.0314 | 0.4181 | neutral | 0.3280 | 0.2700 | 0.4060 | 5.10 | 37.10 | 87.60 | 16.30 | 22.30 | 19.20 | 7.20 | 0.8286 |
| 1B | Josh Naylor | 349 | 1.0281 | 0.3743 | neutral | 0.3270 | 0.2770 | 0.4080 | 5.10 | 37.80 | 87.70 | 13.90 | 19.80 | 13.30 | 7.90 | 0.4857 |
| LF | Randy Arozarena | 20 | 1.0569 | 0.7581 | neutral | 0.3550 | 0.2730 | 0.4330 | 7.70 | 43.80 | 91.60 | 8.20 | 26.60 | 21.70 | 9.20 | -0.4286 |
| RF | Luke Raley | 165 | 1.0697 | 0.9288 | neutral | 0.3670 | 0.2610 | 0.5410 | 18.30 | 47 | 90.20 | 15.70 | 41.60 | 32.80 | 5.10 | 0.3143 |
| DH | Dominic Canzone | 126 | 1.0686 | 0.9145 | neutral | 0.3800 | 0.2900 | 0.5300 | 16.40 | 49.10 | 93.10 | 12.10 | 30.40 | 20.50 | 8.40 | 0.2000 |
| 3B | Miles Mastrobuoni | 323 | 1.0074 | 0.0990 | neutral | 0.3150 | 0.2460 | 0.3920 | 7.80 | 40.10 | 89.20 | 13.90 | 24.90 | 21.70 | 8.80 | 0 |
| C | Jhonny Pereda | 253 | 1.0454 | 0.6047 | positive_batter_regression | 0.3720 | 0.3290 | 0.4570 | 4.50 | 50 | 90.70 | 12 | 18.90 | 14 | 7 | 0.9429 |
| SS | Colt Emerson | 176 | 0.9499 | -0.6677 | negative_batter_regression | 0.2320 | 0.1590 | 0.2570 | 4.90 | 31.70 | 88 | 18.30 | 31.80 | 30.40 | 7.20 | -2 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DH | Adley Rutschman | 72 | 1.0719 | 0.9583 | neutral | 0.3760 | 0.2920 | 0.4870 | 9.80 | 47.40 | 90.40 | 16 | 14.20 | 13.70 | 10.30 | 0.4000 |
| SS | Gunnar Henderson | 119 | 1.0085 | 0.1134 | neutral | 0.3040 | 0.2330 | 0.3930 | 8.70 | 44.70 | 89.10 | 12.40 | 24.50 | 25.20 | 7.30 | -0.0571 |
| LF | Taylor Ward | 52 | 1.0441 | 0.5874 | neutral | 0.3550 | 0.2570 | 0.3750 | 4.80 | 41.50 | 89.60 | 13.80 | 18.10 | 20.10 | 19.20 | 0 |
| 1B | Pete Alonso | 89 | 1.1110 | 1.4804 | positive_batter_regression | 0.3680 | 0.2700 | 0.5130 | 12.10 | 55.80 | 95 | 15 | 27.10 | 22.70 | 10 | 0.9143 |
| RF | Leody Taveras | 114 | 0.9906 | -0.1253 | neutral | 0.3130 | 0.2460 | 0.3520 | 4.40 | 29.20 | 86.80 | 15.70 | 24.90 | 21.50 | 11.20 | -0.4286 |
| C | Samuel Basallo | 80 | 1.0613 | 0.8178 | neutral | 0.3570 | 0.2720 | 0.4970 | 12.40 | 47.70 | 92.10 | 13 | 31.50 | 25.60 | 9 | 0.2857 |
| 3B | Coby Mayo | 452 | 1.0103 | 0.1373 | neutral | 0.2990 | 0.2190 | 0.3950 | 10.70 | 48.20 | 91.80 | 19.60 | 29.80 | 31.60 | 7.50 | 0.3429 |
| CF | Colton Cowser | 162 | 1.0087 | 0.1157 | neutral | 0.3210 | 0.2130 | 0.4380 | 12.50 | 31.30 | 85.90 | 10.60 | 32 | 27.80 | 11.40 | 0.3429 |
| 2B | Jackson Holliday | 305 | 1.0258 | 0.3434 | neutral | 0.3390 | 0.2270 | 0.4320 | 15 | 42.50 | 88.80 | 16.40 | 31.10 | 29 | 13 | 0.3429 |
{
"home": {
"applied": true,
"offense_factor": 1.0369,
"raw_average_factor": 1.0369,
"team_espn_average_rank": 160.56,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "DH",
"player_id": "668939",
"player_name": "Adley Rutschman",
"offense_factor": 1.0719,
"quality_score": 0.9583,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "668939",
"espn_id": 42178,
"player_name": "Adley Rutschman",
"team": "BAL",
"role": "batter",
"espn_rank": 72,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 72,
"gp_value": 48.0,
"gp_rank": 227,
"ab_value": 180.0,
"ab_rank": 172,
"r_value": 25.0,
"r_rank": 150,
"h_value": 48.0,
"h_rank": 137,
"avg_value": 0.2666666,
"avg_rank": null,
"2b_value": 14.0,
"2b_rank": 31,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 36.0,
"rbi_rank": 47,
"tb_value": 88.0,
"tb_rank": 548,
"bb_value": 21.0,
"bb_rank": 121,
"so_value": 28.0,
"so_rank": 270,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3431372,
"obp_rank": "-",
"slg_value": 0.4888888,
"slg_rank": "-",
"ops_value": 0.832026,
"ops_rank": null,
"war_value": 1.55,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 158.0,
"k_percent": 13.7,
"bb_percent": 10.3,
"woba": 0.362,
"xwoba": 0.376,
"xba": 0.292,
"xslg": 0.487,
"sweet_spot_percent": 39.0,
"barrel_batted_rate": 9.8,
"hard_hit_percent": 47.4,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 16.0,
"whiff_percent": 14.2,
"swing_percent": 41.6
},
"components": {
"expected_quality": 1.4865,
"regression_edge": 0.4,
"xwoba_edge": 2.0571,
"xba_edge": 1.5429,
"xslg_edge": 1.6143,
"barrel_edge": 0.6444,
"hard_hit_edge": 1.2714,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": 0.95,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "683002",
"player_name": "Gunnar Henderson",
"offense_factor": 1.0085,
"quality_score": 0.1134,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683002",
"espn_id": 42507,
"player_name": "Gunnar Henderson",
"team": "BAL",
"role": "batter",
"espn_rank": 119,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 119,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 286.0,
"ab_rank": 1,
"r_value": 35.0,
"r_rank": 58,
"h_value": 63.0,
"h_rank": 57,
"avg_value": 0.2202797,
"avg_rank": 139.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 13.0,
"hr_rank": 28,
"rbi_value": 32.0,
"rbi_rank": 73,
"tb_value": 117.0,
"tb_rank": 312,
"bb_value": 23.0,
"bb_rank": 89,
"so_value": 79.0,
"so_rank": 16,
"sb_value": 6.0,
"sb_rank": 70,
"obp_value": 0.284345,
"obp_rank": "146",
"slg_value": 0.4090909,
"slg_rank": "90",
"ops_value": 0.6934359,
"ops_rank": 236.0,
"war_value": 1.04,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 251.0,
"k_percent": 25.2,
"bb_percent": 7.3,
"woba": 0.306,
"xwoba": 0.304,
"xba": 0.233,
"xslg": 0.393,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 8.7,
"hard_hit_percent": 44.7,
"exit_velocity_avg": 89.1,
"launch_angle_avg": 12.4,
"whiff_percent": 24.5,
"swing_percent": 49.5
},
"components": {
"expected_quality": 0.1411,
"regression_edge": -0.0571,
"xwoba_edge": 0.0,
"xba_edge": -0.1429,
"xslg_edge": 0.2714,
"barrel_edge": 0.4,
"hard_hit_edge": 0.8857,
"exit_velocity_edge": 0.12,
"sweet_spot_edge": -0.4167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "621493",
"player_name": "Taylor Ward",
"offense_factor": 1.0441,
"quality_score": 0.5874,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "621493",
"espn_id": 34923,
"player_name": "Taylor Ward",
"team": "BAL",
"role": "batter",
"espn_rank": 52,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 52,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 249.0,
"ab_rank": 37,
"r_value": 42.0,
"r_rank": 27,
"h_value": 65.0,
"h_rank": 44,
"avg_value": 0.2610441,
"avg_rank": 67.0,
"2b_value": 16.0,
"2b_rank": 14,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 20.0,
"rbi_rank": 191,
"tb_value": 90.0,
"tb_rank": 1093,
"bb_value": 60.0,
"bb_rank": 3,
"so_value": 63.0,
"so_rank": 52,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.4057507,
"obp_rank": "5",
"slg_value": 0.3614457,
"slg_rank": "129",
"ops_value": 0.7671964,
"ops_rank": 134.0,
"war_value": 1.78,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 249.0,
"k_percent": 20.1,
"bb_percent": 19.2,
"woba": 0.355,
"xwoba": 0.355,
"xba": 0.257,
"xslg": 0.375,
"sweet_spot_percent": 36.2,
"barrel_batted_rate": 4.8,
"hard_hit_percent": 41.5,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 13.8,
"whiff_percent": 18.1,
"swing_percent": 31.7
},
"components": {
"expected_quality": 0.683,
"regression_edge": 0.0,
"xwoba_edge": 1.4571,
"xba_edge": 0.5429,
"xslg_edge": 0.0143,
"barrel_edge": -0.4667,
"hard_hit_edge": 0.4286,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": 0.4833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "624413",
"player_name": "Pete Alonso",
"offense_factor": 1.111,
"quality_score": 1.4804,
"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": 89,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 89,
"gp_value": 69.0,
"gp_rank": 2,
"ab_value": 264.0,
"ab_rank": 14,
"r_value": 41.0,
"r_rank": 31,
"h_value": 64.0,
"h_rank": 47,
"avg_value": 0.2424242,
"avg_rank": 103.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 14.0,
"hr_rank": 23,
"rbi_value": 42.0,
"rbi_rank": 20,
"tb_value": 118.0,
"tb_rank": 543,
"bb_value": 30.0,
"bb_rank": 45,
"so_value": 68.0,
"so_rank": 34,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3210702,
"obp_rank": "106",
"slg_value": 0.4469696,
"slg_rank": "59",
"ops_value": 0.7680398,
"ops_rank": 165.0,
"war_value": 1.34,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 240.0,
"k_percent": 22.7,
"bb_percent": 10.0,
"woba": 0.336,
"xwoba": 0.368,
"xba": 0.27,
"xslg": 0.513,
"sweet_spot_percent": 32.2,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 55.8,
"exit_velocity_avg": 95.0,
"launch_angle_avg": 15.0,
"whiff_percent": 27.1,
"swing_percent": 44.3
},
"components": {
"expected_quality": 1.5726,
"regression_edge": 0.9143,
"xwoba_edge": 1.8286,
"xba_edge": 0.9143,
"xslg_edge": 1.9857,
"barrel_edge": 1.1556,
"hard_hit_edge": 2.4714,
"exit_velocity_edge": 2.48,
"sweet_spot_edge": -0.1833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "665750",
"player_name": "Leody Taveras",
"offense_factor": 0.9906,
"quality_score": -0.1253,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665750",
"espn_id": 34951,
"player_name": "Leody Taveras",
"team": "BAL",
"role": "batter",
"espn_rank": 114,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 114,
"gp_value": 58.0,
"gp_rank": 157,
"ab_value": 174.0,
"ab_rank": 178,
"r_value": 26.0,
"r_rank": 136,
"h_value": 46.0,
"h_rank": 155,
"avg_value": 0.2643678,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 27.0,
"rbi_rank": 115,
"tb_value": 65.0,
"tb_rank": 1153,
"bb_value": 23.0,
"bb_rank": 89,
"so_value": 44.0,
"so_rank": 149,
"sb_value": 8.0,
"sb_rank": 50,
"obp_value": 0.3517587,
"obp_rank": "-",
"slg_value": 0.3735632,
"slg_rank": "-",
"ops_value": 0.7253219,
"ops_rank": null,
"war_value": 1.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 21.5,
"bb_percent": 11.2,
"woba": 0.328,
"xwoba": 0.313,
"xba": 0.246,
"xslg": 0.352,
"sweet_spot_percent": 34.3,
"barrel_batted_rate": 4.4,
"hard_hit_percent": 29.2,
"exit_velocity_avg": 86.8,
"launch_angle_avg": 15.7,
"whiff_percent": 24.9,
"swing_percent": 46.5
},
"components": {
"expected_quality": -0.1343,
"regression_edge": -0.4286,
"xwoba_edge": 0.2571,
"xba_edge": 0.2286,
"xslg_edge": -0.3143,
"barrel_edge": -0.5556,
"hard_hit_edge": -1.3286,
"exit_velocity_edge": -0.8,
"sweet_spot_edge": 0.1667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "694212",
"player_name": "Samuel Basallo",
"offense_factor": 1.0613,
"quality_score": 0.8178,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694212",
"espn_id": 4917646,
"player_name": "Samuel Basallo",
"team": "BAL",
"role": "batter",
"espn_rank": 80,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 80,
"gp_value": 56.0,
"gp_rank": 173,
"ab_value": 179.0,
"ab_rank": 174,
"r_value": 25.0,
"r_rank": 150,
"h_value": 47.0,
"h_rank": 143,
"avg_value": 0.2625698,
"avg_rank": null,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 27.0,
"rbi_rank": 115,
"tb_value": 85.0,
"tb_rank": 607,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 51.0,
"so_rank": 106,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3266331,
"obp_rank": "-",
"slg_value": 0.4748603,
"slg_rank": "-",
"ops_value": 0.8014934,
"ops_rank": null,
"war_value": 1.43,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 158.0,
"k_percent": 25.6,
"bb_percent": 9.0,
"woba": 0.347,
"xwoba": 0.357,
"xba": 0.272,
"xslg": 0.497,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 12.4,
"hard_hit_percent": 47.7,
"exit_velocity_avg": 92.1,
"launch_angle_avg": 13.0,
"whiff_percent": 31.5,
"swing_percent": 51.6
},
"components": {
"expected_quality": 1.2776,
"regression_edge": 0.2857,
"xwoba_edge": 1.5143,
"xba_edge": 0.9714,
"xslg_edge": 1.7571,
"barrel_edge": 1.2222,
"hard_hit_edge": 1.3143,
"exit_velocity_edge": 1.32,
"sweet_spot_edge": 0.2167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "691723",
"player_name": "Coby Mayo",
"offense_factor": 1.0103,
"quality_score": 0.1373,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691723",
"espn_id": 4683371,
"player_name": "Coby Mayo",
"team": "BAL",
"role": "batter",
"espn_rank": 452,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 452,
"gp_value": 54.0,
"gp_rank": 188,
"ab_value": 170.0,
"ab_rank": 186,
"r_value": 25.0,
"r_rank": 150,
"h_value": 33.0,
"h_rank": 232,
"avg_value": 0.1941176,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 26.0,
"rbi_rank": 127,
"tb_value": 66.0,
"tb_rank": 1022,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 59.0,
"so_rank": 65,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.262032,
"obp_rank": "-",
"slg_value": 0.3882352,
"slg_rank": "-",
"ops_value": 0.6502672,
"ops_rank": null,
"war_value": -0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 150.0,
"k_percent": 31.6,
"bb_percent": 7.5,
"woba": 0.287,
"xwoba": 0.299,
"xba": 0.219,
"xslg": 0.395,
"sweet_spot_percent": 26.8,
"barrel_batted_rate": 10.7,
"hard_hit_percent": 48.2,
"exit_velocity_avg": 91.8,
"launch_angle_avg": 19.6,
"whiff_percent": 29.8,
"swing_percent": 45.8
},
"components": {
"expected_quality": 0.1783,
"regression_edge": 0.3429,
"xwoba_edge": -0.1429,
"xba_edge": -0.5429,
"xslg_edge": 0.3,
"barrel_edge": 0.8444,
"hard_hit_edge": 1.3857,
"exit_velocity_edge": 1.2,
"sweet_spot_edge": -1.0833,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "CF",
"player_id": "681297",
"player_name": "Colton Cowser",
"offense_factor": 1.0087,
"quality_score": 0.1157,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681297",
"espn_id": 4416990,
"player_name": "Colton Cowser",
"team": "BAL",
"role": "batter",
"espn_rank": 162,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 162,
"gp_value": 59.0,
"gp_rank": 150,
"ab_value": 137.0,
"ab_rank": 239,
"r_value": 21.0,
"r_rank": 191,
"h_value": 31.0,
"h_rank": 242,
"avg_value": 0.2262773,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 337,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 52.0,
"tb_rank": 1356,
"bb_value": 18.0,
"bb_rank": 157,
"so_value": 44.0,
"so_rank": 149,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3121019,
"obp_rank": "-",
"slg_value": 0.379562,
"slg_rank": "-",
"ops_value": 0.6916639,
"ops_rank": null,
"war_value": 0.73,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 109.0,
"k_percent": 27.8,
"bb_percent": 11.4,
"woba": 0.309,
"xwoba": 0.321,
"xba": 0.213,
"xslg": 0.438,
"sweet_spot_percent": 29.2,
"barrel_batted_rate": 12.5,
"hard_hit_percent": 31.3,
"exit_velocity_avg": 85.9,
"launch_angle_avg": 10.6,
"whiff_percent": 32.0,
"swing_percent": 44.1
},
"components": {
"expected_quality": 0.2158,
"regression_edge": 0.3429,
"xwoba_edge": 0.4857,
"xba_edge": -0.7143,
"xslg_edge": 0.9143,
"barrel_edge": 1.2444,
"hard_hit_edge": -1.0286,
"exit_velocity_edge": -1.16,
"sweet_spot_edge": -0.6833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "702616",
"player_name": "Jackson Holliday",
"offense_factor": 1.0258,
"quality_score": 0.3434,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702616",
"espn_id": 5080633,
"player_name": "Jackson Holliday",
"team": "BAL",
"role": "batter",
"espn_rank": 305,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 305,
"gp_value": 20.0,
"gp_rank": 398,
"ab_value": 59.0,
"ab_rank": 384,
"r_value": 10.0,
"r_rank": 324,
"h_value": 13.0,
"h_rank": 374,
"avg_value": 0.2203389,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 418,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 10.0,
"rbi_rank": 305,
"tb_value": 25.0,
"tb_rank": 1589,
"bb_value": 9.0,
"bb_rank": 286,
"so_value": 20.0,
"so_rank": 335,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3188405,
"obp_rank": "-",
"slg_value": 0.4237288,
"slg_rank": "-",
"ops_value": 0.7425693,
"ops_rank": null,
"war_value": 0.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 25.0,
"k_percent": 29.0,
"bb_percent": 13.0,
"woba": 0.327,
"xwoba": 0.339,
"xba": 0.227,
"xslg": 0.432,
"sweet_spot_percent": 45.0,
"barrel_batted_rate": 15.0,
"hard_hit_percent": 42.5,
"exit_velocity_avg": 88.8,
"launch_angle_avg": 16.4,
"whiff_percent": 31.1,
"swing_percent": 44.0
},
"components": {
"expected_quality": 0.8314,
"regression_edge": 0.3429,
"xwoba_edge": 1.0,
"xba_edge": -0.3143,
"xslg_edge": 0.8286,
"barrel_edge": 1.8,
"hard_hit_edge": 0.5714,
"exit_velocity_edge": 0.0,
"sweet_spot_edge": 1.95,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0348,
"raw_average_factor": 1.0348,
"team_espn_average_rank": 168.33,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "CF",
"player_id": "677594",
"player_name": "Julio Rodríguez",
"offense_factor": 1.0558,
"quality_score": 0.744,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "677594",
"espn_id": 41044,
"player_name": "Julio Rodriguez",
"team": "SEA",
"role": "batter",
"espn_rank": 68,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 68,
"gp_value": 69.0,
"gp_rank": 2,
"ab_value": 279.0,
"ab_rank": 2,
"r_value": 38.0,
"r_rank": 49,
"h_value": 70.0,
"h_rank": 25,
"avg_value": 0.250896,
"avg_rank": 82.0,
"2b_value": 14.0,
"2b_rank": 31,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 13.0,
"hr_rank": 28,
"rbi_value": 33.0,
"rbi_rank": 61,
"tb_value": 123.0,
"tb_rank": 506,
"bb_value": 22.0,
"bb_rank": 105,
"so_value": 64.0,
"so_rank": 49,
"sb_value": 9.0,
"sb_rank": 41,
"obp_value": 0.3092105,
"obp_rank": "118",
"slg_value": 0.4408602,
"slg_rank": "64",
"ops_value": 0.7500707,
"ops_rank": 182.0,
"war_value": 1.61,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 244.0,
"k_percent": 21.1,
"bb_percent": 7.2,
"woba": 0.328,
"xwoba": 0.34,
"xba": 0.263,
"xslg": 0.468,
"sweet_spot_percent": 29.6,
"barrel_batted_rate": 9.3,
"hard_hit_percent": 44.4,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 13.1,
"whiff_percent": 27.3,
"swing_percent": 52.8
},
"components": {
"expected_quality": 0.8093,
"regression_edge": 0.3429,
"xwoba_edge": 1.0286,
"xba_edge": 0.7143,
"xslg_edge": 1.3429,
"barrel_edge": 0.5333,
"hard_hit_edge": 0.8429,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": -0.6167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "702284",
"player_name": "Cole Young",
"offense_factor": 1.0314,
"quality_score": 0.4181,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "702284",
"espn_id": 5080641,
"player_name": "Cole Young",
"team": "SEA",
"role": "batter",
"espn_rank": 35,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 35,
"gp_value": 69.0,
"gp_rank": 2,
"ab_value": 246.0,
"ab_rank": 44,
"r_value": 28.0,
"r_rank": 111,
"h_value": 61.0,
"h_rank": 68,
"avg_value": 0.2479674,
"avg_rank": 89.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 85.0,
"tb_rank": 869,
"bb_value": 20.0,
"bb_rank": 131,
"so_value": 53.0,
"so_rank": 95,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3163636,
"obp_rank": "112",
"slg_value": 0.3455284,
"slg_rank": "138",
"ops_value": 0.661892,
"ops_rank": 250.0,
"war_value": 2.19,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 220.0,
"k_percent": 19.2,
"bb_percent": 7.2,
"woba": 0.299,
"xwoba": 0.328,
"xba": 0.27,
"xslg": 0.406,
"sweet_spot_percent": 37.1,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 37.1,
"exit_velocity_avg": 87.6,
"launch_angle_avg": 16.3,
"whiff_percent": 22.3,
"swing_percent": 47.4
},
"components": {
"expected_quality": 0.3513,
"regression_edge": 0.8286,
"xwoba_edge": 0.6857,
"xba_edge": 0.9143,
"xslg_edge": 0.4571,
"barrel_edge": -0.4,
"hard_hit_edge": -0.2,
"exit_velocity_edge": -0.48,
"sweet_spot_edge": 0.6333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "1B",
"player_id": "647304",
"player_name": "Josh Naylor",
"offense_factor": 1.0281,
"quality_score": 0.3743,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "647304",
"espn_id": 35066,
"player_name": "Josh Naylor",
"team": "SEA",
"role": "batter",
"espn_rank": 349,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 349,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 253.0,
"ab_rank": 26,
"r_value": 26.0,
"r_rank": 136,
"h_value": 66.0,
"h_rank": 38,
"avg_value": 0.2608695,
"avg_rank": 67.0,
"2b_value": 7.0,
"2b_rank": 198,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 94.0,
"tb_rank": 920,
"bb_value": 22.0,
"bb_rank": 105,
"so_value": 37.0,
"so_rank": 198,
"sb_value": 13.0,
"sb_rank": 16,
"obp_value": 0.323741,
"obp_rank": "99",
"slg_value": 0.3715415,
"slg_rank": "121",
"ops_value": 0.6952825,
"ops_rank": 220.0,
"war_value": -0.01,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 225.0,
"k_percent": 13.3,
"bb_percent": 7.9,
"woba": 0.31,
"xwoba": 0.327,
"xba": 0.277,
"xslg": 0.408,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 37.8,
"exit_velocity_avg": 87.7,
"launch_angle_avg": 13.9,
"whiff_percent": 19.8,
"swing_percent": 53.0
},
"components": {
"expected_quality": 0.3562,
"regression_edge": 0.4857,
"xwoba_edge": 0.6571,
"xba_edge": 1.1143,
"xslg_edge": 0.4857,
"barrel_edge": -0.4,
"hard_hit_edge": -0.1,
"exit_velocity_edge": -0.44,
"sweet_spot_edge": -0.3333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "668227",
"player_name": "Randy Arozarena",
"offense_factor": 1.0569,
"quality_score": 0.7581,
"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": 555,
"metrics": {
"espn_rank": 20,
"gp_value": 69.0,
"gp_rank": 2,
"ab_value": 255.0,
"ab_rank": 24,
"r_value": 45.0,
"r_rank": 11,
"h_value": 75.0,
"h_rank": 9,
"avg_value": 0.2941176,
"avg_rank": 18.0,
"2b_value": 18.0,
"2b_rank": 5,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 33.0,
"rbi_rank": 61,
"tb_value": 116.0,
"tb_rank": 460,
"bb_value": 27.0,
"bb_rank": 63,
"so_value": 64.0,
"so_rank": 49,
"sb_value": 18.0,
"sb_rank": 5,
"obp_value": 0.379661,
"obp_rank": "18",
"slg_value": 0.4549019,
"slg_rank": "52",
"ops_value": 0.8345629,
"ops_rank": 70.0,
"war_value": 2.62,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 236.0,
"k_percent": 21.7,
"bb_percent": 9.2,
"woba": 0.37,
"xwoba": 0.355,
"xba": 0.273,
"xslg": 0.433,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 43.8,
"exit_velocity_avg": 91.6,
"launch_angle_avg": 8.2,
"whiff_percent": 26.6,
"swing_percent": 47.7
},
"components": {
"expected_quality": 0.9513,
"regression_edge": -0.4286,
"xwoba_edge": 1.4571,
"xba_edge": 1.0,
"xslg_edge": 0.8429,
"barrel_edge": 0.1778,
"hard_hit_edge": 0.7571,
"exit_velocity_edge": 1.12,
"sweet_spot_edge": 0.9,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "670042",
"player_name": "Luke Raley",
"offense_factor": 1.0697,
"quality_score": 0.9288,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670042",
"espn_id": 40422,
"player_name": "Luke Raley",
"team": "SEA",
"role": "batter",
"espn_rank": 165,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 165,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 177.0,
"ab_rank": 175,
"r_value": 22.0,
"r_rank": 179,
"h_value": 44.0,
"h_rank": 162,
"avg_value": 0.2485875,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 13.0,
"hr_rank": 28,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 91.0,
"tb_rank": 594,
"bb_value": 10.0,
"bb_rank": 268,
"so_value": 64.0,
"so_rank": 49,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3108808,
"obp_rank": "-",
"slg_value": 0.5141242,
"slg_rank": "-",
"ops_value": 0.825005,
"ops_rank": null,
"war_value": 0.72,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 150.0,
"k_percent": 32.8,
"bb_percent": 5.1,
"woba": 0.356,
"xwoba": 0.367,
"xba": 0.261,
"xslg": 0.541,
"sweet_spot_percent": 39.1,
"barrel_batted_rate": 18.3,
"hard_hit_percent": 47.0,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 15.7,
"whiff_percent": 41.6,
"swing_percent": 54.0
},
"components": {
"expected_quality": 1.5328,
"regression_edge": 0.3143,
"xwoba_edge": 1.8,
"xba_edge": 0.6571,
"xslg_edge": 2.3857,
"barrel_edge": 2.5,
"hard_hit_edge": 1.2143,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": 0.9667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "686527",
"player_name": "Dominic Canzone",
"offense_factor": 1.0686,
"quality_score": 0.9145,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686527",
"espn_id": 4345621,
"player_name": "Dominic Canzone",
"team": "SEA",
"role": "batter",
"espn_rank": 126,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 126,
"gp_value": 60.0,
"gp_rank": 146,
"ab_value": 148.0,
"ab_rank": 220,
"r_value": 22.0,
"r_rank": 179,
"h_value": 41.0,
"h_rank": 181,
"avg_value": 0.277027,
"avg_rank": null,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 25.0,
"rbi_rank": 138,
"tb_value": 77.0,
"tb_rank": 860,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 34.0,
"so_rank": 215,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3433734,
"obp_rank": "-",
"slg_value": 0.5202702,
"slg_rank": "-",
"ops_value": 0.8636436,
"ops_rank": null,
"war_value": 1.0,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 124.0,
"k_percent": 20.5,
"bb_percent": 8.4,
"woba": 0.373,
"xwoba": 0.38,
"xba": 0.29,
"xslg": 0.53,
"sweet_spot_percent": 40.5,
"barrel_batted_rate": 16.4,
"hard_hit_percent": 49.1,
"exit_velocity_avg": 93.1,
"launch_angle_avg": 12.1,
"whiff_percent": 30.4,
"swing_percent": 47.0
},
"components": {
"expected_quality": 1.8541,
"regression_edge": 0.2,
"xwoba_edge": 2.1714,
"xba_edge": 1.4857,
"xslg_edge": 2.2286,
"barrel_edge": 2.1111,
"hard_hit_edge": 1.5143,
"exit_velocity_edge": 1.72,
"sweet_spot_edge": 1.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "670156",
"player_name": "Miles Mastrobuoni",
"offense_factor": 1.0074,
"quality_score": 0.099,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "670156",
"espn_id": 40900,
"player_name": "Miles Mastrobuoni",
"team": "SEA",
"role": "batter",
"espn_rank": 323,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 323,
"gp_value": 1.0,
"gp_rank": 548,
"ab_value": 3.0,
"ab_rank": 545,
"r_value": 1.0,
"r_rank": 491,
"h_value": 1.0,
"h_rank": 513,
"avg_value": 0.3333333,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 0.0,
"rbi_rank": 507,
"tb_value": 1.0,
"tb_rank": 2632,
"bb_value": 0.0,
"bb_rank": 510,
"so_value": 1.0,
"so_rank": 532,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3333333,
"obp_rank": "-",
"slg_value": 0.3333333,
"slg_rank": "-",
"ops_value": 0.6666666,
"ops_rank": null,
"war_value": 0.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 21.7,
"bb_percent": 8.8,
"woba": 0.315,
"xwoba": 0.315,
"xba": 0.246,
"xslg": 0.392,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 40.1,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 13.9,
"whiff_percent": 24.9,
"swing_percent": 47.2
},
"components": {
"expected_quality": 0.2559,
"regression_edge": 0.0,
"xwoba_edge": 0.3143,
"xba_edge": 0.2286,
"xslg_edge": 0.2571,
"barrel_edge": 0.2,
"hard_hit_edge": 0.2286,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 0.0833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "640902",
"player_name": "Jhonny Pereda",
"offense_factor": 1.0454,
"quality_score": 0.6047,
"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": 253,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 253,
"gp_value": 16.0,
"gp_rank": 426,
"ab_value": 52.0,
"ab_rank": 396,
"r_value": 7.0,
"r_rank": 372,
"h_value": 15.0,
"h_rank": 361,
"avg_value": 0.2884615,
"avg_rank": null,
"2b_value": 0.0,
"2b_rank": 478,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 4.0,
"rbi_rank": 417,
"tb_value": 21.0,
"tb_rank": 2045,
"bb_value": 4.0,
"bb_rank": 394,
"so_value": 8.0,
"so_rank": 449,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3508771,
"obp_rank": "-",
"slg_value": 0.4038461,
"slg_rank": "-",
"ops_value": 0.7547232,
"ops_rank": null,
"war_value": 0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 28.0,
"k_percent": 14.0,
"bb_percent": 7.0,
"woba": 0.339,
"xwoba": 0.372,
"xba": 0.329,
"xslg": 0.457,
"sweet_spot_percent": 50.0,
"barrel_batted_rate": 4.5,
"hard_hit_percent": 50.0,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 12.0,
"whiff_percent": 18.9,
"swing_percent": 48.2
},
"components": {
"expected_quality": 1.4091,
"regression_edge": 0.9429,
"xwoba_edge": 1.9429,
"xba_edge": 2.5,
"xslg_edge": 1.1857,
"barrel_edge": -0.5333,
"hard_hit_edge": 1.6429,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": 2.5,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "806068",
"player_name": "Colt Emerson",
"offense_factor": 0.9499,
"quality_score": -0.6677,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "806068",
"espn_id": 5149068,
"player_name": "Colt Emerson",
"team": "SEA",
"role": "batter",
"espn_rank": 176,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 176,
"gp_value": 19.0,
"gp_rank": 400,
"ab_value": 62.0,
"ab_rank": 380,
"r_value": 9.0,
"r_rank": 341,
"h_value": 15.0,
"h_rank": 361,
"avg_value": 0.2419354,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 10.0,
"rbi_rank": 305,
"tb_value": 34.0,
"tb_rank": 1305,
"bb_value": 5.0,
"bb_rank": 364,
"so_value": 21.0,
"so_rank": 325,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3188405,
"obp_rank": "-",
"slg_value": 0.548387,
"slg_rank": "-",
"ops_value": 0.8672275,
"ops_rank": null,
"war_value": 0.64,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 32.0,
"k_percent": 30.4,
"bb_percent": 7.2,
"woba": 0.373,
"xwoba": 0.232,
"xba": 0.159,
"xslg": 0.257,
"sweet_spot_percent": 36.6,
"barrel_batted_rate": 4.9,
"hard_hit_percent": 31.7,
"exit_velocity_avg": 88.0,
"launch_angle_avg": 18.3,
"whiff_percent": 31.8,
"swing_percent": 49.5
},
"components": {
"expected_quality": -1.3996,
"regression_edge": -2.0,
"xwoba_edge": -2.0571,
"xba_edge": -2.2571,
"xslg_edge": -1.6714,
"barrel_edge": -0.4444,
"hard_hit_edge": -0.9714,
"exit_velocity_edge": -0.32,
"sweet_spot_edge": 0.55,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"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 | 98 | 0.4083 | 1 | 0.9653 | 1.0040 | 0.9120 | 0.9821 | neutral | 0.2720 | 0.2600 | 24.50 | 4.60 | 24.50 | 6.50 | 44.20 | |
| Home BAL | True | 157 | -0.0739 | 1 | 1.0063 | 0.9983 | 1.0580 | 1.0450 | neutral | 0.3180 | 0.3440 | 22.50 | 11.90 | 25.50 | 10.30 | 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 SEA | True | None | 96 | 92.51 | 2287 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.1568 | |
| Home BAL | True | None | 97 | 90.00 | 2454 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0159 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0063 |
| home_runs_vs_away_pitcher | 0.9653 |
| home_pitcher_quality_edge | -0.4822 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "680694",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 251.0,
"k_percent": 22.5,
"bb_percent": 11.9,
"woba": 0.344,
"xwoba": 0.318,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 36.5,
"avg_best_speed": 76.671,
"avg_hyper_speed": 93.7519,
"whiff_percent": 25.5,
"swing_percent": 44.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1913,
"command_and_miss": -0.1629,
"regression_edge": 0.7429,
"xwoba_edge": -0.0857,
"barrel_edge": -0.6667,
"hard_hit_edge": 0.2714,
"whiff_edge": -0.0143,
"bb_edge": -0.725,
"pitch_design_score": 0.0159
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680694",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 97,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 97,
"pitch_usage": 0.0,
"release_speed": 89.9968968546538,
"release_spin_rate": 2454.133371053351,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 97,
"pitch_usage": 0.0,
"release_speed": 89.9968968546538,
"release_spin_rate": 2454.133371053351,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9969,
"release_spin_rate": 2454.1334,
"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.0159,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1133,
"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.0739,
"sample_weight": 1.0,
"run_prevention_factor": 1.0063,
"strikeout_factor": 0.9983,
"walk_factor": 1.058,
"homer_factor": 1.045,
"woba_minus_xwoba": 0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680694",
"espn_id": 4311625,
"player_name": "Kyle Bradish",
"team": "BAL",
"role": "pitcher",
"espn_rank": 157,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 157,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 5.0,
"qs_rank": 44,
"era_value": 3.8942,
"era_rank": 39.0,
"w_value": 3.0,
"w_rank": 92,
"l_value": 7.0,
"l_rank": 3,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 69.1,
"ip_rank": 59,
"h_value": 69.0,
"h_rank": 33,
"er_value": 30.0,
"er_rank": 67,
"hr_value": 8.0,
"hr_rank": 67,
"bb_value": 36.0,
"bb_rank": 3,
"k_value": 68.0,
"k_rank": 45,
"k_per_9_value": 8.826922,
"k_per_9_rank": 20,
"whip_value": 1.5144,
"whip_rank": 63.0,
"war_value": 0.59,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "693433",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 255.0,
"k_percent": 24.5,
"bb_percent": 4.6,
"woba": 0.26,
"xwoba": 0.272,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 44.2,
"avg_best_speed": 78.7449,
"avg_hyper_speed": 94.582,
"whiff_percent": 24.5,
"swing_percent": 54.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.6376,
"command_and_miss": 0.2807,
"regression_edge": -0.3429,
"xwoba_edge": 1.2286,
"barrel_edge": 0.1778,
"hard_hit_edge": -0.8286,
"whiff_edge": -0.1571,
"bb_edge": 1.1,
"pitch_design_score": 0.1568
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "693433",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.5129,
"release_spin_rate": 2286.8317,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1568,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1197,
"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.4083,
"sample_weight": 1.0,
"run_prevention_factor": 0.9653,
"strikeout_factor": 1.004,
"walk_factor": 0.912,
"homer_factor": 0.9821,
"woba_minus_xwoba": -0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693433",
"espn_id": 4629089,
"player_name": "Bryan Woo",
"team": "SEA",
"role": "pitcher",
"espn_rank": 98,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 98,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 8.0,
"qs_rank": 9,
"era_value": 3.7402,
"era_rank": 33.0,
"w_value": 5.0,
"w_rank": 30,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 77.0,
"ip_rank": 29,
"h_value": 63.0,
"h_rank": 62,
"er_value": 32.0,
"er_rank": 52,
"hr_value": 7.0,
"hr_rank": 90,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 75.0,
"k_rank": 32,
"k_per_9_value": 8.766234,
"k_per_9_rank": 29,
"whip_value": 1.0,
"whip_rank": 10.0,
"war_value": 0.92,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0063,
"home_runs_vs_away_pitcher": 0.9653,
"home_pitcher_quality_edge": -0.4822
},
"score_before": {
"away_runs": 3.1307,
"home_runs": 2.0535
},
"score_after": {
"away_runs": 3.1504,
"home_runs": 1.9823,
"home_win_probability": 0.392
},
"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-37 | 0.373 | 1.20 | 2.80 | -93 | cold | strong | |
| Home BAL | 14-50 | 0.219 | 1.20 | 3.60 | -154 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away SEA | 36-33 | 0.522 | 28 | 0.406 | True |
| Home BAL | 32-37 | 0.464 | -30 | -0.435 | True |
| Signal | - | - | -0.841 | -0.927 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target SEA | - | - | 3 | - | - | - | - |
| Game target BAL | - | - | 2 | - | - | - | - |
| Player finalized SEA | 46 | 12 | 9 | 0 | 7 | 3 | 11 |
| Player finalized BAL | 52 | 13 | 9 | 0 | 9 | 7 | 13 |
| Player model fractional SEA | 47.31 | 12.30 | 7.14 | 1.72 | 6.47 | 3.65 | 10.46 |
| Player model fractional BAL | 51.69 | 11.68 | 7.16 | 1.93 | 7.07 | 6.20 | 13.62 |
| Simulation box SEA | 36 | 9 | 4 | 1 | 4 | 4 | 4 |
| Simulation box BAL | 33 | 6 | 3 | 0 | 3 | 6 | 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 SEA | Starter | Bryan Woo | 6 | 2 | 6 | 5 | 3 | 3.95 | 1.11 | True |
| Away SEA | Middle Reliever | Andrés Muñoz | 1 | 0 | 0 | 0 | 0 | 5.10 | 1.41 | True |
| Away SEA | Middle Reliever | Eduard Bazardo | 1 | 1 | 2 | 1 | 3 | 3.57 | 1.39 | True |
| Away SEA | Middle Reliever | José A. Ferrer | 1 | 0 | 1 | 0 | 0 | 3.91 | 1.47 | True |
| Home BAL | Starter | Kyle Bradish | 4.20 | 2 | 3 | 7 | 2 | 3.50 | 1.38 | True |
| Home BAL | Middle Reliever | Andrew Kittredge | 1 | 1 | 1 | 1 | 0 | 4.41 | 1.27 | True |
| Home BAL | Middle Reliever | Rico Garcia | 1 | 1 | 0 | 1 | 1 | 3.68 | 1.05 | True |
| Home BAL | Middle Reliever | Anthony Nunez | 0.20 | 0 | 0 | 0 | 1 | 5.73 | 1.43 | True |
| Home BAL | Middle Reliever | Yennier Cano | 1.20 | 0 | 0 | 0 | 0 | 4.23 | 1.14 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | BAL | batter | LF | Taylor Ward | worse | 10 | 4 | 6 | 3 | 7 | predicted_SO | 3.0990 | boost | worse |
| away | SEA | batter | LF | Randy Arozarena | better | 10 | 8 | 2 | 9 | 1 | predicted_H | 1.9300 | boost | better |
| home | BAL | batter | SS | Gunnar Henderson | worse | 10 | 3 | 7 | 4 | 6 | predicted_AB | -1.7600 | deboost | worse |
| home | BAL | pitcher | Starter | Kyle Bradish | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -1.4667 | deboost | worse |
| home | BAL | batter | DH | Adley Rutschman | better | 10 | 7 | 3 | 6 | 4 | predicted_RBI | 1.2000 | boost | better |
| home | BAL | batter | RF | Leody Taveras | worse | 10 | 4 | 6 | 3 | 7 | predicted_SO | 1.1930 | boost | worse |
| home | BAL | batter | 1B | Pete Alonso | worse | 9 | 2 | 7 | 3 | 6 | predicted_AB | -1.1900 | deboost | worse |
| home | BAL | batter | 3B | Coby Mayo | worse | 11 | 2 | 9 | 3 | 8 | predicted_SO | -1.1130 | deboost | better |
| away | SEA | batter | 1B | Josh Naylor | worse | 10 | 3 | 7 | 2 | 8 | predicted_H | -1.0900 | deboost | worse |
| away | SEA | batter | DH | Dominic Canzone | worse | 10 | 4 | 6 | 3 | 7 | predicted_AB | 1.0580 | boost | better |
| home | BAL | batter | 2B | Jackson Holliday | worse | 10 | 1 | 9 | 2 | 8 | predicted_SO | -1.0540 | deboost | better |
| away | SEA | batter | 2B | Cole Young | better | 11 | 5 | 6 | 6 | 5 | predicted_H | 1.0100 | boost | better |
| away | SEA | batter | 3B | Miles Mastrobuoni | worse | 8 | 1 | 7 | 2 | 6 | predicted_BB | 1.0000 | boost | better |
| away | SEA | batter | CF | Julio Rodríguez | worse | 9 | 1 | 8 | 2 | 7 | predicted_SO | -0.9230 | deboost | better |
| home | BAL | batter | C | Samuel Basallo | worse | 11 | 3 | 8 | 4 | 7 | predicted_2B | 0.8310 | boost | better |
| away | SEA | batter | SS | Colt Emerson | better | 11 | 7 | 4 | 6 | 5 | predicted_AB | 0.7620 | boost | better |
| away | SEA | batter | C | Jhonny Pereda | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_BB | 0.6760 | boost | better |
| home | BAL | batter | CF | Colton Cowser | worse | 10 | 3 | 7 | 3 | 7 | predicted_BB | 0.6260 | boost | better |
| away | SEA | batter | RF | Luke Raley | worse | 11 | 3 | 8 | 4 | 7 | predicted_AB | 0.5580 | boost | better |
| home | BAL | pitcher | Middle Reliever | Yennier Cano | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.5333 | boost | better |
| home | BAL | pitcher | Middle Reliever | Anthony Nunez | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Bryan Woo |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.4083 |
| ESPN Rank | 98 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1568 |
| Avg Velo | 92.5129 |
| Avg Spin | 2286.8317 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 2 |
| Pre H | 5 |
| Pre BB | 3 |
| Pre SO | 6 |
| Season ERA | 3.7403 |
| Season WHIP | 1 |
| Role Avg IP | 5.9230 |
| Recent Avg IP | 6 |
| Last Start IP | 6.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"opponent": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"edges": {
"quality_edge": 0.1705,
"offense_edge": -0.0113,
"opponent_offense_edge": 0.0192,
"defense_strength": 0.1302,
"opponent_defense_weakness": 0.0659,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9815,
"strikeout": 1.0036
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "693433",
"profile": {
"available": true,
"pitcher_id": "693433",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 255.0,
"k_percent": 24.5,
"bb_percent": 4.6,
"woba": 0.26,
"xwoba": 0.272,
"sweet_spot_percent": 31.6,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 44.2,
"avg_best_speed": 78.7449,
"avg_hyper_speed": 94.582,
"whiff_percent": 24.5,
"swing_percent": 54.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.6376,
"command_and_miss": 0.2807,
"regression_edge": -0.3429,
"xwoba_edge": 1.2286,
"barrel_edge": 0.1778,
"hard_hit_edge": -0.8286,
"whiff_edge": -0.1571,
"bb_edge": 1.1,
"pitch_design_score": 0.1568
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "693433",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.5129,
"release_spin_rate": 2286.8317,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1568,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1197,
"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.4083,
"sample_weight": 1.0,
"run_prevention_factor": 0.9653,
"strikeout_factor": 1.004,
"walk_factor": 0.912,
"homer_factor": 0.9821,
"woba_minus_xwoba": -0.012,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "693433",
"espn_id": 4629089,
"player_name": "Bryan Woo",
"team": "SEA",
"role": "pitcher",
"espn_rank": 98,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 98,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 8.0,
"qs_rank": 9,
"era_value": 3.7402,
"era_rank": 33.0,
"w_value": 5.0,
"w_rank": 30,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 77.0,
"ip_rank": 29,
"h_value": 63.0,
"h_rank": 62,
"er_value": 32.0,
"er_rank": 52,
"hr_value": 7.0,
"hr_rank": 90,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 75.0,
"k_rank": 32,
"k_per_9_value": 8.766234,
"k_per_9_rank": 29,
"whip_value": 1.0,
"whip_rank": 10.0,
"war_value": 0.92,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 0.9653,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 0.9653,
"adjusted": 5
},
"predicted_BB": {
"original": 1.0,
"factor": 0.912,
"adjusted": 1
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9821,
"adjusted": 0
},
"predicted_SO": {
"original": 7.0,
"factor": 1.004,
"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": 59.0,
"ER": 29,
"H": 53,
"BB": 10,
"SO": 58,
"HR": 7,
"ERA": 4.423728813559322,
"WHIP": 1.0677966101694916,
"K9": 8.847457627118644,
"HR9": 1.0677966101694916,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "693433",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 96,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 96,
"pitch_usage": 0.0,
"release_speed": 92.51294588187733,
"release_spin_rate": 2286.8316876099384,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 92.5129,
"release_spin_rate": 2286.8317,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": 0.1568,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.1197,
"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": "693433",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 30.0,
"ER": 11.0,
"R": 11.0,
"H": 24.0,
"BB": 6.0,
"SO": 37.0,
"HR": 1.0,
"BF": 119.0,
"Pitches": 461.0
},
"per_game": {
"IP": 6.0,
"ER": 2.2,
"R": 2.2,
"H": 4.8,
"BB": 1.2,
"SO": 7.4,
"HR": 0.2,
"BF": 23.8,
"Pitches": 92.2
},
"rates": {
"ERA": 3.3,
"WHIP": 1.0,
"ER_per_IP": 0.36667,
"H_per_IP": 0.8,
"BB_per_IP": 0.2,
"SO_per_IP": 1.23333,
"HR_per_IP": 0.03333
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 59.0,
"ER": 29.0,
"R": 29.0,
"H": 53.0,
"BB": 10.0,
"SO": 58.0,
"HR": 7.0,
"BF": 238.0,
"Pitches": 873.0
},
"per_game": {
"IP": 6.0,
"ER": 2.9,
"R": 2.9,
"H": 5.3,
"BB": 1.0,
"SO": 5.8,
"HR": 0.7,
"BF": 23.8,
"Pitches": 87.3
},
"rates": {
"ERA": 4.4237,
"WHIP": 1.0678,
"ER_per_IP": 0.49153,
"H_per_IP": 0.89831,
"BB_per_IP": 0.16949,
"SO_per_IP": 0.98305,
"HR_per_IP": 0.11864
}
},
"season": {
"games": 13,
"totals": {
"IP": 77.0,
"ER": 32.0,
"R": 34.0,
"H": 63.0,
"BB": 14.0,
"SO": 75.0,
"HR": 7.0,
"BF": 306.0,
"Pitches": 1126.0
},
"per_game": {
"IP": 6.0,
"ER": 2.4615,
"R": 2.6154,
"H": 4.8462,
"BB": 1.0769,
"SO": 5.7692,
"HR": 0.5385,
"BF": 23.5385,
"Pitches": 86.6154
},
"rates": {
"ERA": 3.7403,
"WHIP": 1.0,
"ER_per_IP": 0.41558,
"H_per_IP": 0.81818,
"BB_per_IP": 0.18182,
"SO_per_IP": 0.97403,
"HR_per_IP": 0.09091
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.631,
"predicted_H": 5.231,
"predicted_BB": 1.413,
"predicted_SO": 6.3,
"predicted_HR": 0.558,
"predicted_ERA": 3.9461,
"predicted_WHIP": 1.1074
}
}{
"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.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 2.631,
"final": 2.3361,
"source": "model_form_blend"
},
"predicted_H": {
"model": 5.0,
"form": 5.231,
"final": 5.123,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 1.413,
"final": 2.1547,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 6.3,
"final": 6.1598,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.558,
"final": 0.2972,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9461,
"final": 3.9461,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1074,
"final": 1.1074,
"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.0511 |
| ESPN Rank | 626 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0782 |
| 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 | 0 |
| Season ERA | 5.1781 |
| Season WHIP | 1.3562 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"opponent": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"edges": {
"quality_edge": 0.1705,
"offense_edge": -0.0113,
"opponent_offense_edge": 0.0192,
"defense_strength": 0.1302,
"opponent_defense_weakness": 0.0659,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9815,
"strikeout": 1.0036
},
"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": 34.3,
"bb_percent": 9.3,
"woba": 0.313,
"xwoba": 0.327,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 11.7,
"hard_hit_percent": 48.3,
"avg_best_speed": 76.7817,
"avg_hyper_speed": 95.2384,
"whiff_percent": 42.0,
"swing_percent": 46.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.4568,
"command_and_miss": 1.5507,
"regression_edge": -0.4,
"xwoba_edge": -0.3429,
"barrel_edge": -0.9778,
"hard_hit_edge": -1.4143,
"whiff_edge": 2.3429,
"bb_edge": -0.075,
"pitch_design_score": 0.0782
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "662253",
"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": 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": 17,
"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.0782,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5583,
"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.0511,
"sample_weight": 0.45,
"run_prevention_factor": 0.9957,
"strikeout_factor": 1.072,
"walk_factor": 1.0027,
"homer_factor": 1.0653,
"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": 626,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 626,
"gp_value": 26.0,
"gp_rank": 95,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.178,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 10.0,
"sv_rank": 13,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 24.1,
"ip_rank": 306,
"h_value": 23.0,
"h_rank": 265,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 37.0,
"k_rank": 157,
"k_per_9_value": 13.684932,
"k_per_9_rank": 13,
"whip_value": 1.3561,
"whip_rank": null,
"war_value": -0.51,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9981,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9981,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0012,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0294,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0324,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 4,
"H": 9,
"BB": 3,
"SO": 12,
"HR": 1,
"ERA": 3.8571428571428577,
"WHIP": 1.2857142857142858,
"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-08T00:00:00"
}{
"available": true,
"pitcher_id": "662253",
"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": 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": 17,
"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.0782,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5583,
"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.807,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4902,
"prior_weight": 0.5098
},
"role": "pitcher",
"player_id": "662253",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 4.0,
"R": 4.0,
"H": 5.0,
"BB": 3.0,
"SO": 5.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 95.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.0,
"BB": 0.6,
"SO": 1.0,
"HR": 0.2,
"BF": 4.8,
"Pitches": 19.0
},
"rates": {
"ERA": 7.7143,
"WHIP": 1.7143,
"ER_per_IP": 0.85714,
"H_per_IP": 1.07143,
"BB_per_IP": 0.64286,
"SO_per_IP": 1.07143,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 9.0,
"BB": 3.0,
"SO": 12.0,
"HR": 1.0,
"BF": 42.0,
"Pitches": 160.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.9,
"BB": 0.3,
"SO": 1.2,
"HR": 0.1,
"BF": 4.2,
"Pitches": 16.0
},
"rates": {
"ERA": 3.8571,
"WHIP": 1.2857,
"ER_per_IP": 0.42857,
"H_per_IP": 0.96429,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 26,
"totals": {
"IP": 24.1,
"ER": 14.0,
"R": 15.0,
"H": 23.0,
"BB": 10.0,
"SO": 37.0,
"HR": 4.0,
"BF": 108.0,
"Pitches": 432.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5385,
"R": 0.5769,
"H": 0.8846,
"BB": 0.3846,
"SO": 1.4231,
"HR": 0.1538,
"BF": 4.1538,
"Pitches": 16.6154
},
"rates": {
"ERA": 5.1781,
"WHIP": 1.3562,
"ER_per_IP": 0.57534,
"H_per_IP": 0.94521,
"BB_per_IP": 0.41096,
"SO_per_IP": 1.52055,
"HR_per_IP": 0.16438
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.567,
"predicted_H": 0.984,
"predicted_BB": 0.423,
"predicted_SO": 1.083,
"predicted_HR": 0.154,
"predicted_ERA": 5.1012,
"predicted_WHIP": 1.4071
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5654,
"form_weight": 0.4346,
"form_reliability": 0.4902,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.807,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4902,
"prior_weight": 0.5098
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.567,
"final": 0.2464,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.984,
"final": 0.4277,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.423,
"final": 0.1838,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.083,
"final": 0.4707,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.154,
"final": 0.0669,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.1012,
"final": 5.1012,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4071,
"final": 1.4071,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Eduard Bazardo |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.2056 |
| ESPN Rank | 166 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 3 |
| Pre SO | 2 |
| Season ERA | 2.3478 |
| Season WHIP | 1.3696 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"opponent": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"edges": {
"quality_edge": 0.1705,
"offense_edge": -0.0113,
"opponent_offense_edge": 0.0192,
"defense_strength": 0.1302,
"opponent_defense_weakness": 0.0659,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9815,
"strikeout": 1.0036
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "660825",
"profile": {
"available": true,
"pitcher_id": "660825",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 95.0,
"k_percent": 20.2,
"bb_percent": 8.5,
"woba": 0.322,
"xwoba": 0.336,
"sweet_spot_percent": 38.5,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 41.8,
"avg_best_speed": 81.5801,
"avg_hyper_speed": 94.7199,
"whiff_percent": 21.0,
"swing_percent": 43.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.5745,
"command_and_miss": -0.3657,
"regression_edge": -0.4,
"xwoba_edge": -0.6,
"barrel_edge": -0.3333,
"hard_hit_edge": -0.4857,
"whiff_edge": -0.6571,
"bb_edge": 0.125,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "660825",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.2056,
"sample_weight": 0.45,
"run_prevention_factor": 1.0175,
"strikeout_factor": 0.9817,
"walk_factor": 0.9955,
"homer_factor": 1.0288,
"woba_minus_xwoba": -0.014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "660825",
"espn_id": 41939,
"player_name": "Eduard Bazardo",
"team": "SEA",
"role": "pitcher",
"espn_rank": 166,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 166,
"gp_value": 32.0,
"gp_rank": 8,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.3478,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 12.0,
"hld_rank": 8,
"ip_value": 30.2,
"ip_rank": 207,
"h_value": 31.0,
"h_rank": 175,
"er_value": 8.0,
"er_rank": 367,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 26.0,
"k_rank": 264,
"k_per_9_value": 7.6304345,
"k_per_9_rank": 34,
"whip_value": 1.3695,
"whip_rank": null,
"war_value": 0.57,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0079,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0079,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.998,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.013,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9918,
"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": 3,
"H": 13,
"BB": 4,
"SO": 9,
"HR": 1,
"ERA": 2.612903225806452,
"WHIP": 1.6451612903225807,
"K9": 7.838709677419356,
"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-08T00:00:00"
}{
"available": false,
"pitcher_id": "660825",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.058,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5478,
"prior_weight": 0.4522
},
"role": "pitcher",
"player_id": "660825",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 2.0,
"R": 2.0,
"H": 6.0,
"BB": 1.0,
"SO": 3.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 66.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.2,
"BB": 0.2,
"SO": 0.6,
"HR": 0.0,
"BF": 4.0,
"Pitches": 13.2
},
"rates": {
"ERA": 3.375,
"WHIP": 1.3125,
"ER_per_IP": 0.375,
"H_per_IP": 1.125,
"BB_per_IP": 0.1875,
"SO_per_IP": 0.5625,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 3.0,
"R": 4.0,
"H": 13.0,
"BB": 4.0,
"SO": 9.0,
"HR": 1.0,
"BF": 45.0,
"Pitches": 177.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.4,
"H": 1.3,
"BB": 0.4,
"SO": 0.9,
"HR": 0.1,
"BF": 4.5,
"Pitches": 17.7
},
"rates": {
"ERA": 2.6129,
"WHIP": 1.6452,
"ER_per_IP": 0.29032,
"H_per_IP": 1.25806,
"BB_per_IP": 0.3871,
"SO_per_IP": 0.87097,
"HR_per_IP": 0.09677
}
},
"season": {
"games": 32,
"totals": {
"IP": 30.2,
"ER": 8.0,
"R": 10.0,
"H": 31.0,
"BB": 11.0,
"SO": 26.0,
"HR": 2.0,
"BF": 129.0,
"Pitches": 501.0
},
"per_game": {
"IP": 1.0,
"ER": 0.25,
"R": 0.3125,
"H": 0.9688,
"BB": 0.3438,
"SO": 0.8125,
"HR": 0.0625,
"BF": 4.0312,
"Pitches": 15.6562
},
"rates": {
"ERA": 2.3478,
"WHIP": 1.3696,
"ER_per_IP": 0.26087,
"H_per_IP": 1.01087,
"BB_per_IP": 0.3587,
"SO_per_IP": 0.84783,
"HR_per_IP": 0.06522
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.396,
"predicted_H": 1.063,
"predicted_BB": 0.325,
"predicted_SO": 0.822,
"predicted_HR": 0.089,
"predicted_ERA": 3.5683,
"predicted_WHIP": 1.3881
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5411,
"form_weight": 0.4589,
"form_reliability": 0.5478,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.058,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5478,
"prior_weight": 0.4522
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.396,
"final": 0.7228,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.063,
"final": 1.0289,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 0.325,
"final": 1.7723,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.822,
"final": 1.4594,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.089,
"final": 0.0408,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5683,
"final": 3.5683,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3881,
"final": 1.3881,
"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.2588 |
| ESPN Rank | 123 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 2.1000 |
| Season WHIP | 1.3000 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"opponent": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"edges": {
"quality_edge": 0.1705,
"offense_edge": -0.0113,
"opponent_offense_edge": 0.0192,
"defense_strength": 0.1302,
"opponent_defense_weakness": 0.0659,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.01,
"run_prevention": 0.9815,
"strikeout": 1.0036
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "678606",
"profile": {
"available": true,
"pitcher_id": "678606",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 102.0,
"k_percent": 19.7,
"bb_percent": 5.3,
"woba": 0.315,
"xwoba": 0.267,
"sweet_spot_percent": 27.1,
"barrel_batted_rate": 4.2,
"hard_hit_percent": 35.4,
"avg_best_speed": 73.1597,
"avg_hyper_speed": 93.1005,
"whiff_percent": 21.7,
"swing_percent": 52.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.8765,
"command_and_miss": -0.2029,
"regression_edge": 1.3714,
"xwoba_edge": 1.3714,
"barrel_edge": 0.6889,
"hard_hit_edge": 0.4286,
"whiff_edge": -0.5571,
"bb_edge": 0.925,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "678606",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2588,
"sample_weight": 0.45,
"run_prevention_factor": 0.978,
"strikeout_factor": 0.9823,
"walk_factor": 0.9667,
"homer_factor": 0.949,
"woba_minus_xwoba": 0.048,
"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": 123,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 123,
"gp_value": 33.0,
"gp_rank": 5,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.1,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 3.0,
"sv_rank": 43,
"hld_value": 8.0,
"hld_rank": 33,
"ip_value": 30.0,
"ip_rank": 214,
"h_value": 33.0,
"h_rank": 169,
"er_value": 7.0,
"er_rank": 403,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 7.0,
"bb_rank": 371,
"k_value": 26.0,
"k_rank": 264,
"k_per_9_value": 7.8,
"k_per_9_rank": 33,
"whip_value": 1.3333,
"whip_rank": null,
"war_value": 0.78,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9901,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9901,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.985,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.977,
"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": 7.2,
"ER": 3,
"H": 7,
"BB": 4,
"SO": 8,
"HR": 2,
"ERA": 3.5217391304347827,
"WHIP": 1.4347826086956523,
"K9": 9.391304347826088,
"HR9": 2.347826086956522,
"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-09T00:00:00"
}{
"available": false,
"pitcher_id": "678606",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.926,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5424,
"prior_weight": 0.4576
},
"role": "pitcher",
"player_id": "678606",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 32,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 4.0,
"SO": 4.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 101.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.8,
"SO": 0.8,
"HR": 0.2,
"BF": 4.2,
"Pitches": 20.2
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.8462,
"ER_per_IP": 0.46154,
"H_per_IP": 0.92308,
"BB_per_IP": 0.92308,
"SO_per_IP": 0.92308,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.2,
"ER": 3.0,
"R": 3.0,
"H": 7.0,
"BB": 4.0,
"SO": 8.0,
"HR": 2.0,
"BF": 34.0,
"Pitches": 154.0
},
"per_game": {
"IP": 0.2,
"ER": 0.3,
"R": 0.3,
"H": 0.7,
"BB": 0.4,
"SO": 0.8,
"HR": 0.2,
"BF": 3.4,
"Pitches": 15.4
},
"rates": {
"ERA": 3.5217,
"WHIP": 1.4348,
"ER_per_IP": 0.3913,
"H_per_IP": 0.91304,
"BB_per_IP": 0.52174,
"SO_per_IP": 1.04348,
"HR_per_IP": 0.26087
}
},
"season": {
"games": 32,
"totals": {
"IP": 30.0,
"ER": 7.0,
"R": 8.0,
"H": 32.0,
"BB": 7.0,
"SO": 26.0,
"HR": 2.0,
"BF": 131.0,
"Pitches": 494.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2188,
"R": 0.25,
"H": 1.0,
"BB": 0.2188,
"SO": 0.8125,
"HR": 0.0625,
"BF": 4.0938,
"Pitches": 15.4375
},
"rates": {
"ERA": 2.1,
"WHIP": 1.3,
"ER_per_IP": 0.23333,
"H_per_IP": 1.06667,
"BB_per_IP": 0.23333,
"SO_per_IP": 0.86667,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.407,
"predicted_H": 0.893,
"predicted_BB": 0.484,
"predicted_SO": 0.886,
"predicted_HR": 0.166,
"predicted_ERA": 3.9119,
"predicted_WHIP": 1.4703
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5433,
"form_weight": 0.4567,
"form_reliability": 0.5424,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.926,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5424,
"prior_weight": 0.4576
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.407,
"final": 0.1859,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.893,
"final": 0.4078,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.484,
"final": 0.221,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.886,
"final": 0.9479,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.166,
"final": 0.0758,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.9119,
"final": 3.9119,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4703,
"final": 1.4703,
"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.185 | 0.000 | 0.000 | Hitting_2B | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.580 | 4.000 | 7.000 | Hitting_AB | 4.093 | 4.000 | -0.093 | 0.000 |
| predicted_AVG | 0.220 | 0.250 | 0.286 | Hitting_AVG | 0.256 | 0.000 | -0.006 | 0.250 |
| predicted_BB | 0.320 | 1.000 | 1.000 | Hitting_BB | 0.320 | 0.000 | 0.680 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.035 | 0.000 | -0.035 | 0.000 |
| predicted_H | 1.010 | 1.000 | 2.000 | Hitting_H | 1.046 | 0.000 | -0.046 | 1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.189 | 0.000 | -0.189 | 0.000 |
| predicted_OBP | 0.286 | 0.400 | 0.375 | Hitting_OBP | 0.314 | 0.000 | 0.086 | 0.400 |
| predicted_R | 0.556 | 0.000 | 1.000 | Hitting_R | 0.556 | 0.000 | -0.556 | 0.000 |
| predicted_RBI | 0.460 | 0.000 | 1.000 | Hitting_RBI | 0.517 | 1.000 | -0.517 | -1.000 |
| predicted_SLG | 0.380 | 0.250 | 0.286 | Hitting_SLG | 0.440 | 0.000 | -0.190 | 0.250 |
| predicted_SO | 0.923 | 0.000 | 2.000 | Hitting_SO | 0.923 | 1.000 | -0.923 | -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_BB: 0.3200 -> 1.0000 (boost 0.6800, better) |
| Biggest Deboost | predicted_SO: 0.9230 -> 0.0000 (deboost -0.9230, 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.5800 -> 7.2881 (boost 2.7081, better) | predicted_SLG: 0.3800 -> 0.3635 (deboost -0.0165, 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.3635 -> 0.3529 (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 | 8 | 4 | 4 | 3 | 5 | predicted_SO: 1.5811 -> 2.0000 (boost 0.4189, worse) | predicted_AB: 7.2881 -> 7.0000 (deboost -0.2881, worse) | AB rounded to 7 (raw=7.29), rates preserved: AVG=0.218 HR/AB=0.033 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.0826 -> 1.0000 (deboost -0.0826, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2763 -> 0.3750 (boost 0.0987, better) | predicted_SLG: 0.3529 -> 0.2860 (deboost -0.0669, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3529 (boost 0.0669, better) | predicted_OBP: 0.3750 -> 0.2763 (deboost -0.0987, 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.185,
"predicted_3B": 0.0,
"predicted_AB": 4.58,
"predicted_AVG": 0.22,
"predicted_BB": 0.32,
"predicted_H": 1.01,
"predicted_HR": 0.15,
"predicted_OBP": 0.286,
"predicted_R": 0.556,
"predicted_RBI": 0.46,
"predicted_SLG": 0.38,
"predicted_SO": 0.923
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2567,
"predicted_3B": 0.0004,
"predicted_AB": 7.2881,
"predicted_AVG": 0.2166,
"predicted_BB": 0.5824,
"predicted_H": 1.5681,
"predicted_HBP": 0.05,
"predicted_HR": 0.2381,
"predicted_OBP": 0.2818,
"predicted_R": 1.0565,
"predicted_RBI": 0.734,
"predicted_SLG": 0.3635,
"predicted_SO": 1.5886
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.185,
"after": 0.2567,
"delta": 0.0717,
"percent_delta": 0.3876,
"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.58,
"after": 7.2881,
"delta": 2.7081,
"percent_delta": 0.5913,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2166,
"delta": -0.0034,
"percent_delta": -0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.32,
"after": 0.5824,
"delta": 0.2624,
"percent_delta": 0.82,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.5681,
"delta": 0.5581,
"percent_delta": 0.5526,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2381,
"delta": 0.0881,
"percent_delta": 0.5873,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2818,
"delta": -0.0042,
"percent_delta": -0.0147,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 1.0565,
"delta": 0.5005,
"percent_delta": 0.9002,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.734,
"delta": 0.274,
"percent_delta": 0.5957,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3635,
"delta": -0.0165,
"percent_delta": -0.0434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.923,
"after": 1.5886,
"delta": 0.6656,
"percent_delta": 0.7211,
"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.58,
"after": 7.2881,
"delta": 2.7081,
"percent_delta": 0.5913,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3635,
"delta": -0.0165,
"percent_delta": -0.0434,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2567,
"predicted_3B": 0.0004,
"predicted_AB": 7.2881,
"predicted_AVG": 0.2182,
"predicted_BB": 0.5851,
"predicted_H": 1.5901,
"predicted_HBP": 0.05,
"predicted_HR": 0.2414,
"predicted_OBP": 0.2763,
"predicted_R": 1.0826,
"predicted_RBI": 0.7521,
"predicted_SLG": 0.3529,
"predicted_SO": 1.5811
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2567,
"after": 0.2567,
"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.2881,
"after": 7.2881,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2166,
"after": 0.2182,
"delta": 0.0016,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5824,
"after": 0.5851,
"delta": 0.0027,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5681,
"after": 1.5901,
"delta": 0.022,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.05,
"after": 0.05,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2381,
"after": 0.2414,
"delta": 0.0033,
"percent_delta": 0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2818,
"after": 0.2763,
"delta": -0.0055,
"percent_delta": -0.0195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0565,
"after": 1.0826,
"delta": 0.0261,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.734,
"after": 0.7521,
"delta": 0.0181,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3635,
"after": 0.3529,
"delta": -0.0106,
"percent_delta": -0.0292,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5886,
"after": 1.5811,
"delta": -0.0075,
"percent_delta": -0.0047,
"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.3635,
"after": 0.3529,
"delta": -0.0106,
"percent_delta": -0.0292,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.29), rates preserved: AVG=0.218 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.2567,
"after": 0.0,
"delta": -0.2567,
"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.2881,
"after": 7.0,
"delta": -0.2881,
"percent_delta": -0.0395,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5851,
"after": 1.0,
"delta": 0.4149,
"percent_delta": 0.7091,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5901,
"after": 2.0,
"delta": 0.4099,
"percent_delta": 0.2578,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.05,
"after": 0.0,
"delta": -0.05,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2414,
"after": 0.0,
"delta": -0.2414,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7521,
"after": 1.0,
"delta": 0.2479,
"percent_delta": 0.3296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5811,
"after": 2.0,
"delta": 0.4189,
"percent_delta": 0.2649,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.5811,
"after": 2.0,
"delta": 0.4189,
"percent_delta": 0.2649,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 7.2881,
"after": 7.0,
"delta": -0.2881,
"percent_delta": -0.0395,
"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.250)",
"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.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": 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.0826,
"after": 1.0,
"delta": -0.0826,
"percent_delta": -0.0763,
"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.0826,
"after": 1.0,
"delta": -0.0826,
"percent_delta": -0.0763,
"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.2182,
"after": 0.286,
"delta": 0.0678,
"percent_delta": 0.3107,
"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.2763,
"after": 0.375,
"delta": 0.0987,
"percent_delta": 0.3572,
"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.3529,
"after": 0.286,
"delta": -0.0669,
"percent_delta": -0.1896,
"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.2763,
"after": 0.375,
"delta": 0.0987,
"percent_delta": 0.3572,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3529,
"after": 0.286,
"delta": -0.0669,
"percent_delta": -0.1896,
"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": 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": 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": 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": 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.2182,
"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.2763,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3529,
"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.2182,
"delta": -0.0678,
"percent_delta": -0.2372,
"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.2763,
"delta": -0.0987,
"percent_delta": -0.2633,
"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.3529,
"delta": 0.0669,
"percent_delta": 0.2338,
"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.3529,
"delta": 0.0669,
"percent_delta": 0.2338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.2763,
"delta": -0.0987,
"percent_delta": -0.2633,
"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.185,
"after": 0.0,
"delta": -0.185,
"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": 4.0,
"delta": -0.58,
"percent_delta": -0.1266,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.22,
"after": 0.2182,
"delta": -0.0018,
"percent_delta": -0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.01,
"after": 1.0,
"delta": -0.01,
"percent_delta": -0.0099,
"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.286,
"after": 0.2763,
"delta": -0.0097,
"percent_delta": -0.0339,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.556,
"after": 0.0,
"delta": -0.556,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.46,
"after": 0.0,
"delta": -0.46,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3529,
"delta": -0.0271,
"percent_delta": -0.0713,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.923,
"after": 0.0,
"delta": -0.923,
"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_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_SO",
"before": 0.923,
"after": 0.0,
"delta": -0.923,
"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.185 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.580 | - |
| predicted_AVG | 0.220 | - |
| predicted_BB | 0.320 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.286 | - |
| predicted_R | 0.556 | - |
| predicted_RBI | 0.460 | - |
| predicted_SLG | 0.380 | - |
| predicted_SO | 0.923 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.257 | 0.072 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.288 | 2.708 |
| predicted_AVG | 0.217 | -0.003 |
| predicted_BB | 0.582 | 0.262 |
| predicted_H | 1.568 | 0.558 |
| predicted_HBP | 0.050 | - |
| predicted_HR | 0.238 | 0.088 |
| predicted_OBP | 0.282 | -0.004 |
| predicted_R | 1.056 | 0.500 |
| predicted_RBI | 0.734 | 0.274 |
| predicted_SLG | 0.363 | -0.017 |
| predicted_SO | 1.589 | 0.666 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.257 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.288 | 0.000 |
| predicted_AVG | 0.218 | 0.002 |
| predicted_BB | 0.585 | 0.003 |
| predicted_H | 1.590 | 0.022 |
| predicted_HBP | 0.050 | 0.000 |
| predicted_HR | 0.241 | 0.003 |
| predicted_OBP | 0.276 | -0.006 |
| predicted_R | 1.083 | 0.026 |
| predicted_RBI | 0.752 | 0.018 |
| predicted_SLG | 0.353 | -0.011 |
| predicted_SO | 1.581 | -0.008 |
AB rounded to 7 (raw=7.29), rates preserved: AVG=0.218 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 | - |
Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.250)
| 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.257 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.288 |
| predicted_AVG | 0.286 | 0.068 |
| predicted_BB | 1.000 | 0.415 |
| predicted_H | 2.000 | 0.410 |
| predicted_HR | 0.000 | -0.241 |
| predicted_OBP | 0.375 | 0.099 |
| predicted_R | 1.000 | -0.083 |
| predicted_RBI | 1.000 | 0.248 |
| predicted_SLG | 0.286 | -0.067 |
| predicted_SO | 2.000 | 0.419 |
Attached 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 | 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 | 0.000 | 0.000 | 1.000 | 5.000 | 2.000 | 4.000 | 0.1429 | 0.2174 | 0.1429 | 0.1429 | 0.0000 | 0.0476 | 0.0952 | 0.1905 |
| last_10 | 0.20 | 10 | - | 41.000 | 6.000 | 1.000 | 0.000 | 1.000 | 3.000 | 6.000 | 4.000 | 11.000 | 0.1463 | 0.2174 | 0.2439 | 0.1463 | 0.0244 | 0.0732 | 0.0976 | 0.2683 |
| season | 0.60 | 69 | - | 1060.000 | 271.000 | 48.000 | 0.000 | 49.000 | 134.000 | 144.000 | 83.000 | 239.000 | 0.2557 | 0.3142 | 0.4396 | 0.2557 | 0.0462 | 0.1264 | 0.0783 | 0.2255 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3470 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.6990 |
| predicted_AVG | 0.2123 |
| predicted_BB | 0.9130 |
| predicted_H | 2.2710 |
| predicted_HBP | 0.0500 |
| predicted_HR | 0.3490 |
| predicted_OBP | 0.2764 |
| predicted_R | 1.6870 |
| predicted_RBI | 1.0790 |
| predicted_SLG | 0.3428 |
| predicted_SO | 2.4270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1850 | 0.3470 | 0.2567 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.5800 | 10.6990 | 7.2881 | model_form_blend |
| predicted_AVG | 0.2200 | 0.2123 | 0.2166 | model_form_blend |
| predicted_BB | 0.3200 | 0.9130 | 0.5824 | model_form_blend |
| predicted_H | 1.0100 | 2.2710 | 1.5681 | model_form_blend |
| predicted_HBP | - | 0.0500 | 0.0500 | form_only |
| predicted_HR | 0.1500 | 0.3490 | 0.2381 | model_form_blend |
| predicted_OBP | 0.2860 | 0.2764 | 0.2818 | model_form_blend |
| predicted_R | 0.5560 | 1.6870 | 1.0565 | model_form_blend |
| predicted_RBI | 0.4600 | 1.0790 | 0.7340 | model_form_blend |
| predicted_SLG | 0.3800 | 0.3428 | 0.3635 | model_form_blend |
| predicted_SO | 0.9230 | 2.4270 | 1.5886 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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.256 |
| 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 | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| 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 | CF |
| gameID | 20260610_SEA@BAL |
| 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-10 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.328 |
| sl_xwoba | 0.34 |
| sl_xba | 0.263 |
| sl_xslg | 0.468 |
| sl_sweet_spot_percent | 29.6 |
| sl_barrel_batted_rate | 9.3 |
| sl_hard_hit_percent | 44.4 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 13.1 |
| sl_whiff_percent | 27.3 |
| 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.165 | 1.000 | 0.000 | Hitting_2B | 0.165 | 0.000 | 0.835 | 1.000 |
| predicted_3B | 0.017 | 0.000 | 0.000 | Hitting_3B | 0.017 | 0.000 | -0.017 | 0.000 |
| predicted_AB | 4.140 | 4.000 | 6.000 | Hitting_AB | 3.559 | 4.000 | 0.441 | 0.000 |
| predicted_AVG | 0.238 | 0.500 | 0.167 | Hitting_AVG | 0.244 | 0.250 | 0.256 | 0.250 |
| predicted_BB | 0.339 | 1.000 | 0.000 | Hitting_BB | 0.339 | 0.000 | 0.661 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_H | 0.990 | 2.000 | 1.000 | Hitting_H | 0.869 | 1.000 | 1.131 | 1.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.059 | 0.000 | -0.059 | 0.000 |
| predicted_OBP | 0.305 | 0.600 | 0.167 | Hitting_OBP | 0.321 | 0.250 | 0.279 | 0.350 |
| predicted_R | 0.479 | 1.000 | 1.000 | Hitting_R | 0.479 | 0.000 | 0.521 | 1.000 |
| predicted_RBI | 0.430 | 0.000 | 1.000 | Hitting_RBI | 0.470 | 0.000 | -0.470 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_SLG | 0.361 | 0.750 | 0.167 | Hitting_SLG | 0.350 | 0.250 | 0.400 | 0.500 |
| predicted_SO | 0.839 | 0.000 | 1.000 | Hitting_SO | 0.839 | 0.000 | -0.839 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 5 |
| Deboosted Metrics | 6 |
| Better Metrics | 6 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_H: 0.9900 -> 2.0000 (boost 1.0100, better) |
| Biggest Deboost | predicted_SO: 0.8390 -> 0.0000 (deboost -0.8390, 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: 4.1400 -> 6.2159 (boost 2.0759, better) | predicted_SLG: 0.3610 -> 0.3457 (deboost -0.0153, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2414 -> 0.2467 (boost 0.0053, better) | predicted_OBP: 0.3051 -> 0.2960 (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 | 8 | 1 | 7 | 2 | 6 | predicted_RBI: 0.6616 -> 1.0000 (boost 0.3384, better) | predicted_H: 1.5334 -> 1.0000 (deboost -0.5334, worse) | AB rounded to 6 (raw=6.22), rates preserved: AVG=0.247 HR/AB=0.018 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6951 -> 1.0000 (boost 0.3049, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3403 -> 0.1670 (deboost -0.1733, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 6 | 3 | 3 | 4 | 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.3403 (boost 0.1733, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "702284",
"player_name": "Cole Young",
"position": "2B",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.165,
"predicted_3B": 0.017,
"predicted_AB": 4.14,
"predicted_AVG": 0.238,
"predicted_BB": 0.339,
"predicted_H": 0.99,
"predicted_HR": 0.09,
"predicted_OBP": 0.305,
"predicted_R": 0.479,
"predicted_RBI": 0.43,
"predicted_SLG": 0.361,
"predicted_SO": 0.839
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2034,
"predicted_3B": 0.021,
"predicted_AB": 6.2159,
"predicted_AVG": 0.2414,
"predicted_BB": 0.4334,
"predicted_H": 1.5122,
"predicted_HBP": 0.239,
"predicted_HR": 0.1107,
"predicted_OBP": 0.3051,
"predicted_R": 0.6783,
"predicted_RBI": 0.6457,
"predicted_SLG": 0.3457,
"predicted_SO": 1.1729
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.165,
"after": 0.2034,
"delta": 0.0384,
"percent_delta": 0.2327,
"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.14,
"after": 6.2159,
"delta": 2.0759,
"percent_delta": 0.5014,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2414,
"delta": 0.0034,
"percent_delta": 0.0143,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.339,
"after": 0.4334,
"delta": 0.0944,
"percent_delta": 0.2785,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.5122,
"delta": 0.5222,
"percent_delta": 0.5275,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.1107,
"delta": 0.0207,
"percent_delta": 0.23,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.305,
"after": 0.3051,
"delta": 0.0001,
"percent_delta": 0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.479,
"after": 0.6783,
"delta": 0.1993,
"percent_delta": 0.4161,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.43,
"after": 0.6457,
"delta": 0.2157,
"percent_delta": 0.5016,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.3457,
"delta": -0.0153,
"percent_delta": -0.0424,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.839,
"after": 1.1729,
"delta": 0.3339,
"percent_delta": 0.398,
"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": 4.14,
"after": 6.2159,
"delta": 2.0759,
"percent_delta": 0.5014,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.361,
"after": 0.3457,
"delta": -0.0153,
"percent_delta": -0.0424,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2034,
"predicted_3B": 0.021,
"predicted_AB": 6.2159,
"predicted_AVG": 0.2467,
"predicted_BB": 0.4354,
"predicted_H": 1.5334,
"predicted_HBP": 0.239,
"predicted_HR": 0.1122,
"predicted_OBP": 0.296,
"predicted_R": 0.6951,
"predicted_RBI": 0.6616,
"predicted_SLG": 0.3403,
"predicted_SO": 1.1674
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2034,
"after": 0.2034,
"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.2159,
"after": 6.2159,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2414,
"after": 0.2467,
"delta": 0.0053,
"percent_delta": 0.022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4334,
"after": 0.4354,
"delta": 0.002,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5122,
"after": 1.5334,
"delta": 0.0212,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.239,
"after": 0.239,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1107,
"after": 0.1122,
"delta": 0.0015,
"percent_delta": 0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3051,
"after": 0.296,
"delta": -0.0091,
"percent_delta": -0.0298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6783,
"after": 0.6951,
"delta": 0.0168,
"percent_delta": 0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6457,
"after": 0.6616,
"delta": 0.0159,
"percent_delta": 0.0246,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3457,
"after": 0.3403,
"delta": -0.0054,
"percent_delta": -0.0156,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1729,
"after": 1.1674,
"delta": -0.0055,
"percent_delta": -0.0047,
"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.2414,
"after": 0.2467,
"delta": 0.0053,
"percent_delta": 0.022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3051,
"after": 0.296,
"delta": -0.0091,
"percent_delta": -0.0298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.22), rates preserved: AVG=0.247 HR/AB=0.018",
"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.2034,
"after": 0.0,
"delta": -0.2034,
"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.2159,
"after": 6.0,
"delta": -0.2159,
"percent_delta": -0.0347,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4354,
"after": 0.0,
"delta": -0.4354,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5334,
"after": 1.0,
"delta": -0.5334,
"percent_delta": -0.3479,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.239,
"after": 0.0,
"delta": -0.239,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1122,
"after": 0.0,
"delta": -0.1122,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6616,
"after": 1.0,
"delta": 0.3384,
"percent_delta": 0.5115,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1674,
"after": 1.0,
"delta": -0.1674,
"percent_delta": -0.1434,
"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.6616,
"after": 1.0,
"delta": 0.3384,
"percent_delta": 0.5115,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.5334,
"after": 1.0,
"delta": -0.5334,
"percent_delta": -0.3479,
"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.6951,
"after": 1.0,
"delta": 0.3049,
"percent_delta": 0.4386,
"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.6951,
"after": 1.0,
"delta": 0.3049,
"percent_delta": 0.4386,
"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.2467,
"after": 0.167,
"delta": -0.0797,
"percent_delta": -0.3231,
"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.296,
"after": 0.167,
"delta": -0.129,
"percent_delta": -0.4358,
"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.3403,
"after": 0.167,
"delta": -0.1733,
"percent_delta": -0.5093,
"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.3403,
"after": 0.167,
"delta": -0.1733,
"percent_delta": -0.5093,
"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": 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": 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": 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": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 4,
"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.2467,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.296,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3403,
"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.167,
"after": 0.2467,
"delta": 0.0797,
"percent_delta": 0.4772,
"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": 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.296,
"delta": 0.129,
"percent_delta": 0.7725,
"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.3403,
"delta": 0.1733,
"percent_delta": 1.0379,
"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.3403,
"delta": 0.1733,
"percent_delta": 1.0379,
"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": 1.0,
"delta": 0.835,
"percent_delta": 5.0606,
"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": 4.14,
"after": 4.0,
"delta": -0.14,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.238,
"after": 0.2467,
"delta": 0.0087,
"percent_delta": 0.0366,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.339,
"after": 1.0,
"delta": 0.661,
"percent_delta": 1.9499,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 2.0,
"delta": 1.01,
"percent_delta": 1.0202,
"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.305,
"after": 0.296,
"delta": -0.009,
"percent_delta": -0.0295,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.479,
"after": 1.0,
"delta": 0.521,
"percent_delta": 1.0877,
"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.361,
"after": 0.3403,
"delta": -0.0207,
"percent_delta": -0.0573,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.839,
"after": 0.0,
"delta": -0.839,
"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.99,
"after": 2.0,
"delta": 1.01,
"percent_delta": 1.0202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.839,
"after": 0.0,
"delta": -0.839,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "better"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.165 | - |
| predicted_3B | 0.017 | - |
| predicted_AB | 4.140 | - |
| predicted_AVG | 0.238 | - |
| predicted_BB | 0.339 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.305 | - |
| predicted_R | 0.479 | - |
| predicted_RBI | 0.430 | - |
| predicted_SLG | 0.361 | - |
| predicted_SO | 0.839 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.203 | 0.038 |
| predicted_3B | 0.021 | 0.004 |
| predicted_AB | 6.216 | 2.076 |
| predicted_AVG | 0.241 | 0.003 |
| predicted_BB | 0.433 | 0.094 |
| predicted_H | 1.512 | 0.522 |
| predicted_HBP | 0.239 | - |
| predicted_HR | 0.111 | 0.021 |
| predicted_OBP | 0.305 | 0.000 |
| predicted_R | 0.678 | 0.199 |
| predicted_RBI | 0.646 | 0.216 |
| predicted_SLG | 0.346 | -0.015 |
| predicted_SO | 1.173 | 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.203 | 0.000 |
| predicted_3B | 0.021 | 0.000 |
| predicted_AB | 6.216 | 0.000 |
| predicted_AVG | 0.247 | 0.005 |
| predicted_BB | 0.435 | 0.002 |
| predicted_H | 1.533 | 0.021 |
| predicted_HBP | 0.239 | 0.000 |
| predicted_HR | 0.112 | 0.001 |
| predicted_OBP | 0.296 | -0.009 |
| predicted_R | 0.695 | 0.017 |
| predicted_RBI | 0.662 | 0.016 |
| predicted_SLG | 0.340 | -0.005 |
| predicted_SO | 1.167 | -0.006 |
AB rounded to 6 (raw=6.22), rates preserved: AVG=0.247 HR/AB=0.018
| 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.203 |
| predicted_3B | 0.000 | -0.021 |
| predicted_AB | 6.000 | -0.216 |
| predicted_AVG | 0.167 | -0.080 |
| predicted_BB | 0.000 | -0.435 |
| predicted_H | 1.000 | -0.533 |
| predicted_HR | 0.000 | -0.112 |
| predicted_OBP | 0.167 | -0.129 |
| predicted_R | 1.000 | 0.305 |
| predicted_RBI | 1.000 | 0.338 |
| predicted_SLG | 0.167 | -0.173 |
| predicted_SO | 1.000 | -0.167 |
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 | 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 | 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 | - | 22.000 | 5.000 | 0.000 | 0.000 | 0.000 | 1.000 | 1.000 | 0.000 | 2.000 | 0.2273 | 0.2609 | 0.2273 | 0.2273 | 0.0000 | 0.0454 | 0.0000 | 0.0909 |
| last_10 | 0.20 | 10 | - | 41.000 | 11.000 | 0.000 | 0.000 | 1.000 | 3.000 | 3.000 | 1.000 | 4.000 | 0.2683 | 0.3023 | 0.3415 | 0.2683 | 0.0244 | 0.0732 | 0.0244 | 0.0976 |
| season | 0.60 | 69 | - | 840.000 | 205.000 | 39.000 | 4.000 | 14.000 | 111.000 | 113.000 | 80.000 | 198.000 | 0.2440 | 0.3207 | 0.3500 | 0.2440 | 0.0167 | 0.1321 | 0.0952 | 0.2357 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2520 |
| predicted_3B | 0.0260 |
| predicted_AB | 8.8470 |
| predicted_AVG | 0.2457 |
| predicted_BB | 0.5530 |
| predicted_H | 2.1740 |
| predicted_HBP | 0.2390 |
| predicted_HR | 0.1370 |
| predicted_OBP | 0.3053 |
| predicted_R | 0.9310 |
| predicted_RBI | 0.9190 |
| predicted_SLG | 0.3264 |
| predicted_SO | 1.5960 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1650 | 0.2520 | 0.2034 | model_form_blend |
| predicted_3B | 0.0170 | 0.0260 | 0.0210 | model_form_blend |
| predicted_AB | 4.1400 | 8.8470 | 6.2159 | model_form_blend |
| predicted_AVG | 0.2380 | 0.2457 | 0.2414 | model_form_blend |
| predicted_BB | 0.3390 | 0.5530 | 0.4334 | model_form_blend |
| predicted_H | 0.9900 | 2.1740 | 1.5122 | model_form_blend |
| predicted_HBP | - | 0.2390 | 0.2390 | form_only |
| predicted_HR | 0.0900 | 0.1370 | 0.1107 | model_form_blend |
| predicted_OBP | 0.3050 | 0.3053 | 0.3051 | model_form_blend |
| predicted_R | 0.4790 | 0.9310 | 0.6783 | model_form_blend |
| predicted_RBI | 0.4300 | 0.9190 | 0.6457 | model_form_blend |
| predicted_SLG | 0.3610 | 0.3264 | 0.3457 | model_form_blend |
| predicted_SO | 0.8390 | 1.5960 | 1.1729 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| AB | 4 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.244 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 702284 |
| playerID | 702284 |
| playerName | Cole Young |
| pos | 2B |
| started | True |
| startingPosition | SS |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-10 |
| sl_k_percent | 19.2 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.299 |
| sl_xwoba | 0.328 |
| sl_xba | 0.27 |
| sl_xslg | 0.406 |
| sl_sweet_spot_percent | 37.1 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 37.1 |
| sl_exit_velocity_avg | 87.6 |
| sl_launch_angle_avg | 16.3 |
| sl_whiff_percent | 22.3 |
| sl_swing_percent | 47.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.100 | 0.000 | 0.000 | Hitting_2B | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.440 | 5.000 | 7.000 | Hitting_AB | 3.996 | 4.000 | 1.004 | 1.000 |
| predicted_AVG | 0.245 | 0.000 | 0.286 | Hitting_AVG | 0.268 | 0.250 | -0.268 | -0.250 |
| 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 | 0.000 | -0.046 | 0.000 |
| predicted_H | 1.090 | 0.000 | 2.000 | Hitting_H | 1.071 | 1.000 | -1.071 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_OBP | 0.327 | 0.000 | 0.375 | Hitting_OBP | 0.332 | 0.250 | -0.332 | -0.250 |
| predicted_R | 0.412 | 0.000 | 1.000 | Hitting_R | 0.412 | 0.000 | -0.412 | 0.000 |
| predicted_RBI | 0.630 | 0.000 | 1.000 | Hitting_RBI | 0.479 | 1.000 | -0.479 | -1.000 |
| predicted_SLG | 0.411 | 0.000 | 0.286 | Hitting_SLG | 0.368 | 0.250 | -0.368 | -0.250 |
| predicted_SO | 0.600 | 1.000 | 1.000 | Hitting_SO | 0.600 | 0.000 | 0.400 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 4.4400 -> 5.0000 (boost 0.5600, better) |
| Biggest Deboost | predicted_H: 1.0900 -> 0.0000 (deboost -1.0900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.4400 -> 7.0933 (boost 2.6533, 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.2612 -> 0.2728 (boost 0.0116, better) | predicted_SLG: 0.4151 -> 0.4054 (deboost -0.0097, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 2 | 5 | predicted_BB: 0.5521 -> 1.0000 (boost 0.4479, better) | predicted_HR: 0.2410 -> 0.0000 (deboost -0.2410, worse) | AB rounded to 7 (raw=7.09), rates preserved: AVG=0.273 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8506 -> 1.0000 (boost 0.1494, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3253 -> 0.3750 (boost 0.0497, better) | predicted_SLG: 0.4054 -> 0.2860 (deboost -0.1194, 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 | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.4054 (boost 0.1194, better) | predicted_OBP: 0.3750 -> 0.3253 (deboost -0.0497, 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.1,
"predicted_3B": 0.0,
"predicted_AB": 4.44,
"predicted_AVG": 0.245,
"predicted_BB": 0.367,
"predicted_H": 1.09,
"predicted_HR": 0.14,
"predicted_OBP": 0.327,
"predicted_R": 0.412,
"predicted_RBI": 0.63,
"predicted_SLG": 0.411,
"predicted_SO": 0.6
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2171,
"predicted_3B": 0.0004,
"predicted_AB": 7.0933,
"predicted_AVG": 0.2612,
"predicted_BB": 0.5495,
"predicted_H": 1.908,
"predicted_HBP": 0.188,
"predicted_HR": 0.2377,
"predicted_OBP": 0.3335,
"predicted_R": 0.8301,
"predicted_RBI": 1.1046,
"predicted_SLG": 0.4151,
"predicted_SO": 1.0079
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.2171,
"delta": 0.1171,
"percent_delta": 1.171,
"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.44,
"after": 7.0933,
"delta": 2.6533,
"percent_delta": 0.5976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2612,
"delta": 0.0162,
"percent_delta": 0.0661,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.367,
"after": 0.5495,
"delta": 0.1825,
"percent_delta": 0.4973,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.908,
"delta": 0.818,
"percent_delta": 0.7505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2377,
"delta": 0.0977,
"percent_delta": 0.6979,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.327,
"after": 0.3335,
"delta": 0.0065,
"percent_delta": 0.0199,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.412,
"after": 0.8301,
"delta": 0.4181,
"percent_delta": 1.0148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 1.1046,
"delta": 0.4746,
"percent_delta": 0.7533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.411,
"after": 0.4151,
"delta": 0.0041,
"percent_delta": 0.01,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.6,
"after": 1.0079,
"delta": 0.4079,
"percent_delta": 0.6798,
"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.44,
"after": 7.0933,
"delta": 2.6533,
"percent_delta": 0.5976,
"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.2171,
"predicted_3B": 0.0004,
"predicted_AB": 7.0933,
"predicted_AVG": 0.2728,
"predicted_BB": 0.5521,
"predicted_H": 1.9347,
"predicted_HBP": 0.188,
"predicted_HR": 0.241,
"predicted_OBP": 0.3253,
"predicted_R": 0.8506,
"predicted_RBI": 1.1319,
"predicted_SLG": 0.4054,
"predicted_SO": 1.0032
},
"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.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.0933,
"after": 7.0933,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2612,
"after": 0.2728,
"delta": 0.0116,
"percent_delta": 0.0444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5495,
"after": 0.5521,
"delta": 0.0026,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.908,
"after": 1.9347,
"delta": 0.0267,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.188,
"after": 0.188,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2377,
"after": 0.241,
"delta": 0.0033,
"percent_delta": 0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3335,
"after": 0.3253,
"delta": -0.0082,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8301,
"after": 0.8506,
"delta": 0.0205,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1046,
"after": 1.1319,
"delta": 0.0273,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4151,
"after": 0.4054,
"delta": -0.0097,
"percent_delta": -0.0234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0079,
"after": 1.0032,
"delta": -0.0047,
"percent_delta": -0.0047,
"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.2612,
"after": 0.2728,
"delta": 0.0116,
"percent_delta": 0.0444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4151,
"after": 0.4054,
"delta": -0.0097,
"percent_delta": -0.0234,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.09), rates preserved: AVG=0.273 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.2171,
"after": 0.0,
"delta": -0.2171,
"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.0933,
"after": 7.0,
"delta": -0.0933,
"percent_delta": -0.0132,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5521,
"after": 1.0,
"delta": 0.4479,
"percent_delta": 0.8113,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9347,
"after": 2.0,
"delta": 0.0653,
"percent_delta": 0.0338,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.241,
"after": 0.0,
"delta": -0.241,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1319,
"after": 1.0,
"delta": -0.1319,
"percent_delta": -0.1165,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0032,
"after": 1.0,
"delta": -0.0032,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 2,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5521,
"after": 1.0,
"delta": 0.4479,
"percent_delta": 0.8113,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.241,
"after": 0.0,
"delta": -0.241,
"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.8506,
"after": 1.0,
"delta": 0.1494,
"percent_delta": 0.1756,
"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.8506,
"after": 1.0,
"delta": 0.1494,
"percent_delta": 0.1756,
"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.2728,
"after": 0.286,
"delta": 0.0132,
"percent_delta": 0.0484,
"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.3253,
"after": 0.375,
"delta": 0.0497,
"percent_delta": 0.1528,
"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.4054,
"after": 0.286,
"delta": -0.1194,
"percent_delta": -0.2945,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3253,
"after": 0.375,
"delta": 0.0497,
"percent_delta": 0.1528,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4054,
"after": 0.286,
"delta": -0.1194,
"percent_delta": -0.2945,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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.2728,
"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.3253,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4054,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2728,
"delta": -0.0132,
"percent_delta": -0.0463,
"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.3253,
"delta": -0.0497,
"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.286,
"after": 0.4054,
"delta": 0.1194,
"percent_delta": 0.4174,
"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.4054,
"delta": 0.1194,
"percent_delta": 0.4174,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3253,
"delta": -0.0497,
"percent_delta": -0.1326,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1,
"after": 0.0,
"delta": -0.1,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.44,
"after": 5.0,
"delta": 0.56,
"percent_delta": 0.1261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2728,
"delta": 0.0278,
"percent_delta": 0.1135,
"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.09,
"after": 0.0,
"delta": -1.09,
"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.327,
"after": 0.3253,
"delta": -0.0017,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.412,
"after": 0.0,
"delta": -0.412,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.63,
"after": 0.0,
"delta": -0.63,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.411,
"after": 0.4054,
"delta": -0.0056,
"percent_delta": -0.0136,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.6,
"after": 1.0,
"delta": 0.4,
"percent_delta": 0.6667,
"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": 4.44,
"after": 5.0,
"delta": 0.56,
"percent_delta": 0.1261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.09,
"after": 0.0,
"delta": -1.09,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.440 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.367 | - |
| predicted_H | 1.090 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.327 | - |
| predicted_R | 0.412 | - |
| predicted_RBI | 0.630 | - |
| predicted_SLG | 0.411 | - |
| predicted_SO | 0.600 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.217 | 0.117 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.093 | 2.653 |
| predicted_AVG | 0.261 | 0.016 |
| predicted_BB | 0.549 | 0.182 |
| predicted_H | 1.908 | 0.818 |
| predicted_HBP | 0.188 | - |
| predicted_HR | 0.238 | 0.098 |
| predicted_OBP | 0.334 | 0.007 |
| predicted_R | 0.830 | 0.418 |
| predicted_RBI | 1.105 | 0.475 |
| predicted_SLG | 0.415 | 0.004 |
| predicted_SO | 1.008 | 0.408 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 7.093 | 0.000 |
| predicted_AVG | 0.273 | 0.012 |
| predicted_BB | 0.552 | 0.003 |
| predicted_H | 1.935 | 0.027 |
| predicted_HBP | 0.188 | 0.000 |
| predicted_HR | 0.241 | 0.003 |
| predicted_OBP | 0.325 | -0.008 |
| predicted_R | 0.851 | 0.021 |
| predicted_RBI | 1.132 | 0.027 |
| predicted_SLG | 0.405 | -0.010 |
| predicted_SO | 1.003 | -0.005 |
AB rounded to 7 (raw=7.09), rates preserved: AVG=0.273 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.217 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.093 |
| predicted_AVG | 0.286 | 0.013 |
| predicted_BB | 1.000 | 0.448 |
| predicted_H | 2.000 | 0.065 |
| predicted_HR | 0.000 | -0.241 |
| predicted_OBP | 0.375 | 0.050 |
| predicted_R | 1.000 | 0.149 |
| predicted_RBI | 1.000 | -0.132 |
| predicted_SLG | 0.286 | -0.119 |
| 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 | 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 | 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 | 7.000 | 1.000 | 0.000 | 1.000 | 6.000 | 4.000 | 1.000 | 3.000 | 0.3333 | 0.3913 | 0.5238 | 0.3333 | 0.0476 | 0.2857 | 0.0476 | 0.1429 |
| last_10 | 0.20 | 10 | - | 40.000 | 11.000 | 2.000 | 0.000 | 2.000 | 7.000 | 6.000 | 2.000 | 5.000 | 0.2750 | 0.3256 | 0.4750 | 0.2750 | 0.0500 | 0.1750 | 0.0500 | 0.1250 |
| season | 0.60 | 64 | - | 959.000 | 257.000 | 24.000 | 0.000 | 24.000 | 115.000 | 99.000 | 88.000 | 144.000 | 0.2680 | 0.3321 | 0.3681 | 0.2680 | 0.0250 | 0.1199 | 0.0918 | 0.1502 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3650 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.4440 |
| predicted_AVG | 0.2816 |
| predicted_BB | 0.7800 |
| predicted_H | 2.9410 |
| predicted_HBP | 0.1880 |
| predicted_HR | 0.3610 |
| predicted_OBP | 0.3418 |
| predicted_R | 1.3580 |
| predicted_RBI | 1.7040 |
| predicted_SLG | 0.4203 |
| predicted_SO | 1.5230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1000 | 0.3650 | 0.2171 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.4400 | 10.4440 | 7.0933 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2816 | 0.2612 | model_form_blend |
| predicted_BB | 0.3670 | 0.7800 | 0.5495 | model_form_blend |
| predicted_H | 1.0900 | 2.9410 | 1.9080 | model_form_blend |
| predicted_HBP | - | 0.1880 | 0.1880 | form_only |
| predicted_HR | 0.1400 | 0.3610 | 0.2377 | model_form_blend |
| predicted_OBP | 0.3270 | 0.3418 | 0.3335 | model_form_blend |
| predicted_R | 0.4120 | 1.3580 | 0.8301 | model_form_blend |
| predicted_RBI | 0.6300 | 1.7040 | 1.1046 | model_form_blend |
| predicted_SLG | 0.4110 | 0.4203 | 0.4151 | model_form_blend |
| predicted_SO | 0.6000 | 1.5230 | 1.0079 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 240 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.268 |
| 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 | 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 | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 647304 |
| playerID | 647304 |
| playerName | Josh Naylor |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-10 |
| sl_k_percent | 13.3 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.31 |
| sl_xwoba | 0.327 |
| sl_xba | 0.277 |
| sl_xslg | 0.408 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 37.8 |
| sl_exit_velocity_avg | 87.7 |
| sl_launch_angle_avg | 13.9 |
| sl_whiff_percent | 19.8 |
| sl_swing_percent | 53.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.283 | 1.000 | 0.000 | Hitting_2B | 0.283 | 0.000 | 0.717 | 1.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 4.020 | 5.000 | 6.000 | Hitting_AB | 3.705 | 4.000 | 1.295 | 1.000 |
| predicted_AVG | 0.266 | 0.600 | 0.333 | Hitting_AVG | 0.306 | 0.000 | 0.294 | 0.600 |
| predicted_BB | 0.410 | 0.000 | 1.000 | Hitting_BB | 0.410 | 0.000 | -0.410 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.040 | 0.000 | -0.040 | 0.000 |
| predicted_H | 1.070 | 3.000 | 2.000 | Hitting_H | 1.135 | 0.000 | 1.865 | 3.000 |
| predicted_HR | 0.130 | 1.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | 0.900 | 1.000 |
| predicted_OBP | 0.378 | 0.600 | 0.429 | Hitting_OBP | 0.391 | 0.000 | 0.209 | 0.600 |
| predicted_R | 0.681 | 1.000 | 1.000 | Hitting_R | 0.681 | 0.000 | 0.319 | 1.000 |
| predicted_RBI | 0.650 | 2.000 | 1.000 | Hitting_RBI | 0.466 | 0.000 | 1.534 | 2.000 |
| predicted_SLG | 0.452 | 1.400 | 0.333 | Hitting_SLG | 0.474 | 0.000 | 0.926 | 1.400 |
| predicted_SO | 0.968 | 0.000 | 1.000 | Hitting_SO | 0.968 | 1.000 | -0.968 | -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 | 9 |
| Worse Metrics | 1 |
| Biggest Boost | predicted_H: 1.0700 -> 3.0000 (boost 1.9300, better) |
| Biggest Deboost | predicted_SO: 0.9680 -> 0.0000 (deboost -0.9680, 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.0200 -> 6.4299 (boost 2.4099, 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.2977 -> 0.3172 (boost 0.0195, better) | predicted_OBP: 0.3970 -> 0.3825 (deboost -0.0145, 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.6807 -> 1.0000 (boost 0.3193, better) | predicted_2B: 0.4346 -> 0.0000 (deboost -0.4346, worse) | AB rounded to 6 (raw=6.43), rates preserved: AVG=0.317 HR/AB=0.032 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=18.0, weight=0.150, BvP AVG=0.222) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.1250 -> 1.0000 (deboost -0.1250, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3825 -> 0.4290 (boost 0.0465, 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 |
| 8 | simulation_box_score_reference | 7 | 4 | 3 | 5 | 2 | 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 |
| 9 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4899 (boost 0.1569, better) | predicted_OBP: 0.4290 -> 0.3825 (deboost -0.0465, 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.283,
"predicted_3B": 0.02,
"predicted_AB": 4.02,
"predicted_AVG": 0.266,
"predicted_BB": 0.41,
"predicted_H": 1.07,
"predicted_HR": 0.13,
"predicted_OBP": 0.378,
"predicted_R": 0.681,
"predicted_RBI": 0.65,
"predicted_SLG": 0.452,
"predicted_SO": 0.968
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4346,
"predicted_3B": 0.0249,
"predicted_AB": 6.4299,
"predicted_AVG": 0.2977,
"predicted_BB": 0.6775,
"predicted_H": 2.0112,
"predicted_HBP": 0.402,
"predicted_HR": 0.206,
"predicted_OBP": 0.397,
"predicted_R": 1.0979,
"predicted_RBI": 1.1314,
"predicted_SLG": 0.4758,
"predicted_SO": 1.4357
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.283,
"after": 0.4346,
"delta": 0.1516,
"percent_delta": 0.5357,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0249,
"delta": 0.0049,
"percent_delta": 0.245,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.02,
"after": 6.4299,
"delta": 2.4099,
"percent_delta": 0.5995,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2977,
"delta": 0.0317,
"percent_delta": 0.1192,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.41,
"after": 0.6775,
"delta": 0.2675,
"percent_delta": 0.6524,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 2.0112,
"delta": 0.9412,
"percent_delta": 0.8796,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.206,
"delta": 0.076,
"percent_delta": 0.5846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.378,
"after": 0.397,
"delta": 0.019,
"percent_delta": 0.0503,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.681,
"after": 1.0979,
"delta": 0.4169,
"percent_delta": 0.6122,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 1.1314,
"delta": 0.4814,
"percent_delta": 0.7406,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4758,
"delta": 0.0238,
"percent_delta": 0.0527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.968,
"after": 1.4357,
"delta": 0.4677,
"percent_delta": 0.4832,
"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.02,
"after": 6.4299,
"delta": 2.4099,
"percent_delta": 0.5995,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 69
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.4346,
"predicted_3B": 0.0249,
"predicted_AB": 6.4299,
"predicted_AVG": 0.3172,
"predicted_BB": 0.6807,
"predicted_H": 2.0394,
"predicted_HBP": 0.402,
"predicted_HR": 0.2088,
"predicted_OBP": 0.3825,
"predicted_R": 1.125,
"predicted_RBI": 1.1593,
"predicted_SLG": 0.4899,
"predicted_SO": 1.429
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4346,
"after": 0.4346,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0249,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4299,
"after": 6.4299,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2977,
"after": 0.3172,
"delta": 0.0195,
"percent_delta": 0.0655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6775,
"after": 0.6807,
"delta": 0.0032,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0112,
"after": 2.0394,
"delta": 0.0282,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.402,
"after": 0.402,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.206,
"after": 0.2088,
"delta": 0.0028,
"percent_delta": 0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.397,
"after": 0.3825,
"delta": -0.0145,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0979,
"after": 1.125,
"delta": 0.0271,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1314,
"after": 1.1593,
"delta": 0.0279,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4758,
"after": 0.4899,
"delta": 0.0141,
"percent_delta": 0.0296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4357,
"after": 1.429,
"delta": -0.0067,
"percent_delta": -0.0047,
"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.2977,
"after": 0.3172,
"delta": 0.0195,
"percent_delta": 0.0655,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.397,
"after": 0.3825,
"delta": -0.0145,
"percent_delta": -0.0365,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.43), rates preserved: AVG=0.317 HR/AB=0.032",
"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.4346,
"after": 0.0,
"delta": -0.4346,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0,
"delta": -0.0249,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4299,
"after": 6.0,
"delta": -0.4299,
"percent_delta": -0.0669,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6807,
"after": 1.0,
"delta": 0.3193,
"percent_delta": 0.4691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0394,
"after": 2.0,
"delta": -0.0394,
"percent_delta": -0.0193,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.402,
"after": 0.0,
"delta": -0.402,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2088,
"after": 0.0,
"delta": -0.2088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1593,
"after": 1.0,
"delta": -0.1593,
"percent_delta": -0.1374,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.429,
"after": 1.0,
"delta": -0.429,
"percent_delta": -0.3002,
"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.6807,
"after": 1.0,
"delta": 0.3193,
"percent_delta": 0.4691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4346,
"after": 0.0,
"delta": -0.4346,
"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=18.0, weight=0.150, BvP AVG=0.222)",
"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.85,
"bvp": 0.15
},
"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.125,
"after": 1.0,
"delta": -0.125,
"percent_delta": -0.1111,
"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.125,
"after": 1.0,
"delta": -0.125,
"percent_delta": -0.1111,
"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.3172,
"after": 0.333,
"delta": 0.0158,
"percent_delta": 0.0498,
"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.3825,
"after": 0.429,
"delta": 0.0465,
"percent_delta": 0.1216,
"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.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_OBP",
"before": 0.3825,
"after": 0.429,
"delta": 0.0465,
"percent_delta": 0.1216,
"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": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"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_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": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_AVG": 0.3172,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 3.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3825,
"predicted_R": 1.0,
"predicted_RBI": 2.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.3172,
"delta": -0.0158,
"percent_delta": -0.0475,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3825,
"delta": -0.0465,
"percent_delta": -0.1083,
"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.4899,
"delta": 0.1569,
"percent_delta": 0.4713,
"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.4713,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.3825,
"delta": -0.0465,
"percent_delta": -0.1083,
"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.283,
"after": 1.0,
"delta": 0.717,
"percent_delta": 2.5336,
"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": 4.02,
"after": 5.0,
"delta": 0.98,
"percent_delta": 0.2438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.3172,
"delta": 0.0512,
"percent_delta": 0.1925,
"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.07,
"after": 3.0,
"delta": 1.93,
"percent_delta": 1.8037,
"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.378,
"after": 0.3825,
"delta": 0.0045,
"percent_delta": 0.0119,
"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.65,
"after": 2.0,
"delta": 1.35,
"percent_delta": 2.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.452,
"after": 0.4899,
"delta": 0.0379,
"percent_delta": 0.0838,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.968,
"after": 0.0,
"delta": -0.968,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 8,
"deboosted_metrics": 2,
"better_metrics": 9,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.07,
"after": 3.0,
"delta": 1.93,
"percent_delta": 1.8037,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.968,
"after": 0.0,
"delta": -0.968,
"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.283 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 4.020 | - |
| predicted_AVG | 0.266 | - |
| predicted_BB | 0.410 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.378 | - |
| predicted_R | 0.681 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.452 | - |
| predicted_SO | 0.968 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.435 | 0.152 |
| predicted_3B | 0.025 | 0.005 |
| predicted_AB | 6.430 | 2.410 |
| predicted_AVG | 0.298 | 0.032 |
| predicted_BB | 0.677 | 0.268 |
| predicted_H | 2.011 | 0.941 |
| predicted_HBP | 0.402 | - |
| predicted_HR | 0.206 | 0.076 |
| predicted_OBP | 0.397 | 0.019 |
| predicted_R | 1.098 | 0.417 |
| predicted_RBI | 1.131 | 0.481 |
| predicted_SLG | 0.476 | 0.024 |
| predicted_SO | 1.436 | 0.468 |
Step 3: 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.025 | 0.000 |
| predicted_AB | 6.430 | 0.000 |
| predicted_AVG | 0.317 | 0.019 |
| predicted_BB | 0.681 | 0.003 |
| predicted_H | 2.039 | 0.028 |
| predicted_HBP | 0.402 | 0.000 |
| predicted_HR | 0.209 | 0.003 |
| predicted_OBP | 0.383 | -0.015 |
| predicted_R | 1.125 | 0.027 |
| predicted_RBI | 1.159 | 0.028 |
| predicted_SLG | 0.490 | 0.014 |
| predicted_SO | 1.429 | -0.007 |
AB rounded to 6 (raw=6.43), rates preserved: AVG=0.317 HR/AB=0.032
| 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=18.0, weight=0.150, BvP AVG=0.222)
| 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.435 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 6.000 | -0.430 |
| predicted_AVG | 0.333 | 0.016 |
| predicted_BB | 1.000 | 0.319 |
| predicted_H | 2.000 | -0.039 |
| predicted_HR | 0.000 | -0.209 |
| predicted_OBP | 0.429 | 0.046 |
| predicted_R | 1.000 | -0.125 |
| predicted_RBI | 1.000 | -0.159 |
| predicted_SLG | 0.333 | -0.157 |
| predicted_SO | 1.000 | -0.429 |
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 | 3.000 | 1.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 | - | 19.000 | 9.000 | 1.000 | 0.000 | 1.000 | 7.000 | 3.000 | 2.000 | 2.000 | 0.4737 | 0.5455 | 0.6842 | 0.4737 | 0.0526 | 0.3684 | 0.1053 | 0.1053 |
| last_10 | 0.20 | 10 | - | 39.000 | 12.000 | 2.000 | 0.000 | 1.000 | 7.000 | 6.000 | 4.000 | 7.000 | 0.3077 | 0.4000 | 0.4359 | 0.3077 | 0.0256 | 0.1795 | 0.1026 | 0.1795 |
| season | 0.60 | 69 | - | 930.000 | 285.000 | 71.000 | 5.000 | 25.000 | 117.000 | 171.000 | 103.000 | 243.000 | 0.3065 | 0.3913 | 0.4742 | 0.3065 | 0.0269 | 0.1258 | 0.1108 | 0.2613 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6260 |
| predicted_3B | 0.0310 |
| predicted_AB | 9.4710 |
| predicted_AVG | 0.3378 |
| predicted_BB | 1.0150 |
| predicted_H | 3.1990 |
| predicted_HBP | 0.4020 |
| predicted_HR | 0.3020 |
| predicted_OBP | 0.4209 |
| predicted_R | 1.6240 |
| predicted_RBI | 1.7390 |
| predicted_SLG | 0.5058 |
| predicted_SO | 2.0260 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2830 | 0.6260 | 0.4346 | model_form_blend |
| predicted_3B | 0.0200 | 0.0310 | 0.0249 | model_form_blend |
| predicted_AB | 4.0200 | 9.4710 | 6.4299 | model_form_blend |
| predicted_AVG | 0.2660 | 0.3378 | 0.2977 | model_form_blend |
| predicted_BB | 0.4100 | 1.0150 | 0.6775 | model_form_blend |
| predicted_H | 1.0700 | 3.1990 | 2.0112 | model_form_blend |
| predicted_HBP | - | 0.4020 | 0.4020 | form_only |
| predicted_HR | 0.1300 | 0.3020 | 0.2060 | model_form_blend |
| predicted_OBP | 0.3780 | 0.4209 | 0.3970 | model_form_blend |
| predicted_R | 0.6810 | 1.6240 | 1.0979 | model_form_blend |
| predicted_RBI | 0.6500 | 1.7390 | 1.1314 | model_form_blend |
| predicted_SLG | 0.4520 | 0.5058 | 0.4758 | model_form_blend |
| predicted_SO | 0.9680 | 2.0260 | 1.4357 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 251 |
| Season rows before report date | 251 |
| Report year | 2026 |
| Profile rows used | 251 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| R | 1 |
| RBI | 2 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.306 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | LF |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 668227 |
| playerID | 668227 |
| playerName | Randy Arozarena |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.7 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.37 |
| sl_xwoba | 0.355 |
| sl_xba | 0.273 |
| sl_xslg | 0.433 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 43.8 |
| sl_exit_velocity_avg | 91.6 |
| sl_launch_angle_avg | 8.2 |
| sl_whiff_percent | 26.6 |
| sl_swing_percent | 47.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.153 | 0.000 | 0.000 | Hitting_2B | 0.152 | 0.000 | -0.152 | 0.000 |
| predicted_3B | 0.031 | 0.000 | 0.000 | Hitting_3B | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_AB | 3.442 | 4.000 | 5.000 | Hitting_AB | 3.421 | 3.000 | 0.579 | 1.000 |
| predicted_AVG | 0.240 | 0.250 | 0.200 | Hitting_AVG | 0.289 | 0.000 | -0.039 | 0.250 |
| predicted_BB | 0.166 | 0.000 | 0.000 | Hitting_BB | 0.165 | 1.000 | -0.165 | -1.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 | 0.988 | 0.000 | 0.012 | 1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.287 | 0.000 | -0.287 | 0.000 |
| predicted_OBP | 0.285 | 0.250 | 0.200 | Hitting_OBP | 0.344 | 0.250 | -0.094 | 0.000 |
| predicted_R | 0.515 | 0.000 | 1.000 | Hitting_R | 0.512 | 0.000 | -0.512 | 0.000 |
| predicted_RBI | 0.390 | 0.000 | 1.000 | Hitting_RBI | 0.780 | 0.000 | -0.780 | 0.000 |
| predicted_SLG | 0.414 | 0.250 | 0.200 | Hitting_SLG | 0.602 | 0.000 | -0.352 | 0.250 |
| predicted_SO | 1.184 | 1.000 | 2.000 | Hitting_SO | 1.177 | 0.000 | -0.177 | 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_AB: 3.4420 -> 4.0000 (boost 0.5580, better) |
| Biggest Deboost | predicted_R: 0.5150 -> 0.0000 (deboost -0.5150, 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.4420 -> 4.8541 (boost 1.4121, 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.4303 -> 0.4381 (boost 0.0078, better) | predicted_OBP: 0.2877 -> 0.2643 (deboost -0.0234, 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.6504 -> 1.0000 (boost 0.3496, better) | predicted_BB: 0.2540 -> 0.0000 (deboost -0.2540, worse) | AB rounded to 5 (raw=4.85), rates preserved: AVG=0.226 HR/AB=0.051 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.444) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5885 -> 1.0000 (boost 0.4115, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4381 -> 0.2000 (deboost -0.2381, 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: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4381 (boost 0.2381, 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.153,
"predicted_3B": 0.031,
"predicted_AB": 3.442,
"predicted_AVG": 0.24,
"predicted_BB": 0.166,
"predicted_H": 0.73,
"predicted_HR": 0.15,
"predicted_OBP": 0.285,
"predicted_R": 0.515,
"predicted_RBI": 0.39,
"predicted_SLG": 0.414,
"predicted_SO": 1.184
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2189,
"predicted_3B": 0.0327,
"predicted_AB": 4.8541,
"predicted_AVG": 0.2355,
"predicted_BB": 0.2528,
"predicted_H": 1.0807,
"predicted_HBP": 0.216,
"predicted_HR": 0.2455,
"predicted_OBP": 0.2877,
"predicted_R": 0.5743,
"predicted_RBI": 0.6347,
"predicted_SLG": 0.4303,
"predicted_SO": 1.6643
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.153,
"after": 0.2189,
"delta": 0.0659,
"percent_delta": 0.4307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.031,
"after": 0.0327,
"delta": 0.0017,
"percent_delta": 0.0548,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.442,
"after": 4.8541,
"delta": 1.4121,
"percent_delta": 0.4103,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2355,
"delta": -0.0045,
"percent_delta": -0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.166,
"after": 0.2528,
"delta": 0.0868,
"percent_delta": 0.5229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.73,
"after": 1.0807,
"delta": 0.3507,
"percent_delta": 0.4804,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2455,
"delta": 0.0955,
"percent_delta": 0.6367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.285,
"after": 0.2877,
"delta": 0.0027,
"percent_delta": 0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.515,
"after": 0.5743,
"delta": 0.0593,
"percent_delta": 0.1151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.6347,
"delta": 0.2447,
"percent_delta": 0.6274,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.4303,
"delta": 0.0163,
"percent_delta": 0.0394,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.184,
"after": 1.6643,
"delta": 0.4803,
"percent_delta": 0.4057,
"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.442,
"after": 4.8541,
"delta": 1.4121,
"percent_delta": 0.4103,
"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.2189,
"predicted_3B": 0.0327,
"predicted_AB": 4.8541,
"predicted_AVG": 0.2258,
"predicted_BB": 0.254,
"predicted_H": 1.0958,
"predicted_HBP": 0.216,
"predicted_HR": 0.2489,
"predicted_OBP": 0.2643,
"predicted_R": 0.5885,
"predicted_RBI": 0.6504,
"predicted_SLG": 0.4381,
"predicted_SO": 1.6565
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2189,
"after": 0.2189,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0327,
"after": 0.0327,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8541,
"after": 4.8541,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2355,
"after": 0.2258,
"delta": -0.0097,
"percent_delta": -0.0412,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2528,
"after": 0.254,
"delta": 0.0012,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0807,
"after": 1.0958,
"delta": 0.0151,
"percent_delta": 0.014,
"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.2455,
"after": 0.2489,
"delta": 0.0034,
"percent_delta": 0.0138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2877,
"after": 0.2643,
"delta": -0.0234,
"percent_delta": -0.0813,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5743,
"after": 0.5885,
"delta": 0.0142,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6347,
"after": 0.6504,
"delta": 0.0157,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4303,
"after": 0.4381,
"delta": 0.0078,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6643,
"after": 1.6565,
"delta": -0.0078,
"percent_delta": -0.0047,
"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.4303,
"after": 0.4381,
"delta": 0.0078,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.2877,
"after": 0.2643,
"delta": -0.0234,
"percent_delta": -0.0813,
"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.226 HR/AB=0.051",
"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.2189,
"after": 0.0,
"delta": -0.2189,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0327,
"after": 0.0,
"delta": -0.0327,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8541,
"after": 5.0,
"delta": 0.1459,
"percent_delta": 0.0301,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.254,
"after": 0.0,
"delta": -0.254,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0958,
"after": 1.0,
"delta": -0.0958,
"percent_delta": -0.0874,
"direction": "deboost",
"projection_effect": "worse",
"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.2489,
"after": 0.0,
"delta": -0.2489,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6504,
"after": 1.0,
"delta": 0.3496,
"percent_delta": 0.5375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6565,
"after": 2.0,
"delta": 0.3435,
"percent_delta": 0.2074,
"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.6504,
"after": 1.0,
"delta": 0.3496,
"percent_delta": 0.5375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.254,
"after": 0.0,
"delta": -0.254,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.444)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.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": 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": 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": 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.5885,
"after": 1.0,
"delta": 0.4115,
"percent_delta": 0.6992,
"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.5885,
"after": 1.0,
"delta": 0.4115,
"percent_delta": 0.6992,
"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": 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.2258,
"after": 0.2,
"delta": -0.0258,
"percent_delta": -0.1143,
"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.2643,
"after": 0.2,
"delta": -0.0643,
"percent_delta": -0.2433,
"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.4381,
"after": 0.2,
"delta": -0.2381,
"percent_delta": -0.5435,
"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.4381,
"after": 0.2,
"delta": -0.2381,
"percent_delta": -0.5435,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 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": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"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": 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.2258,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2643,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4381,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2258,
"delta": 0.0258,
"percent_delta": 0.1288,
"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.2643,
"delta": 0.0643,
"percent_delta": 0.3213,
"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.4381,
"delta": 0.2381,
"percent_delta": 1.1907,
"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.4381,
"delta": 0.2381,
"percent_delta": 1.1907,
"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.153,
"after": 0.0,
"delta": -0.153,
"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.442,
"after": 4.0,
"delta": 0.558,
"percent_delta": 0.1621,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2258,
"delta": -0.0142,
"percent_delta": -0.0592,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.166,
"after": 0.0,
"delta": -0.166,
"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.285,
"after": 0.2643,
"delta": -0.0207,
"percent_delta": -0.0726,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.515,
"after": 0.0,
"delta": -0.515,
"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.414,
"after": 0.4381,
"delta": 0.0241,
"percent_delta": 0.0582,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.184,
"after": 1.0,
"delta": -0.184,
"percent_delta": -0.1554,
"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_AB",
"before": 3.442,
"after": 4.0,
"delta": 0.558,
"percent_delta": 0.1621,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.515,
"after": 0.0,
"delta": -0.515,
"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.153 | - |
| predicted_3B | 0.031 | - |
| predicted_AB | 3.442 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.166 | - |
| predicted_H | 0.730 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.285 | - |
| predicted_R | 0.515 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.414 | - |
| predicted_SO | 1.184 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | 0.066 |
| predicted_3B | 0.033 | 0.002 |
| predicted_AB | 4.854 | 1.412 |
| predicted_AVG | 0.235 | -0.005 |
| predicted_BB | 0.253 | 0.087 |
| predicted_H | 1.081 | 0.351 |
| predicted_HBP | 0.216 | - |
| predicted_HR | 0.245 | 0.096 |
| predicted_OBP | 0.288 | 0.003 |
| predicted_R | 0.574 | 0.059 |
| predicted_RBI | 0.635 | 0.245 |
| predicted_SLG | 0.430 | 0.016 |
| predicted_SO | 1.664 | 0.480 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.219 | 0.000 |
| predicted_3B | 0.033 | 0.000 |
| predicted_AB | 4.854 | 0.000 |
| predicted_AVG | 0.226 | -0.010 |
| predicted_BB | 0.254 | 0.001 |
| predicted_H | 1.096 | 0.015 |
| predicted_HBP | 0.216 | 0.000 |
| predicted_HR | 0.249 | 0.003 |
| predicted_OBP | 0.264 | -0.023 |
| predicted_R | 0.589 | 0.014 |
| predicted_RBI | 0.650 | 0.016 |
| predicted_SLG | 0.438 | 0.008 |
| predicted_SO | 1.657 | -0.008 |
AB rounded to 5 (raw=4.85), rates preserved: AVG=0.226 HR/AB=0.051
| 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 | - |
Sample-size BvP blend (BvP AB=9.0, weight=0.092, BvP AVG=0.444)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 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 | 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 | 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.219 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 5.000 | 0.146 |
| predicted_AVG | 0.200 | -0.026 |
| predicted_BB | 0.000 | -0.254 |
| predicted_H | 1.000 | -0.096 |
| predicted_HR | 0.000 | -0.249 |
| predicted_OBP | 0.200 | -0.064 |
| predicted_R | 1.000 | 0.411 |
| predicted_RBI | 1.000 | 0.350 |
| predicted_SLG | 0.200 | -0.238 |
| predicted_SO | 2.000 | 0.343 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -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 | 2.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 6.000 | 0.1250 | 0.1765 | 0.1875 | 0.1250 | 0.0000 | 0.0000 | 0.0625 | 0.3750 |
| last_10 | 0.20 | 10 | - | 33.000 | 5.000 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 | 2.000 | 11.000 | 0.1515 | 0.2432 | 0.2727 | 0.1515 | 0.0303 | 0.0303 | 0.0606 | 0.3333 |
| season | 0.60 | 61 | - | 561.000 | 162.000 | 25.000 | 5.000 | 47.000 | 128.000 | 84.000 | 27.000 | 193.000 | 0.2888 | 0.3438 | 0.6025 | 0.2888 | 0.0838 | 0.2282 | 0.0481 | 0.3440 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3040 |
| predicted_3B | 0.0350 |
| predicted_AB | 6.6790 |
| predicted_AVG | 0.2296 |
| predicted_BB | 0.3650 |
| predicted_H | 1.5340 |
| predicted_HBP | 0.2160 |
| predicted_HR | 0.3690 |
| predicted_OBP | 0.2913 |
| predicted_R | 0.6510 |
| predicted_RBI | 0.9510 |
| predicted_SLG | 0.4514 |
| predicted_SO | 2.2850 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1530 | 0.3040 | 0.2189 | model_form_blend |
| predicted_3B | 0.0310 | 0.0350 | 0.0327 | model_form_blend |
| predicted_AB | 3.4420 | 6.6790 | 4.8541 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2296 | 0.2355 | model_form_blend |
| predicted_BB | 0.1660 | 0.3650 | 0.2528 | model_form_blend |
| predicted_H | 0.7300 | 1.5340 | 1.0807 | model_form_blend |
| predicted_HBP | - | 0.2160 | 0.2160 | form_only |
| predicted_HR | 0.1500 | 0.3690 | 0.2455 | model_form_blend |
| predicted_OBP | 0.2850 | 0.2913 | 0.2877 | model_form_blend |
| predicted_R | 0.5150 | 0.6510 | 0.5743 | model_form_blend |
| predicted_RBI | 0.3900 | 0.9510 | 0.6347 | model_form_blend |
| predicted_SLG | 0.4140 | 0.4514 | 0.4303 | model_form_blend |
| predicted_SO | 1.1840 | 2.2850 | 1.6643 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 164 |
| Season rows before report date | 164 |
| Report year | 2026 |
| Profile rows used | 163 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.289 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 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 | 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 | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 670042 |
| playerID | 670042 |
| playerName | Luke Raley |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-10 |
| sl_k_percent | 32.8 |
| sl_bb_percent | 5.1 |
| sl_woba | 0.356 |
| sl_xwoba | 0.367 |
| sl_xba | 0.261 |
| sl_xslg | 0.541 |
| sl_sweet_spot_percent | 39.1 |
| sl_barrel_batted_rate | 18.3 |
| sl_hard_hit_percent | 47.0 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 15.7 |
| sl_whiff_percent | 41.6 |
| 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.263 | 0.000 | 0.000 | Hitting_2B | 0.259 | 0.000 | -0.259 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.942 | 4.000 | 4.000 | Hitting_AB | 2.899 | 4.000 | 1.101 | 0.000 |
| predicted_AVG | 0.300 | 0.000 | 0.250 | Hitting_AVG | 0.273 | 0.250 | -0.273 | -0.250 |
| predicted_BB | 0.270 | 0.000 | 0.000 | Hitting_BB | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.014 | 0.000 | -0.014 | 0.000 |
| predicted_H | 0.770 | 0.000 | 1.000 | Hitting_H | 0.791 | 1.000 | -0.791 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.173 | 0.000 | -0.173 | 0.000 |
| predicted_OBP | 0.358 | 0.000 | 0.250 | Hitting_OBP | 0.339 | 0.250 | -0.339 | -0.250 |
| predicted_R | 0.467 | 0.000 | 1.000 | Hitting_R | 0.468 | 0.000 | -0.468 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.626 | 0.000 | -0.626 | 0.000 |
| predicted_SLG | 0.523 | 0.000 | 0.250 | Hitting_SLG | 0.541 | 0.250 | -0.541 | -0.250 |
| predicted_SO | 0.693 | 1.000 | 1.000 | Hitting_SO | 0.683 | 0.000 | 0.317 | 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: 2.9420 -> 4.0000 (boost 1.0580, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 2.9420 -> 3.9092 (boost 0.9672, 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.5632 -> 0.5703 (boost 0.0071, better) | predicted_OBP: 0.3704 -> 0.3625 (deboost -0.0079, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 2 | 5 | predicted_RBI: 0.6454 -> 1.0000 (boost 0.3546, better) | predicted_2B: 0.3597 -> 0.0000 (deboost -0.3597, worse) | AB rounded to 4 (raw=3.91), rates preserved: AVG=0.307 HR/AB=0.057 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6360 -> 1.0000 (boost 0.3640, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.5703 -> 0.2500 (deboost -0.3203, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 3 | 0 | 3 | 0 | 3 | - | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2500 -> 0.5703 (boost 0.3203, 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.263,
"predicted_3B": 0.0,
"predicted_AB": 2.942,
"predicted_AVG": 0.3,
"predicted_BB": 0.27,
"predicted_H": 0.77,
"predicted_HR": 0.14,
"predicted_OBP": 0.358,
"predicted_R": 0.467,
"predicted_RBI": 0.41,
"predicted_SLG": 0.523,
"predicted_SO": 0.693
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3597,
"predicted_3B": 0.0004,
"predicted_AB": 3.9092,
"predicted_AVG": 0.3142,
"predicted_BB": 0.3408,
"predicted_H": 1.1824,
"predicted_HBP": 0.039,
"predicted_HR": 0.2203,
"predicted_OBP": 0.3704,
"predicted_R": 0.6207,
"predicted_RBI": 0.6298,
"predicted_SLG": 0.5632,
"predicted_SO": 0.7824
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.263,
"after": 0.3597,
"delta": 0.0967,
"percent_delta": 0.3677,
"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.942,
"after": 3.9092,
"delta": 0.9672,
"percent_delta": 0.3288,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.3,
"after": 0.3142,
"delta": 0.0142,
"percent_delta": 0.0473,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.27,
"after": 0.3408,
"delta": 0.0708,
"percent_delta": 0.2622,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 1.1824,
"delta": 0.4124,
"percent_delta": 0.5356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2203,
"delta": 0.0803,
"percent_delta": 0.5736,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.358,
"after": 0.3704,
"delta": 0.0124,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.467,
"after": 0.6207,
"delta": 0.1537,
"percent_delta": 0.3291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6298,
"delta": 0.2198,
"percent_delta": 0.5361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.523,
"after": 0.5632,
"delta": 0.0402,
"percent_delta": 0.0769,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.693,
"after": 0.7824,
"delta": 0.0894,
"percent_delta": 0.129,
"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": 2.942,
"after": 3.9092,
"delta": 0.9672,
"percent_delta": 0.3288,
"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": 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.3597,
"predicted_3B": 0.0004,
"predicted_AB": 3.9092,
"predicted_AVG": 0.3067,
"predicted_BB": 0.3424,
"predicted_H": 1.199,
"predicted_HBP": 0.039,
"predicted_HR": 0.2233,
"predicted_OBP": 0.3625,
"predicted_R": 0.636,
"predicted_RBI": 0.6454,
"predicted_SLG": 0.5703,
"predicted_SO": 0.7787
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3597,
"after": 0.3597,
"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.9092,
"after": 3.9092,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3142,
"after": 0.3067,
"delta": -0.0075,
"percent_delta": -0.0239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3408,
"after": 0.3424,
"delta": 0.0016,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1824,
"after": 1.199,
"delta": 0.0166,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.039,
"after": 0.039,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2203,
"after": 0.2233,
"delta": 0.003,
"percent_delta": 0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3704,
"after": 0.3625,
"delta": -0.0079,
"percent_delta": -0.0213,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6207,
"after": 0.636,
"delta": 0.0153,
"percent_delta": 0.0246,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6298,
"after": 0.6454,
"delta": 0.0156,
"percent_delta": 0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5632,
"after": 0.5703,
"delta": 0.0071,
"percent_delta": 0.0126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7824,
"after": 0.7787,
"delta": -0.0037,
"percent_delta": -0.0047,
"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.5632,
"after": 0.5703,
"delta": 0.0071,
"percent_delta": 0.0126,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3704,
"after": 0.3625,
"delta": -0.0079,
"percent_delta": -0.0213,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.91), rates preserved: AVG=0.307 HR/AB=0.057",
"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.3597,
"after": 0.0,
"delta": -0.3597,
"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.9092,
"after": 4.0,
"delta": 0.0908,
"percent_delta": 0.0232,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3424,
"after": 0.0,
"delta": -0.3424,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.199,
"after": 1.0,
"delta": -0.199,
"percent_delta": -0.166,
"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.2233,
"after": 0.0,
"delta": -0.2233,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6454,
"after": 1.0,
"delta": 0.3546,
"percent_delta": 0.5494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7787,
"after": 1.0,
"delta": 0.2213,
"percent_delta": 0.2842,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 3,
"deboosted_metrics": 4,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6454,
"after": 1.0,
"delta": 0.3546,
"percent_delta": 0.5494,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3597,
"after": 0.0,
"delta": -0.3597,
"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.636,
"after": 1.0,
"delta": 0.364,
"percent_delta": 0.5723,
"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.636,
"after": 1.0,
"delta": 0.364,
"percent_delta": 0.5723,
"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.3067,
"after": 0.25,
"delta": -0.0567,
"percent_delta": -0.1849,
"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.3625,
"after": 0.25,
"delta": -0.1125,
"percent_delta": -0.3103,
"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.5703,
"after": 0.25,
"delta": -0.3203,
"percent_delta": -0.5616,
"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.5703,
"after": 0.25,
"delta": -0.3203,
"percent_delta": -0.5616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.3067,
"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.3625,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5703,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.3067,
"delta": 0.0567,
"percent_delta": 0.2268,
"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.3625,
"delta": 0.1125,
"percent_delta": 0.4501,
"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.5703,
"delta": 0.3203,
"percent_delta": 1.2813,
"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.5703,
"delta": 0.3203,
"percent_delta": 1.2813,
"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.263,
"after": 0.0,
"delta": -0.263,
"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.942,
"after": 4.0,
"delta": 1.058,
"percent_delta": 0.3596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.3,
"after": 0.3067,
"delta": 0.0067,
"percent_delta": 0.0223,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"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.358,
"after": 0.3625,
"delta": 0.0045,
"percent_delta": 0.0126,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.467,
"after": 0.0,
"delta": -0.467,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.523,
"after": 0.5703,
"delta": 0.0473,
"percent_delta": 0.0904,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.693,
"after": 1.0,
"delta": 0.307,
"percent_delta": 0.443,
"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": 2.942,
"after": 4.0,
"delta": 1.058,
"percent_delta": 0.3596,
"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.263 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.942 | - |
| predicted_AVG | 0.300 | - |
| predicted_BB | 0.270 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.358 | - |
| predicted_R | 0.467 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.523 | - |
| predicted_SO | 0.693 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.360 | 0.097 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.909 | 0.967 |
| predicted_AVG | 0.314 | 0.014 |
| predicted_BB | 0.341 | 0.071 |
| predicted_H | 1.182 | 0.412 |
| predicted_HBP | 0.039 | - |
| predicted_HR | 0.220 | 0.080 |
| predicted_OBP | 0.370 | 0.012 |
| predicted_R | 0.621 | 0.154 |
| predicted_RBI | 0.630 | 0.220 |
| predicted_SLG | 0.563 | 0.040 |
| predicted_SO | 0.782 | 0.089 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.360 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.909 | 0.000 |
| predicted_AVG | 0.307 | -0.008 |
| predicted_BB | 0.342 | 0.002 |
| predicted_H | 1.199 | 0.017 |
| predicted_HBP | 0.039 | 0.000 |
| predicted_HR | 0.223 | 0.003 |
| predicted_OBP | 0.362 | -0.008 |
| predicted_R | 0.636 | 0.015 |
| predicted_RBI | 0.645 | 0.016 |
| predicted_SLG | 0.570 | 0.007 |
| predicted_SO | 0.779 | -0.004 |
AB rounded to 4 (raw=3.91), rates preserved: AVG=0.307 HR/AB=0.057
| 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.360 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.091 |
| predicted_AVG | 0.250 | -0.057 |
| predicted_BB | 0.000 | -0.342 |
| predicted_H | 1.000 | -0.199 |
| predicted_HR | 0.000 | -0.223 |
| predicted_OBP | 0.250 | -0.112 |
| predicted_R | 1.000 | 0.364 |
| predicted_RBI | 1.000 | 0.355 |
| predicted_SLG | 0.250 | -0.320 |
| predicted_SO | 1.000 | 0.221 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -1.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 6.000 | 2.000 | 0.000 | 1.000 | 2.000 | 2.000 | 1.000 | 1.000 | 0.4286 | 0.4667 | 0.7857 | 0.4286 | 0.0714 | 0.1429 | 0.0714 | 0.0714 |
| last_10 | 0.20 | 10 | - | 27.000 | 12.000 | 2.000 | 0.000 | 2.000 | 3.000 | 5.000 | 2.000 | 2.000 | 0.4444 | 0.4828 | 0.7407 | 0.4444 | 0.0741 | 0.1111 | 0.0741 | 0.0741 |
| season | 0.60 | 58 | - | 403.000 | 110.000 | 36.000 | 0.000 | 24.000 | 87.000 | 64.000 | 37.000 | 95.000 | 0.2730 | 0.3363 | 0.5409 | 0.2730 | 0.0595 | 0.2159 | 0.0918 | 0.2357 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4870 |
| predicted_3B | 0.0010 |
| predicted_AB | 5.1820 |
| predicted_AVG | 0.3329 |
| predicted_BB | 0.4340 |
| predicted_H | 1.7250 |
| predicted_HBP | 0.0390 |
| predicted_HR | 0.3260 |
| predicted_OBP | 0.3868 |
| predicted_R | 0.8230 |
| predicted_RBI | 0.9190 |
| predicted_SLG | 0.6161 |
| predicted_SO | 0.9000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2630 | 0.4870 | 0.3597 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.9420 | 5.1820 | 3.9092 | model_form_blend |
| predicted_AVG | 0.3000 | 0.3329 | 0.3142 | model_form_blend |
| predicted_BB | 0.2700 | 0.4340 | 0.3408 | model_form_blend |
| predicted_H | 0.7700 | 1.7250 | 1.1824 | model_form_blend |
| predicted_HBP | - | 0.0390 | 0.0390 | form_only |
| predicted_HR | 0.1400 | 0.3260 | 0.2203 | model_form_blend |
| predicted_OBP | 0.3580 | 0.3868 | 0.3704 | model_form_blend |
| predicted_R | 0.4670 | 0.8230 | 0.6207 | model_form_blend |
| predicted_RBI | 0.4100 | 0.9190 | 0.6298 | model_form_blend |
| predicted_SLG | 0.5230 | 0.6161 | 0.5632 | model_form_blend |
| predicted_SO | 0.6930 | 0.9000 | 0.7824 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 4 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| 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.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 | 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 | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 686527 |
| playerID | 686527 |
| playerName | Dominic Canzone |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.5 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.373 |
| sl_xwoba | 0.38 |
| sl_xba | 0.29 |
| sl_xslg | 0.53 |
| sl_sweet_spot_percent | 40.5 |
| sl_barrel_batted_rate | 16.4 |
| sl_hard_hit_percent | 49.1 |
| sl_exit_velocity_avg | 93.1 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 30.4 |
| sl_swing_percent | 47.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.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 | 3.000 | 3.000 | 0.000 | 0.000 |
| predicted_AVG | 0.258 | 0.000 | 0.333 | Hitting_AVG | 0.333 | 0.333 | -0.333 | -0.333 |
| predicted_BB | 0.000 | 1.000 | 0.000 | Hitting_BB | 0.000 | 0.000 | 1.000 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.770 | 0.000 | 1.000 | Hitting_H | 1.000 | 1.000 | -1.000 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.313 | 0.250 | 0.333 | Hitting_OBP | 0.333 | 0.333 | -0.083 | -0.083 |
| predicted_R | 1.000 | 0.000 | 1.000 | Hitting_R | 1.000 | 1.000 | -1.000 | -1.000 |
| predicted_RBI | 0.390 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.399 | 0.000 | 0.333 | Hitting_SLG | 0.333 | 0.333 | -0.333 | -0.333 |
| predicted_SO | 1.000 | 0.000 | 1.000 | Hitting_SO | 1.000 | 1.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 8 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_R: 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 | 2 | 1 | 1 | 1 | 1 | predicted_AB: 3.0000 -> 3.1451 (boost 0.1451, better) | predicted_R: 1.0000 -> 0.9188 (deboost -0.0812, 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.3134 -> 0.2719 (deboost -0.0415, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 4 | 1 | 3 | 1 | 3 | predicted_H: 0.8194 -> 1.0000 (boost 0.1806, better) | predicted_RBI: 0.4113 -> 0.0000 (deboost -0.4113, worse) | AB rounded to 3 (raw=3.15), rates preserved: AVG=0.261 HR/AB=0.033 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9415 -> 1.0000 (boost 0.0585, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2605 -> 0.3330 (boost 0.0725, better) | predicted_SLG: 0.3716 -> 0.3330 (deboost -0.0386, 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_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_H: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3716 (boost 0.0386, better) | predicted_AVG: 0.3330 -> 0.2605 (deboost -0.0725, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670156",
"player_name": "Miles Mastrobuoni",
"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.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.258,
"predicted_BB": 0.0,
"predicted_H": 0.77,
"predicted_HR": 0.1,
"predicted_OBP": 0.313,
"predicted_R": 1.0,
"predicted_RBI": 0.39,
"predicted_SLG": 0.399,
"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.0309,
"predicted_3B": 0.0024,
"predicted_AB": 3.1451,
"predicted_AVG": 0.258,
"predicted_BB": 0.0488,
"predicted_H": 0.8081,
"predicted_HBP": 0.031,
"predicted_HR": 0.1031,
"predicted_OBP": 0.3134,
"predicted_R": 0.9188,
"predicted_RBI": 0.4014,
"predicted_SLG": 0.3996,
"predicted_SO": 0.977
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0309,
"delta": 0.0309,
"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.1451,
"delta": 0.1451,
"percent_delta": 0.0484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.258,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0488,
"delta": 0.0488,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.77,
"after": 0.8081,
"delta": 0.0381,
"percent_delta": 0.0495,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1031,
"delta": 0.0031,
"percent_delta": 0.031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.313,
"after": 0.3134,
"delta": 0.0004,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.9188,
"delta": -0.0812,
"percent_delta": -0.0812,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.4014,
"delta": 0.0114,
"percent_delta": 0.0292,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.3996,
"delta": 0.0006,
"percent_delta": 0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.977,
"delta": -0.023,
"percent_delta": -0.023,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.0,
"after": 3.1451,
"delta": 0.1451,
"percent_delta": 0.0484,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 1.0,
"after": 0.9188,
"delta": -0.0812,
"percent_delta": -0.0812,
"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": 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.0309,
"predicted_3B": 0.0024,
"predicted_AB": 3.1451,
"predicted_AVG": 0.2605,
"predicted_BB": 0.049,
"predicted_H": 0.8194,
"predicted_HBP": 0.031,
"predicted_HR": 0.1045,
"predicted_OBP": 0.2719,
"predicted_R": 0.9415,
"predicted_RBI": 0.4113,
"predicted_SLG": 0.3716,
"predicted_SO": 0.9724
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0309,
"after": 0.0309,
"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.1451,
"after": 3.1451,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2605,
"delta": 0.0025,
"percent_delta": 0.0097,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0488,
"after": 0.049,
"delta": 0.0002,
"percent_delta": 0.0041,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8081,
"after": 0.8194,
"delta": 0.0113,
"percent_delta": 0.014,
"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.1031,
"after": 0.1045,
"delta": 0.0014,
"percent_delta": 0.0136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3134,
"after": 0.2719,
"delta": -0.0415,
"percent_delta": -0.1324,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9188,
"after": 0.9415,
"delta": 0.0227,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4014,
"after": 0.4113,
"delta": 0.0099,
"percent_delta": 0.0247,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3996,
"after": 0.3716,
"delta": -0.028,
"percent_delta": -0.0701,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.977,
"after": 0.9724,
"delta": -0.0046,
"percent_delta": -0.0047,
"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.3134,
"after": 0.2719,
"delta": -0.0415,
"percent_delta": -0.1324,
"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.261 HR/AB=0.033",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0309,
"after": 0.0,
"delta": -0.0309,
"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.1451,
"after": 3.0,
"delta": -0.1451,
"percent_delta": -0.0461,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.049,
"after": 0.0,
"delta": -0.049,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8194,
"after": 1.0,
"delta": 0.1806,
"percent_delta": 0.2204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.031,
"after": 0.0,
"delta": -0.031,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1045,
"after": 0.0,
"delta": -0.1045,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4113,
"after": 0.0,
"delta": -0.4113,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9724,
"after": 1.0,
"delta": 0.0276,
"percent_delta": 0.0284,
"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_H",
"before": 0.8194,
"after": 1.0,
"delta": 0.1806,
"percent_delta": 0.2204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4113,
"after": 0.0,
"delta": -0.4113,
"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.9415,
"after": 1.0,
"delta": 0.0585,
"percent_delta": 0.0621,
"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.9415,
"after": 1.0,
"delta": 0.0585,
"percent_delta": 0.0621,
"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.2605,
"after": 0.333,
"delta": 0.0725,
"percent_delta": 0.2783,
"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.2719,
"after": 0.333,
"delta": 0.0611,
"percent_delta": 0.2247,
"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.3716,
"after": 0.333,
"delta": -0.0386,
"percent_delta": -0.1039,
"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.2605,
"after": 0.333,
"delta": 0.0725,
"percent_delta": 0.2783,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3716,
"after": 0.333,
"delta": -0.0386,
"percent_delta": -0.1039,
"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": 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": 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.2605,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2719,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3716,
"predicted_SO": 0.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2605,
"delta": -0.0725,
"percent_delta": -0.2176,
"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.2719,
"delta": -0.0611,
"percent_delta": -0.1835,
"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.3716,
"delta": 0.0386,
"percent_delta": 0.1159,
"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.3716,
"delta": 0.0386,
"percent_delta": 0.1159,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2605,
"delta": -0.0725,
"percent_delta": -0.2176,
"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.258,
"after": 0.2605,
"delta": 0.0025,
"percent_delta": 0.0097,
"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": 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.313,
"after": 0.2719,
"delta": -0.0411,
"percent_delta": -0.1313,
"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": 0.39,
"after": 0.0,
"delta": -0.39,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.399,
"after": 0.3716,
"delta": -0.0274,
"percent_delta": -0.0687,
"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": "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.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
},
"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.258 | - |
| predicted_BB | 0.000 | - |
| predicted_H | 0.770 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.313 | - |
| predicted_R | 1.000 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.399 | - |
| 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.031 | 0.031 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.145 | 0.145 |
| predicted_AVG | 0.258 | 0.000 |
| predicted_BB | 0.049 | 0.049 |
| predicted_H | 0.808 | 0.038 |
| predicted_HBP | 0.031 | - |
| predicted_HR | 0.103 | 0.003 |
| predicted_OBP | 0.313 | 0.000 |
| predicted_R | 0.919 | -0.081 |
| predicted_RBI | 0.401 | 0.011 |
| predicted_SLG | 0.400 | 0.001 |
| 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.031 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.145 | 0.000 |
| predicted_AVG | 0.261 | 0.003 |
| predicted_BB | 0.049 | 0.000 |
| predicted_H | 0.819 | 0.011 |
| predicted_HBP | 0.031 | 0.000 |
| predicted_HR | 0.104 | 0.001 |
| predicted_OBP | 0.272 | -0.042 |
| predicted_R | 0.942 | 0.023 |
| predicted_RBI | 0.411 | 0.010 |
| predicted_SLG | 0.372 | -0.028 |
| predicted_SO | 0.972 | -0.005 |
AB rounded to 3 (raw=3.15), rates preserved: AVG=0.261 HR/AB=0.033
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 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.031 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.145 |
| predicted_AVG | 0.333 | 0.073 |
| predicted_BB | 0.000 | -0.049 |
| predicted_H | 1.000 | 0.181 |
| predicted_HR | 0.000 | -0.104 |
| predicted_OBP | 0.333 | 0.061 |
| predicted_R | 1.000 | 0.058 |
| predicted_RBI | 0.000 | -0.411 |
| predicted_SLG | 0.333 | -0.039 |
| predicted_SO | 1.000 | 0.028 |
Attached 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 | 1 | - | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 0.3333 | 0.3333 | 0.3333 | 0.3333 | 0.0000 | 0.0000 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 1 | - | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 0.3333 | 0.3333 | 0.3333 | 0.3333 | 0.0000 | 0.0000 | 0.0000 | 0.3333 |
| season | 0.60 | 1 | - | 3.000 | 1.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 1.000 | 0.3333 | 0.3333 | 0.3333 | 0.3333 | 0.0000 | 0.0000 | 0.0000 | 0.3333 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1680 |
| predicted_3B | 0.0130 |
| predicted_AB | 3.7880 |
| predicted_AVG | 0.2579 |
| predicted_BB | 0.2650 |
| predicted_H | 0.9770 |
| predicted_HBP | 0.0310 |
| predicted_HR | 0.1170 |
| predicted_OBP | 0.3153 |
| predicted_R | 0.5590 |
| predicted_RBI | 0.4520 |
| predicted_SLG | 0.4020 |
| predicted_SO | 0.8750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.1680 | 0.0309 | model_form_blend |
| predicted_3B | 0.0000 | 0.0130 | 0.0024 | model_form_blend |
| predicted_AB | 3.0000 | 3.7880 | 3.1451 | model_form_blend |
| predicted_AVG | 0.2580 | 0.2579 | 0.2580 | model_form_blend |
| predicted_BB | 0.0000 | 0.2650 | 0.0488 | model_form_blend |
| predicted_H | 0.7700 | 0.9770 | 0.8081 | model_form_blend |
| predicted_HBP | - | 0.0310 | 0.0310 | form_only |
| predicted_HR | 0.1000 | 0.1170 | 0.1031 | model_form_blend |
| predicted_OBP | 0.3130 | 0.3153 | 0.3134 | model_form_blend |
| predicted_R | 1.0000 | 0.5590 | 0.9188 | model_form_blend |
| predicted_RBI | 0.3900 | 0.4520 | 0.4014 | model_form_blend |
| predicted_SLG | 0.3990 | 0.4020 | 0.3996 | model_form_blend |
| predicted_SO | 1.0000 | 0.8750 | 0.9770 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| Report year | 2026 |
| Profile rows used | 1 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.333 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 670156 |
| playerID | 670156 |
| playerName | Miles Mastrobuoni |
| pos | 3B |
| started | True |
| startingPosition | 2B |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-10 |
| Metric | 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.243 | 3.000 | 4.000 | Hitting_AB | 3.243 | 4.000 | -0.243 | -1.000 |
| predicted_AVG | 0.267 | 0.333 | 0.250 | Hitting_AVG | 0.192 | 0.250 | 0.142 | 0.083 |
| predicted_BB | 0.324 | 1.000 | 0.000 | Hitting_BB | 0.324 | 0.000 | 0.676 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.820 | 1.000 | 1.000 | Hitting_H | 0.622 | 1.000 | 0.378 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.054 | 0.000 | -0.054 | 0.000 |
| predicted_OBP | 0.337 | 0.500 | 0.250 | Hitting_OBP | 0.287 | 0.250 | 0.213 | 0.250 |
| predicted_R | 0.405 | 1.000 | 1.000 | Hitting_R | 0.405 | 1.000 | 0.595 | 0.000 |
| predicted_RBI | 0.360 | 1.000 | 0.000 | Hitting_RBI | 0.108 | 0.000 | 0.892 | 1.000 |
| predicted_SLG | 0.415 | 0.333 | 0.250 | Hitting_SLG | 0.242 | 0.250 | 0.092 | 0.083 |
| predicted_SO | 0.541 | 0.000 | 1.000 | Hitting_SO | 0.541 | 1.000 | -0.541 | -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_BB: 0.3240 -> 1.0000 (boost 0.6760, better) |
| Biggest Deboost | predicted_SO: 0.5410 -> 0.0000 (deboost -0.5410, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 5 | 2 | 4 | 3 | predicted_AB: 3.2430 -> 4.2593 (boost 1.0163, better) | predicted_SLG: 0.4150 -> 0.3864 (deboost -0.0286, 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.3864 -> 0.3530 (deboost -0.0334, 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.7100 -> 1.0000 (boost 0.2900, worse) | predicted_BB: 0.4261 -> 0.0000 (deboost -0.4261, worse) | AB rounded to 4 (raw=4.26), rates preserved: AVG=0.254 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5542 -> 1.0000 (boost 0.4458, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3530 -> 0.2500 (deboost -0.1030, 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 -> 1.0000 (boost 1.0000, better) | predicted_AB: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 2 | 0 | 2 | 0 | predicted_SLG: 0.2500 -> 0.3530 (boost 0.1030, 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.243,
"predicted_AVG": 0.267,
"predicted_BB": 0.324,
"predicted_H": 0.82,
"predicted_HR": 0.11,
"predicted_OBP": 0.337,
"predicted_R": 0.405,
"predicted_RBI": 0.36,
"predicted_SLG": 0.415,
"predicted_SO": 0.541
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0203,
"predicted_3B": 0.0016,
"predicted_AB": 4.2593,
"predicted_AVG": 0.2596,
"predicted_BB": 0.4241,
"predicted_H": 1.0666,
"predicted_HBP": 0.113,
"predicted_HR": 0.131,
"predicted_OBP": 0.3339,
"predicted_R": 0.5408,
"predicted_RBI": 0.4029,
"predicted_SLG": 0.3864,
"predicted_SO": 0.7134
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0203,
"delta": 0.0203,
"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.243,
"after": 4.2593,
"delta": 1.0163,
"percent_delta": 0.3134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2596,
"delta": -0.0074,
"percent_delta": -0.0277,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.324,
"after": 0.4241,
"delta": 0.1001,
"percent_delta": 0.309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 1.0666,
"delta": 0.2466,
"percent_delta": 0.3007,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.131,
"delta": 0.021,
"percent_delta": 0.1909,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.3339,
"delta": -0.0031,
"percent_delta": -0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.405,
"after": 0.5408,
"delta": 0.1358,
"percent_delta": 0.3353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.4029,
"delta": 0.0429,
"percent_delta": 0.1192,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.3864,
"delta": -0.0286,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.541,
"after": 0.7134,
"delta": 0.1724,
"percent_delta": 0.3187,
"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.243,
"after": 4.2593,
"delta": 1.0163,
"percent_delta": 0.3134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.3864,
"delta": -0.0286,
"percent_delta": -0.0689,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 8,
"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.0203,
"predicted_3B": 0.0016,
"predicted_AB": 4.2593,
"predicted_AVG": 0.2539,
"predicted_BB": 0.4261,
"predicted_H": 1.0815,
"predicted_HBP": 0.113,
"predicted_HR": 0.1328,
"predicted_OBP": 0.3218,
"predicted_R": 0.5542,
"predicted_RBI": 0.4129,
"predicted_SLG": 0.353,
"predicted_SO": 0.71
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0203,
"after": 0.0203,
"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.2593,
"after": 4.2593,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2596,
"after": 0.2539,
"delta": -0.0057,
"percent_delta": -0.022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4241,
"after": 0.4261,
"delta": 0.002,
"percent_delta": 0.0047,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0666,
"after": 1.0815,
"delta": 0.0149,
"percent_delta": 0.014,
"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.131,
"after": 0.1328,
"delta": 0.0018,
"percent_delta": 0.0137,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3339,
"after": 0.3218,
"delta": -0.0121,
"percent_delta": -0.0362,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5408,
"after": 0.5542,
"delta": 0.0134,
"percent_delta": 0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4029,
"after": 0.4129,
"delta": 0.01,
"percent_delta": 0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3864,
"after": 0.353,
"delta": -0.0334,
"percent_delta": -0.0864,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7134,
"after": 0.71,
"delta": -0.0034,
"percent_delta": -0.0048,
"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.3864,
"after": 0.353,
"delta": -0.0334,
"percent_delta": -0.0864,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.26), rates preserved: AVG=0.254 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.0203,
"after": 0.0,
"delta": -0.0203,
"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.2593,
"after": 4.0,
"delta": -0.2593,
"percent_delta": -0.0609,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4261,
"after": 0.0,
"delta": -0.4261,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0815,
"after": 1.0,
"delta": -0.0815,
"percent_delta": -0.0754,
"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.1328,
"after": 0.0,
"delta": -0.1328,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4129,
"after": 0.0,
"delta": -0.4129,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.71,
"after": 1.0,
"delta": 0.29,
"percent_delta": 0.4085,
"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.71,
"after": 1.0,
"delta": 0.29,
"percent_delta": 0.4085,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4261,
"after": 0.0,
"delta": -0.4261,
"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.5542,
"after": 1.0,
"delta": 0.4458,
"percent_delta": 0.8044,
"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.5542,
"after": 1.0,
"delta": 0.4458,
"percent_delta": 0.8044,
"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.2539,
"after": 0.25,
"delta": -0.0039,
"percent_delta": -0.0154,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3218,
"after": 0.25,
"delta": -0.0718,
"percent_delta": -0.2231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.353,
"after": 0.25,
"delta": -0.103,
"percent_delta": -0.2918,
"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.353,
"after": 0.25,
"delta": -0.103,
"percent_delta": -0.2918,
"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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 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": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 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.2539,
"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.3218,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.353,
"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.2539,
"delta": 0.0039,
"percent_delta": 0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.25,
"after": 0.3218,
"delta": 0.0718,
"percent_delta": 0.2871,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 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.353,
"delta": 0.103,
"percent_delta": 0.4119,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 2,
"deboosted_metrics": 0,
"better_metrics": 2,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.353,
"delta": 0.103,
"percent_delta": 0.4119,
"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.243,
"after": 3.0,
"delta": -0.243,
"percent_delta": -0.0749,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2539,
"delta": -0.0131,
"percent_delta": -0.0491,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.324,
"after": 1.0,
"delta": 0.676,
"percent_delta": 2.0864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.82,
"after": 1.0,
"delta": 0.18,
"percent_delta": 0.2195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.337,
"after": 0.3218,
"delta": -0.0152,
"percent_delta": -0.0451,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.405,
"after": 1.0,
"delta": 0.595,
"percent_delta": 1.4691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 1.0,
"delta": 0.64,
"percent_delta": 1.7778,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.415,
"after": 0.353,
"delta": -0.062,
"percent_delta": -0.1494,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.541,
"after": 0.0,
"delta": -0.541,
"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_BB",
"before": 0.324,
"after": 1.0,
"delta": 0.676,
"percent_delta": 2.0864,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.541,
"after": 0.0,
"delta": -0.541,
"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.000 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.243 | - |
| predicted_AVG | 0.267 | - |
| predicted_BB | 0.324 | - |
| predicted_H | 0.820 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.337 | - |
| predicted_R | 0.405 | - |
| predicted_RBI | 0.360 | - |
| predicted_SLG | 0.415 | - |
| predicted_SO | 0.541 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.020 | 0.020 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 4.259 | 1.016 |
| predicted_AVG | 0.260 | -0.007 |
| predicted_BB | 0.424 | 0.100 |
| predicted_H | 1.067 | 0.247 |
| predicted_HBP | 0.113 | - |
| predicted_HR | 0.131 | 0.021 |
| predicted_OBP | 0.334 | -0.003 |
| predicted_R | 0.541 | 0.136 |
| predicted_RBI | 0.403 | 0.043 |
| predicted_SLG | 0.386 | -0.029 |
| predicted_SO | 0.713 | 0.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.020 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 4.259 | 0.000 |
| predicted_AVG | 0.254 | -0.006 |
| predicted_BB | 0.426 | 0.002 |
| predicted_H | 1.081 | 0.015 |
| predicted_HBP | 0.113 | 0.000 |
| predicted_HR | 0.133 | 0.002 |
| predicted_OBP | 0.322 | -0.012 |
| predicted_R | 0.554 | 0.013 |
| predicted_RBI | 0.413 | 0.010 |
| predicted_SLG | 0.353 | -0.033 |
| predicted_SO | 0.710 | -0.003 |
AB rounded to 4 (raw=4.26), rates preserved: AVG=0.254 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 | 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.020 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | -0.259 |
| predicted_AVG | 0.250 | -0.004 |
| predicted_BB | 0.000 | -0.426 |
| predicted_H | 1.000 | -0.081 |
| predicted_HR | 0.000 | -0.133 |
| predicted_OBP | 0.250 | -0.072 |
| predicted_R | 1.000 | 0.446 |
| predicted_RBI | 0.000 | -0.413 |
| predicted_SLG | 0.250 | -0.103 |
| predicted_SO | 1.000 | 0.290 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 1.000 | 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 | 7.000 | 0.000 | 0.000 | 1.000 | 3.000 | 2.000 | 1.000 | 3.000 | 0.3889 | 0.4211 | 0.5556 | 0.3889 | 0.0556 | 0.1667 | 0.0556 | 0.1667 |
| last_10 | 0.20 | 8 | - | 34.000 | 10.000 | 0.000 | 0.000 | 1.000 | 3.000 | 6.000 | 7.000 | 3.000 | 0.2941 | 0.4146 | 0.3824 | 0.2941 | 0.0294 | 0.0882 | 0.2059 | 0.0882 |
| season | 0.60 | 16 | - | 120.000 | 23.000 | 0.000 | 0.000 | 2.000 | 4.000 | 15.000 | 12.000 | 20.000 | 0.1917 | 0.2868 | 0.2417 | 0.1917 | 0.0167 | 0.0333 | 0.1000 | 0.1667 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0510 |
| predicted_3B | 0.0040 |
| predicted_AB | 5.8020 |
| predicted_AVG | 0.2484 |
| predicted_BB | 0.5760 |
| predicted_H | 1.4410 |
| predicted_HBP | 0.1130 |
| predicted_HR | 0.1630 |
| predicted_OBP | 0.3292 |
| predicted_R | 0.7470 |
| predicted_RBI | 0.4680 |
| predicted_SLG | 0.3429 |
| predicted_SO | 0.9750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0000 | 0.0510 | 0.0203 | model_form_blend |
| predicted_3B | 0.0000 | 0.0040 | 0.0016 | model_form_blend |
| predicted_AB | 3.2430 | 5.8020 | 4.2593 | model_form_blend |
| predicted_AVG | 0.2670 | 0.2484 | 0.2596 | model_form_blend |
| predicted_BB | 0.3240 | 0.5760 | 0.4241 | model_form_blend |
| predicted_H | 0.8200 | 1.4410 | 1.0666 | model_form_blend |
| predicted_HBP | - | 0.1130 | 0.1130 | form_only |
| predicted_HR | 0.1100 | 0.1630 | 0.1310 | model_form_blend |
| predicted_OBP | 0.3370 | 0.3292 | 0.3339 | model_form_blend |
| predicted_R | 0.4050 | 0.7470 | 0.5408 | model_form_blend |
| predicted_RBI | 0.3600 | 0.4680 | 0.4029 | model_form_blend |
| predicted_SLG | 0.4150 | 0.3429 | 0.3864 | model_form_blend |
| predicted_SO | 0.5410 | 0.9750 | 0.7134 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 37 |
| Season rows before report date | 37 |
| Report year | 2026 |
| Profile rows used | 37 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.192 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260608_SEA@BAL |
| game_type | full |
| mlbID | 640902 |
| playerID | 640902 |
| playerName | Jhonny Pereda |
| pos | C |
| started | True |
| startingPosition | C |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-08 |
| sl_k_percent | 14.0 |
| sl_bb_percent | 7.0 |
| sl_woba | 0.339 |
| sl_xwoba | 0.372 |
| sl_xba | 0.329 |
| sl_xslg | 0.457 |
| sl_sweet_spot_percent | 50.0 |
| sl_barrel_batted_rate | 4.5 |
| sl_hard_hit_percent | 50.0 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 12.0 |
| sl_whiff_percent | 18.9 |
| sl_swing_percent | 48.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.333 | 1.000 | 0.000 | Hitting_2B | 0.333 | 1.000 | 0.667 | 0.000 |
| predicted_3B | 0.095 | 0.000 | 0.000 | Hitting_3B | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_AB | 3.238 | 4.000 | 4.000 | Hitting_AB | 3.238 | 3.000 | 0.762 | 1.000 |
| predicted_AVG | 0.242 | 0.250 | 0.250 | Hitting_AVG | 0.279 | 0.333 | -0.029 | -0.083 |
| predicted_BB | 0.310 | 0.000 | 0.000 | Hitting_BB | 0.310 | 0.000 | -0.310 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.710 | 1.000 | 1.000 | Hitting_H | 0.905 | 1.000 | 0.095 | 0.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_OBP | 0.306 | 0.250 | 0.250 | Hitting_OBP | 0.359 | 0.500 | -0.109 | -0.250 |
| predicted_R | 0.548 | 1.000 | 1.000 | Hitting_R | 0.548 | 1.000 | 0.452 | 0.000 |
| predicted_RBI | 0.420 | 1.000 | 1.000 | Hitting_RBI | 0.667 | 1.000 | 0.333 | 0.000 |
| predicted_SLG | 0.465 | 0.500 | 0.250 | Hitting_SLG | 0.596 | 0.667 | -0.096 | -0.167 |
| predicted_SO | 0.857 | 1.000 | 1.000 | Hitting_SO | 0.857 | 2.000 | 0.143 | -1.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_AB: 3.2380 -> 4.0000 (boost 0.7620, better) |
| Biggest Deboost | predicted_BB: 0.3100 -> 0.0000 (deboost -0.3100, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.2380 -> 4.1121 (boost 0.8741, 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.5010 -> 0.5392 (boost 0.0382, better) | predicted_OBP: 0.3138 -> 0.3008 (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 | 1 | 7 | 2 | 6 | predicted_RBI: 0.6409 -> 1.0000 (boost 0.3591, better) | predicted_2B: 0.3901 -> 0.0000 (deboost -0.3901, worse) | AB rounded to 4 (raw=4.11), rates preserved: AVG=0.245 HR/AB=0.050 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6666 -> 1.0000 (boost 0.3334, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2449 -> 0.2500 (boost 0.0051, better) | predicted_SLG: 0.5392 -> 0.2500 (deboost -0.2892, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.5392 (boost 0.2892, better) | predicted_AVG: 0.2500 -> 0.2449 (deboost -0.0051, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "806068",
"player_name": "Colt Emerson",
"position": "SS",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.333,
"predicted_3B": 0.095,
"predicted_AB": 3.238,
"predicted_AVG": 0.242,
"predicted_BB": 0.31,
"predicted_H": 0.71,
"predicted_HR": 0.14,
"predicted_OBP": 0.306,
"predicted_R": 0.548,
"predicted_RBI": 0.42,
"predicted_SLG": 0.465,
"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.3901,
"predicted_3B": 0.1006,
"predicted_AB": 4.1121,
"predicted_AVG": 0.2498,
"predicted_BB": 0.3277,
"predicted_H": 0.993,
"predicted_HBP": 0.164,
"predicted_HR": 0.2035,
"predicted_OBP": 0.3138,
"predicted_R": 0.6505,
"predicted_RBI": 0.6255,
"predicted_SLG": 0.501,
"predicted_SO": 1.167
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.333,
"after": 0.3901,
"delta": 0.0571,
"percent_delta": 0.1715,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.095,
"after": 0.1006,
"delta": 0.0056,
"percent_delta": 0.0589,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.238,
"after": 4.1121,
"delta": 0.8741,
"percent_delta": 0.27,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2498,
"delta": 0.0078,
"percent_delta": 0.0322,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 0.3277,
"delta": 0.0177,
"percent_delta": 0.0571,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 0.993,
"delta": 0.283,
"percent_delta": 0.3986,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2035,
"delta": 0.0635,
"percent_delta": 0.4536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.3138,
"delta": 0.0078,
"percent_delta": 0.0255,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.548,
"after": 0.6505,
"delta": 0.1025,
"percent_delta": 0.187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.6255,
"delta": 0.2055,
"percent_delta": 0.4893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.501,
"delta": 0.036,
"percent_delta": 0.0774,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.857,
"after": 1.167,
"delta": 0.31,
"percent_delta": 0.3617,
"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.238,
"after": 4.1121,
"delta": 0.8741,
"percent_delta": 0.27,
"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": 19
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3901,
"predicted_3B": 0.1006,
"predicted_AB": 4.1121,
"predicted_AVG": 0.2449,
"predicted_BB": 0.3292,
"predicted_H": 1.0069,
"predicted_HBP": 0.164,
"predicted_HR": 0.2063,
"predicted_OBP": 0.3008,
"predicted_R": 0.6666,
"predicted_RBI": 0.6409,
"predicted_SLG": 0.5392,
"predicted_SO": 1.1615
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3901,
"after": 0.3901,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1006,
"after": 0.1006,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.1121,
"after": 4.1121,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2498,
"after": 0.2449,
"delta": -0.0049,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3277,
"after": 0.3292,
"delta": 0.0015,
"percent_delta": 0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.993,
"after": 1.0069,
"delta": 0.0139,
"percent_delta": 0.014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.164,
"after": 0.164,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2035,
"after": 0.2063,
"delta": 0.0028,
"percent_delta": 0.0138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3138,
"after": 0.3008,
"delta": -0.013,
"percent_delta": -0.0414,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6505,
"after": 0.6666,
"delta": 0.0161,
"percent_delta": 0.0248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6255,
"after": 0.6409,
"delta": 0.0154,
"percent_delta": 0.0246,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.501,
"after": 0.5392,
"delta": 0.0382,
"percent_delta": 0.0762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 1.1615,
"delta": -0.0055,
"percent_delta": -0.0047,
"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.501,
"after": 0.5392,
"delta": 0.0382,
"percent_delta": 0.0762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3138,
"after": 0.3008,
"delta": -0.013,
"percent_delta": -0.0414,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.11), rates preserved: AVG=0.245 HR/AB=0.050",
"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.3901,
"after": 0.0,
"delta": -0.3901,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1006,
"after": 0.0,
"delta": -0.1006,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.1121,
"after": 4.0,
"delta": -0.1121,
"percent_delta": -0.0273,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3292,
"after": 0.0,
"delta": -0.3292,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0069,
"after": 1.0,
"delta": -0.0069,
"percent_delta": -0.0069,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.164,
"after": 0.0,
"delta": -0.164,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2063,
"after": 0.0,
"delta": -0.2063,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6409,
"after": 1.0,
"delta": 0.3591,
"percent_delta": 0.5603,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1615,
"after": 1.0,
"delta": -0.1615,
"percent_delta": -0.139,
"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.6409,
"after": 1.0,
"delta": 0.3591,
"percent_delta": 0.5603,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3901,
"after": 0.0,
"delta": -0.3901,
"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.6666,
"after": 1.0,
"delta": 0.3334,
"percent_delta": 0.5002,
"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.6666,
"after": 1.0,
"delta": 0.3334,
"percent_delta": 0.5002,
"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.2449,
"after": 0.25,
"delta": 0.0051,
"percent_delta": 0.0208,
"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.3008,
"after": 0.25,
"delta": -0.0508,
"percent_delta": -0.1689,
"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.5392,
"after": 0.25,
"delta": -0.2892,
"percent_delta": -0.5364,
"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.2449,
"after": 0.25,
"delta": 0.0051,
"percent_delta": 0.0208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5392,
"after": 0.25,
"delta": -0.2892,
"percent_delta": -0.5364,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 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": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2449,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3008,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5392,
"predicted_SO": 1.0,
"predicted_SS": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2449,
"delta": -0.0051,
"percent_delta": -0.0205,
"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.3008,
"delta": 0.0508,
"percent_delta": 0.2034,
"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.5392,
"delta": 0.2892,
"percent_delta": 1.1567,
"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.5392,
"delta": 0.2892,
"percent_delta": 1.1567,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2449,
"delta": -0.0051,
"percent_delta": -0.0205,
"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.095,
"after": 0.0,
"delta": -0.095,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.238,
"after": 4.0,
"delta": 0.762,
"percent_delta": 0.2353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.242,
"after": 0.2449,
"delta": 0.0029,
"percent_delta": 0.012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.31,
"after": 0.0,
"delta": -0.31,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.71,
"after": 1.0,
"delta": 0.29,
"percent_delta": 0.4085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.0,
"delta": -0.14,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.306,
"after": 0.3008,
"delta": -0.0052,
"percent_delta": -0.017,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.548,
"after": 1.0,
"delta": 0.452,
"percent_delta": 0.8248,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 1.0,
"delta": 0.58,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.465,
"after": 0.5392,
"delta": 0.0742,
"percent_delta": 0.1596,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.857,
"after": 1.0,
"delta": 0.143,
"percent_delta": 0.1669,
"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_AB",
"before": 3.238,
"after": 4.0,
"delta": 0.762,
"percent_delta": 0.2353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.31,
"after": 0.0,
"delta": -0.31,
"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.333 | - |
| predicted_3B | 0.095 | - |
| predicted_AB | 3.238 | - |
| predicted_AVG | 0.242 | - |
| predicted_BB | 0.310 | - |
| predicted_H | 0.710 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.306 | - |
| predicted_R | 0.548 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.465 | - |
| 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.390 | 0.057 |
| predicted_3B | 0.101 | 0.006 |
| predicted_AB | 4.112 | 0.874 |
| predicted_AVG | 0.250 | 0.008 |
| predicted_BB | 0.328 | 0.018 |
| predicted_H | 0.993 | 0.283 |
| predicted_HBP | 0.164 | - |
| predicted_HR | 0.203 | 0.063 |
| predicted_OBP | 0.314 | 0.008 |
| predicted_R | 0.650 | 0.102 |
| predicted_RBI | 0.625 | 0.205 |
| predicted_SLG | 0.501 | 0.036 |
| predicted_SO | 1.167 | 0.310 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.390 | 0.000 |
| predicted_3B | 0.101 | 0.000 |
| predicted_AB | 4.112 | 0.000 |
| predicted_AVG | 0.245 | -0.005 |
| predicted_BB | 0.329 | 0.002 |
| predicted_H | 1.007 | 0.014 |
| predicted_HBP | 0.164 | 0.000 |
| predicted_HR | 0.206 | 0.003 |
| predicted_OBP | 0.301 | -0.013 |
| predicted_R | 0.667 | 0.016 |
| predicted_RBI | 0.641 | 0.015 |
| predicted_SLG | 0.539 | 0.038 |
| predicted_SO | 1.161 | -0.006 |
AB rounded to 4 (raw=4.11), rates preserved: AVG=0.245 HR/AB=0.050
| 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.390 |
| predicted_3B | 0.000 | -0.101 |
| predicted_AB | 4.000 | -0.112 |
| predicted_AVG | 0.250 | 0.005 |
| predicted_BB | 0.000 | -0.329 |
| predicted_H | 1.000 | -0.007 |
| predicted_HR | 0.000 | -0.206 |
| predicted_OBP | 0.250 | -0.051 |
| predicted_R | 1.000 | 0.333 |
| predicted_RBI | 1.000 | 0.359 |
| predicted_SLG | 0.250 | -0.289 |
| 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 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 0.000 |
| RBI | 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 | 4.000 | 2.000 | 0.000 | 1.000 | 2.000 | 2.000 | 0.000 | 7.000 | 0.2222 | 0.2632 | 0.5000 | 0.2222 | 0.0556 | 0.1111 | 0.0000 | 0.3889 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 2.000 | 1.000 | 3.000 | 6.000 | 5.000 | 1.000 | 14.000 | 0.2571 | 0.2973 | 0.6286 | 0.2571 | 0.0857 | 0.1714 | 0.0286 | 0.4000 |
| season | 0.60 | 19 | - | 136.000 | 38.000 | 14.000 | 4.000 | 7.000 | 28.000 | 23.000 | 13.000 | 36.000 | 0.2794 | 0.3595 | 0.5956 | 0.2794 | 0.0515 | 0.2059 | 0.0956 | 0.2647 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4750 |
| predicted_3B | 0.1090 |
| predicted_AB | 5.4120 |
| predicted_AVG | 0.2613 |
| predicted_BB | 0.3540 |
| predicted_H | 1.4140 |
| predicted_HBP | 0.1640 |
| predicted_HR | 0.2980 |
| predicted_OBP | 0.3255 |
| predicted_R | 0.8030 |
| predicted_RBI | 0.9310 |
| predicted_SLG | 0.5545 |
| predicted_SO | 1.6280 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3330 | 0.4750 | 0.3901 | model_form_blend |
| predicted_3B | 0.0950 | 0.1090 | 0.1006 | model_form_blend |
| predicted_AB | 3.2380 | 5.4120 | 4.1121 | model_form_blend |
| predicted_AVG | 0.2420 | 0.2613 | 0.2498 | model_form_blend |
| predicted_BB | 0.3100 | 0.3540 | 0.3277 | model_form_blend |
| predicted_H | 0.7100 | 1.4140 | 0.9930 | model_form_blend |
| predicted_HBP | - | 0.1640 | 0.1640 | form_only |
| predicted_HR | 0.1400 | 0.2980 | 0.2035 | model_form_blend |
| predicted_OBP | 0.3060 | 0.3255 | 0.3138 | model_form_blend |
| predicted_R | 0.5480 | 0.8030 | 0.6505 | model_form_blend |
| predicted_RBI | 0.4200 | 0.9310 | 0.6255 | model_form_blend |
| predicted_SLG | 0.4650 | 0.5545 | 0.5010 | model_form_blend |
| predicted_SO | 0.8570 | 1.6280 | 1.1670 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 42 |
| Season rows before report date | 42 |
| Report year | 2026 |
| Profile rows used | 42 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.279 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_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 | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260607_SEA@DET |
| game_type | full |
| mlbID | 806068 |
| playerID | 806068 |
| playerName | Colt Emerson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-07 |
| sl_k_percent | 30.4 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.373 |
| sl_xwoba | 0.232 |
| sl_xba | 0.159 |
| sl_xslg | 0.257 |
| sl_sweet_spot_percent | 36.6 |
| sl_barrel_batted_rate | 4.9 |
| sl_hard_hit_percent | 31.7 |
| sl_exit_velocity_avg | 88.0 |
| sl_launch_angle_avg | 18.3 |
| sl_whiff_percent | 31.8 |
| sl_swing_percent | 49.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 1.077 | 0.000 | 1.923 | 3.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 2.462 | 5.000 | -0.462 | -3.000 |
| predicted_H | 5.000 | 5.000 | 5.000 | Pitching_H | 4.846 | 9.000 | 0.154 | -4.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 5.869 | 6.100 | 0.131 | -0.100 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 5.769 | 7.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 | 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": "693433",
"player_name": "Bryan Woo",
"position": "Starter",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 6.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": "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": 2.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 6.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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": 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": 3,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 2.0,
"predicted_H": 5.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_R": 2.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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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": 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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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": 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,
"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 | 2.000 | - |
| predicted_H | 5.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 6.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 | 2.000 | 0.000 |
| predicted_H | 5.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 6.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 | 30.000 | 11.000 | 24.000 | 6.000 | 37.000 | 1.000 | 3.3000 | 1.0000 | 0.3667 | 0.8000 | 0.2000 | 1.2333 | 0.0333 |
| last_10 | 0.35 | 10 | 59.000 | 29.000 | 53.000 | 10.000 | 58.000 | 7.000 | 4.4237 | 1.0678 | 0.4915 | 0.8983 | 0.1695 | 0.9830 | 0.1186 |
| season | 0.20 | 13 | 77.000 | 32.000 | 63.000 | 14.000 | 75.000 | 7.000 | 3.7403 | 1.0000 | 0.4156 | 0.8182 | 0.1818 | 0.9740 | 0.0909 |
| Metric | Value |
|---|---|
| predicted_BB | 1.4130 |
| predicted_ER | 2.6310 |
| predicted_ERA | 3.9461 |
| predicted_H | 5.2310 |
| predicted_HR | 0.5580 |
| predicted_IP | 6.0000 |
| predicted_SO | 6.3000 |
| predicted_WHIP | 1.1074 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 1.4130 | 2.1547 | model_form_blend |
| predicted_ER | 2.0000 | 2.6310 | 2.3361 | model_form_blend |
| predicted_ERA | - | 3.9461 | 3.9461 | form_only |
| predicted_H | 5.0000 | 5.2310 | 5.1230 | model_form_blend |
| predicted_HR | 0.0000 | 0.5580 | 0.2972 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 6.0000 | 6.3000 | 6.1598 | model_form_blend |
| predicted_WHIP | - | 1.1074 | 1.1074 | 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.0 |
| H | 5 |
| R | 2 |
| ER | 2 |
| BB | 3 |
| SO | 6 |
| HR | 0 |
| BF | 26 |
| Pitches | 103 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 27 |
| Pitching_ER | 5 |
| Pitching_ERA | 3.74 |
| Pitching_Flyouts | 3 |
| Pitching_Groundouts | 5 |
| Pitching_H | 9 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 6.1 |
| Pitching_Pitches | 90 |
| Pitching_R | 5 |
| Pitching_SO | 7 |
| Pitching_Strikes | 61 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_SEA@DET |
| game_type | full |
| mlbID | 693433 |
| playerID | 693433 |
| playerName | Bryan Woo |
| pos | P |
| started | True |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-05 |
| sl_k_percent | 24.5 |
| sl_bb_percent | 4.6 |
| sl_woba | 0.26 |
| sl_xwoba | 0.272 |
| sl_sweet_spot_percent | 31.6 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 44.2 |
| sl_whiff_percent | 24.5 |
| sl_swing_percent | 54.1 |
| sl_avg_best_speed | 78.744912336 |
| sl_avg_hyper_speed | 94.581953131 |
| 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.538 | 0.000 | -0.538 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.885 | 0.000 | -0.885 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.873 | 1.000 | 0.127 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.423 | 2.000 | -1.423 | -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": "662253",
"player_name": "Andrés Muñoz",
"position": "Middle Reliever",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.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 | 4.000 | 5.000 | 3.000 | 5.000 | 1.000 | 7.7143 | 1.7143 | 0.8571 | 1.0714 | 0.6429 | 1.0714 | 0.2143 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 9.000 | 3.000 | 12.000 | 1.000 | 3.8571 | 1.2857 | 0.4286 | 0.9643 | 0.3214 | 1.2857 | 0.1071 |
| season | 0.20 | 26 | 24.100 | 14.000 | 23.000 | 10.000 | 37.000 | 4.000 | 5.1781 | 1.3562 | 0.5753 | 0.9452 | 0.4110 | 1.5206 | 0.1644 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4230 |
| predicted_ER | 0.5670 |
| predicted_ERA | 5.1012 |
| predicted_H | 0.9840 |
| predicted_HR | 0.1540 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0830 |
| predicted_WHIP | 1.4071 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4230 | 0.1838 | model_form_blend |
| predicted_ER | 0.0000 | 0.5670 | 0.2464 | model_form_blend |
| predicted_ERA | - | 5.1012 | 5.1012 | form_only |
| predicted_H | 0.0000 | 0.9840 | 0.4277 | model_form_blend |
| predicted_HR | 0.0000 | 0.1540 | 0.0669 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0830 | 0.4707 | model_form_blend |
| predicted_WHIP | - | 1.4071 | 1.4071 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 26 |
| Season rows before report date | 26 |
| Report year | 2026 |
| Profile rows used | 26 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 5.18 |
| 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 | 20 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260608_SEA@BAL |
| 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-08 |
| sl_k_percent | 34.3 |
| sl_bb_percent | 9.3 |
| sl_woba | 0.313 |
| sl_xwoba | 0.327 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 11.7 |
| sl_hard_hit_percent | 48.3 |
| sl_whiff_percent | 42.0 |
| sl_swing_percent | 46.3 |
| sl_avg_best_speed | 76.781729333 |
| sl_avg_hyper_speed | 95.238360847 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 0.344 | 1.000 | 2.656 | 2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.250 | 1.000 | 0.750 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.969 | 2.000 | 0.031 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.791 | 1.000 | 0.209 | 0.000 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.812 | 0.000 | 1.188 | 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": "660825",
"player_name": "Eduard Bazardo",
"position": "Middle Reliever",
"team": "SEA",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 1.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": 3.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 1.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": 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": 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": 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": 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 | 3.000 | - |
| predicted_ER | 1.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 | 5.100 | 2.000 | 6.000 | 1.000 | 3.000 | 0.000 | 3.3750 | 1.3125 | 0.3750 | 1.1250 | 0.1875 | 0.5625 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 3.000 | 13.000 | 4.000 | 9.000 | 1.000 | 2.6129 | 1.6452 | 0.2903 | 1.2581 | 0.3871 | 0.8710 | 0.0968 |
| season | 0.20 | 32 | 30.200 | 8.000 | 31.000 | 11.000 | 26.000 | 2.000 | 2.3478 | 1.3696 | 0.2609 | 1.0109 | 0.3587 | 0.8478 | 0.0652 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3250 |
| predicted_ER | 0.3960 |
| predicted_ERA | 3.5683 |
| predicted_H | 1.0630 |
| predicted_HR | 0.0890 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8220 |
| predicted_WHIP | 1.3881 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 0.3250 | 1.7723 | model_form_blend |
| predicted_ER | 1.0000 | 0.3960 | 0.7228 | model_form_blend |
| predicted_ERA | - | 3.5683 | 3.5683 | form_only |
| predicted_H | 1.0000 | 1.0630 | 1.0289 | model_form_blend |
| predicted_HR | 0.0000 | 0.0890 | 0.0408 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.8220 | 1.4594 | model_form_blend |
| predicted_WHIP | - | 1.3881 | 1.3881 | 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 | 3 |
| SO | 2 |
| HR | 0 |
| BF | 7 |
| Pitches | 28 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 2.35 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 18 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 7 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260608_SEA@BAL |
| game_type | full |
| mlbID | 660825 |
| playerID | 660825 |
| playerName | Eduard Bazardo |
| pos | P |
| started | False |
| startingPosition | P |
| team | SEA |
| teamID | 25 |
| game_date | 2026-06-08 |
| sl_k_percent | 20.2 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.322 |
| sl_xwoba | 0.336 |
| sl_sweet_spot_percent | 38.5 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 41.8 |
| sl_whiff_percent | 21.0 |
| sl_swing_percent | 43.7 |
| sl_avg_best_speed | 81.580083333 |
| sl_avg_hyper_speed | 94.71989382 |
| 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.212 | 1.000 | -0.212 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.212 | 2.000 | -0.212 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.000 | 3.000 | -1.000 | -3.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.803 | 1.000 | 0.197 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.788 | 1.000 | 0.212 | 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": "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": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 1.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 2.000 | 4.000 | 4.000 | 4.000 | 1.000 | 4.1538 | 1.8462 | 0.4615 | 0.9231 | 0.9231 | 0.9231 | 0.2308 |
| last_10 | 0.35 | 10 | 7.200 | 3.000 | 7.000 | 4.000 | 8.000 | 2.000 | 3.5217 | 1.4348 | 0.3913 | 0.9130 | 0.5217 | 1.0435 | 0.2609 |
| season | 0.20 | 32 | 30.000 | 7.000 | 32.000 | 7.000 | 26.000 | 2.000 | 2.1000 | 1.3000 | 0.2333 | 1.0667 | 0.2333 | 0.8667 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4840 |
| predicted_ER | 0.4070 |
| predicted_ERA | 3.9119 |
| predicted_H | 0.8930 |
| predicted_HR | 0.1660 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8860 |
| predicted_WHIP | 1.4703 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4840 | 0.2210 | model_form_blend |
| predicted_ER | 0.0000 | 0.4070 | 0.1859 | model_form_blend |
| predicted_ERA | - | 3.9119 | 3.9119 | form_only |
| predicted_H | 0.0000 | 0.8930 | 0.4078 | model_form_blend |
| predicted_HR | 0.0000 | 0.1660 | 0.0758 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.8860 | 0.9479 | model_form_blend |
| predicted_WHIP | - | 1.4703 | 1.4703 | 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 | 32 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 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 | 8 |
| Pitching_ER | 2 |
| Pitching_ERA | 2.10 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 3 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 42 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 27 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W, BS |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260609_SEA@BAL |
| 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-09 |
| sl_k_percent | 19.7 |
| sl_bb_percent | 5.3 |
| sl_woba | 0.315 |
| sl_xwoba | 0.267 |
| sl_sweet_spot_percent | 27.1 |
| sl_barrel_batted_rate | 4.2 |
| sl_hard_hit_percent | 35.4 |
| sl_whiff_percent | 21.7 |
| sl_swing_percent | 52.7 |
| sl_avg_best_speed | 73.159734468 |
| sl_avg_hyper_speed | 93.10051617 |
| Field | Value |
|---|---|
| Pitcher | Kyle Bradish |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.0739 |
| ESPN Rank | 157 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0159 |
| Avg Velo | 89.9969 |
| Avg Spin | 2454.1334 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 4.2000 |
| Pre ER | 2 |
| Pre H | 7 |
| Pre BB | 2 |
| Pre SO | 3 |
| Season ERA | 3.8942 |
| Season WHIP | 1.5144 |
| Role Avg IP | 5.3330 |
| Recent Avg IP | 5.6670 |
| Last Start IP | 4 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"opponent": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"edges": {
"quality_edge": -0.1705,
"offense_edge": 0.0192,
"opponent_offense_edge": -0.0113,
"defense_strength": -0.0659,
"opponent_defense_weakness": -0.1302,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9917,
"run_prevention": 1.0133,
"strikeout": 0.9958
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "680694",
"profile": {
"available": true,
"pitcher_id": "680694",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 251.0,
"k_percent": 22.5,
"bb_percent": 11.9,
"woba": 0.344,
"xwoba": 0.318,
"sweet_spot_percent": 28.9,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 36.5,
"avg_best_speed": 76.671,
"avg_hyper_speed": 93.7519,
"whiff_percent": 25.5,
"swing_percent": 44.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1913,
"command_and_miss": -0.1629,
"regression_edge": 0.7429,
"xwoba_edge": -0.0857,
"barrel_edge": -0.6667,
"hard_hit_edge": 0.2714,
"whiff_edge": -0.0143,
"bb_edge": -0.725,
"pitch_design_score": 0.0159
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "680694",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 97,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 97,
"pitch_usage": 0.0,
"release_speed": 89.9968968546538,
"release_spin_rate": 2454.133371053351,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 97,
"pitch_usage": 0.0,
"release_speed": 89.9968968546538,
"release_spin_rate": 2454.133371053351,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9969,
"release_spin_rate": 2454.1334,
"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.0159,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1133,
"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.0739,
"sample_weight": 1.0,
"run_prevention_factor": 1.0063,
"strikeout_factor": 0.9983,
"walk_factor": 1.058,
"homer_factor": 1.045,
"woba_minus_xwoba": 0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "680694",
"espn_id": 4311625,
"player_name": "Kyle Bradish",
"team": "BAL",
"role": "pitcher",
"espn_rank": 157,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 157,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 5.0,
"qs_rank": 44,
"era_value": 3.8942,
"era_rank": 39.0,
"w_value": 3.0,
"w_rank": 92,
"l_value": 7.0,
"l_rank": 3,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 69.1,
"ip_rank": 59,
"h_value": 69.0,
"h_rank": 33,
"er_value": 30.0,
"er_rank": 67,
"hr_value": 8.0,
"hr_rank": 67,
"bb_value": 36.0,
"bb_rank": 3,
"k_value": 68.0,
"k_rank": 45,
"k_per_9_value": 8.826922,
"k_per_9_rank": 20,
"whip_value": 1.5144,
"whip_rank": 63.0,
"war_value": 0.59,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0063,
"adjusted": 2
},
"predicted_H": {
"original": 5.0,
"factor": 1.0063,
"adjusted": 5
},
"predicted_BB": {
"original": 3.0,
"factor": 1.058,
"adjusted": 3
},
"predicted_HR": {
"original": 1.0,
"factor": 1.045,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.9983,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 55.2,
"ER": 22,
"H": 55,
"BB": 27,
"SO": 51,
"HR": 7,
"ERA": 3.5568862275449105,
"WHIP": 1.473053892215569,
"K9": 8.245508982035929,
"HR9": 1.131736526946108,
"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-06T00:00:00"
}{
"available": true,
"pitcher_id": "680694",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 97,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 97,
"pitch_usage": 0.0,
"release_speed": 89.9968968546538,
"release_spin_rate": 2454.133371053351,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 97,
"pitch_usage": 0.0,
"release_speed": 89.9968968546538,
"release_spin_rate": 2454.133371053351,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.9969,
"release_spin_rate": 2454.1334,
"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.0159,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1133,
"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": "680694",
"report_date": "20260611_S",
"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": 23.0,
"BB": 14.0,
"SO": 23.0,
"HR": 3.0,
"BF": 117.0,
"Pitches": 469.0
},
"per_game": {
"IP": 5.2,
"ER": 1.6,
"R": 1.8,
"H": 4.6,
"BB": 2.8,
"SO": 4.6,
"HR": 0.6,
"BF": 23.4,
"Pitches": 93.8
},
"rates": {
"ERA": 2.5412,
"WHIP": 1.3059,
"ER_per_IP": 0.28235,
"H_per_IP": 0.81176,
"BB_per_IP": 0.49412,
"SO_per_IP": 0.81176,
"HR_per_IP": 0.10588
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 55.2,
"ER": 22.0,
"R": 25.0,
"H": 55.0,
"BB": 27.0,
"SO": 51.0,
"HR": 7.0,
"BF": 241.0,
"Pitches": 943.0
},
"per_game": {
"IP": 5.2,
"ER": 2.2,
"R": 2.5,
"H": 5.5,
"BB": 2.7,
"SO": 5.1,
"HR": 0.7,
"BF": 24.1,
"Pitches": 94.3
},
"rates": {
"ERA": 3.5569,
"WHIP": 1.4731,
"ER_per_IP": 0.39521,
"H_per_IP": 0.98802,
"BB_per_IP": 0.48503,
"SO_per_IP": 0.91617,
"HR_per_IP": 0.12575
}
},
"season": {
"games": 13,
"totals": {
"IP": 69.1,
"ER": 30.0,
"R": 35.0,
"H": 69.0,
"BB": 36.0,
"SO": 68.0,
"HR": 8.0,
"BF": 302.0,
"Pitches": 1203.0
},
"per_game": {
"IP": 5.1,
"ER": 2.3077,
"R": 2.6923,
"H": 5.3077,
"BB": 2.7692,
"SO": 5.2308,
"HR": 0.6154,
"BF": 23.2308,
"Pitches": 92.5385
},
"rates": {
"ERA": 3.8942,
"WHIP": 1.5144,
"ER_per_IP": 0.43269,
"H_per_IP": 0.99519,
"BB_per_IP": 0.51923,
"SO_per_IP": 0.98077,
"HR_per_IP": 0.11538
}
}
},
"weighted_prediction": {
"predicted_IP": 5.2,
"predicted_ER": 2.187,
"predicted_H": 5.191,
"predicted_BB": 2.582,
"predicted_SO": 5.04,
"predicted_HR": 0.685,
"predicted_ERA": 3.5026,
"predicted_WHIP": 1.3835
}
}{
"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": 2.0,
"form": 2.187,
"final": 2.0996,
"source": "model_form_blend"
},
"predicted_H": {
"model": 7.0,
"form": 5.191,
"final": 6.0365,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 2.0,
"form": 2.582,
"final": 2.31,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 3.0,
"form": 5.04,
"final": 4.0866,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.685,
"final": 0.3649,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.5026,
"final": 3.5026,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3835,
"final": 1.3835,
"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.1452 |
| ESPN Rank | 621 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1331 |
| Avg Velo | 92.0902 |
| Avg Spin | 2474.2387 |
| 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 | 7.2439 |
| Season WHIP | 1.6829 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"opponent": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"edges": {
"quality_edge": -0.1705,
"offense_edge": 0.0192,
"opponent_offense_edge": -0.0113,
"defense_strength": -0.0659,
"opponent_defense_weakness": -0.1302,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9917,
"run_prevention": 1.0133,
"strikeout": 0.9958
},
"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": 22.7,
"bb_percent": 7.6,
"woba": 0.371,
"xwoba": 0.286,
"sweet_spot_percent": 39.1,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 32.6,
"avg_best_speed": 74.2998,
"avg_hyper_speed": 93.1901,
"whiff_percent": 24.4,
"swing_percent": 53.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.1952,
"command_and_miss": 0.01,
"regression_edge": 2.0,
"xwoba_edge": 0.8286,
"barrel_edge": 0.1778,
"hard_hit_edge": 0.8286,
"whiff_edge": -0.1714,
"bb_edge": 0.35,
"pitch_design_score": 0.1331
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "552640",
"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": 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": 12,
"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.1331,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9506,
"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.1452,
"sample_weight": 0.45,
"run_prevention_factor": 0.9877,
"strikeout_factor": 0.9969,
"walk_factor": 0.9874,
"homer_factor": 0.9675,
"woba_minus_xwoba": 0.085,
"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": 621,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 621,
"gp_value": 16.0,
"gp_rank": 208,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 7.2439,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 13.2,
"ip_rank": 434,
"h_value": 19.0,
"h_rank": 317,
"er_value": 11.0,
"er_rank": 265,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 4.0,
"bb_rank": 490,
"k_value": 15.0,
"k_rank": 394,
"k_per_9_value": 9.878049,
"k_per_9_rank": 24,
"whip_value": 1.6829,
"whip_rank": null,
"war_value": -0.48,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9945,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9945,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9943,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9854,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9986,
"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": 4,
"H": 8,
"BB": 2,
"SO": 9,
"HR": 2,
"ERA": 4.0,
"WHIP": 1.1111111111111112,
"K9": 9.0,
"HR9": 2.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-09T00:00:00"
}{
"available": true,
"pitcher_id": "552640",
"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": 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": 12,
"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.1331,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9506,
"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.7,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3506,
"prior_weight": 0.6494
},
"role": "pitcher",
"player_id": "552640",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 16,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 5.0,
"BB": 0.0,
"SO": 7.0,
"HR": 1.0,
"BF": 20.0,
"Pitches": 66.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.0,
"SO": 1.4,
"HR": 0.2,
"BF": 4.0,
"Pitches": 13.2
},
"rates": {
"ERA": 3.6,
"WHIP": 1.0,
"ER_per_IP": 0.4,
"H_per_IP": 1.0,
"BB_per_IP": 0.0,
"SO_per_IP": 1.4,
"HR_per_IP": 0.2
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 4.0,
"R": 4.0,
"H": 8.0,
"BB": 2.0,
"SO": 9.0,
"HR": 2.0,
"BF": 37.0,
"Pitches": 124.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.2,
"SO": 0.9,
"HR": 0.2,
"BF": 3.7,
"Pitches": 12.4
},
"rates": {
"ERA": 4.0,
"WHIP": 1.1111,
"ER_per_IP": 0.44444,
"H_per_IP": 0.88889,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.0,
"HR_per_IP": 0.22222
}
},
"season": {
"games": 16,
"totals": {
"IP": 13.2,
"ER": 11.0,
"R": 13.0,
"H": 19.0,
"BB": 4.0,
"SO": 15.0,
"HR": 3.0,
"BF": 65.0,
"Pitches": 231.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6875,
"R": 0.8125,
"H": 1.1875,
"BB": 0.25,
"SO": 0.9375,
"HR": 0.1875,
"BF": 4.0625,
"Pitches": 14.4375
},
"rates": {
"ERA": 7.2439,
"WHIP": 1.6829,
"ER_per_IP": 0.80488,
"H_per_IP": 1.39024,
"BB_per_IP": 0.29268,
"SO_per_IP": 1.09756,
"HR_per_IP": 0.21951
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.49,
"predicted_H": 0.988,
"predicted_BB": 0.285,
"predicted_SO": 1.028,
"predicted_HR": 0.166,
"predicted_ERA": 4.4075,
"predicted_WHIP": 1.2724
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6244,
"form_weight": 0.3756,
"form_reliability": 0.3506,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 2.7,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.3506,
"prior_weight": 0.6494
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.49,
"final": 0.8084,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.988,
"final": 0.9955,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.285,
"final": 0.1071,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.028,
"final": 1.0105,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.166,
"final": 0.6867,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4075,
"final": 4.4075,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2724,
"final": 1.2724,
"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.4002 |
| ESPN Rank | 44 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0032 |
| Avg Velo | 89.7716 |
| Avg Spin | 2460.9712 |
| 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 | 1.2857 |
| Season WHIP | 0.6429 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"opponent": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"edges": {
"quality_edge": -0.1705,
"offense_edge": 0.0192,
"opponent_offense_edge": -0.0113,
"defense_strength": -0.0659,
"opponent_defense_weakness": -0.1302,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9917,
"run_prevention": 1.0133,
"strikeout": 0.9958
},
"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": 31.0,
"bb_percent": 9.0,
"woba": 0.185,
"xwoba": 0.256,
"sweet_spot_percent": 23.3,
"barrel_batted_rate": 8.3,
"hard_hit_percent": 33.3,
"avg_best_speed": 73.0628,
"avg_hyper_speed": 93.0292,
"whiff_percent": 37.9,
"swing_percent": 48.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.4116,
"command_and_miss": 1.1486,
"regression_edge": -2.0,
"xwoba_edge": 1.6857,
"barrel_edge": -0.2222,
"hard_hit_edge": 0.7286,
"whiff_edge": 1.7571,
"bb_edge": 0.0,
"pitch_design_score": 0.0032
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "670329",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 34,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 34,
"pitch_usage": 0.0,
"release_speed": 89.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": 34,
"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.0032,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0231,
"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.4002,
"sample_weight": 0.45,
"run_prevention_factor": 0.966,
"strikeout_factor": 1.053,
"walk_factor": 1.0,
"homer_factor": 0.9721,
"woba_minus_xwoba": -0.071,
"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": 44,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 44,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.2857,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 4.0,
"sv_rank": 29,
"hld_value": 8.0,
"hld_rank": 33,
"ip_value": 28.0,
"ip_rank": 251,
"h_value": 9.0,
"h_rank": 490,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 9.0,
"bb_rank": 315,
"k_value": 31.0,
"k_rank": 206,
"k_per_9_value": 9.964286,
"k_per_9_rank": 22,
"whip_value": 0.6428,
"whip_rank": null,
"war_value": 1.5,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9847,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9847,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9874,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0238,
"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": 3,
"H": 8,
"BB": 2,
"SO": 9,
"HR": 2,
"ERA": 3.0,
"WHIP": 1.1111111111111112,
"K9": 9.0,
"HR9": 2.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-09T00:00:00"
}{
"available": true,
"pitcher_id": "670329",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 34,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 34,
"pitch_usage": 0.0,
"release_speed": 89.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": 34,
"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.0032,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.0231,
"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.531,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5252,
"prior_weight": 0.4748
},
"role": "pitcher",
"player_id": "670329",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 2.0,
"R": 3.0,
"H": 3.0,
"BB": 0.0,
"SO": 4.0,
"HR": 2.0,
"BF": 17.0,
"Pitches": 61.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.6,
"H": 0.6,
"BB": 0.0,
"SO": 0.8,
"HR": 0.4,
"BF": 3.4,
"Pitches": 12.2
},
"rates": {
"ERA": 3.8571,
"WHIP": 0.6429,
"ER_per_IP": 0.42857,
"H_per_IP": 0.64286,
"BB_per_IP": 0.0,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.42857
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 3.0,
"R": 4.0,
"H": 8.0,
"BB": 2.0,
"SO": 9.0,
"HR": 2.0,
"BF": 36.0,
"Pitches": 138.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.4,
"H": 0.8,
"BB": 0.2,
"SO": 0.9,
"HR": 0.2,
"BF": 3.6,
"Pitches": 13.8
},
"rates": {
"ERA": 3.0,
"WHIP": 1.1111,
"ER_per_IP": 0.33333,
"H_per_IP": 0.88889,
"BB_per_IP": 0.22222,
"SO_per_IP": 1.0,
"HR_per_IP": 0.22222
}
},
"season": {
"games": 30,
"totals": {
"IP": 28.0,
"ER": 4.0,
"R": 5.0,
"H": 9.0,
"BB": 9.0,
"SO": 31.0,
"HR": 3.0,
"BF": 100.0,
"Pitches": 389.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1333,
"R": 0.1667,
"H": 0.3,
"BB": 0.3,
"SO": 1.0333,
"HR": 0.1,
"BF": 3.3333,
"Pitches": 12.9667
},
"rates": {
"ERA": 1.2857,
"WHIP": 0.6429,
"ER_per_IP": 0.14286,
"H_per_IP": 0.32143,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.10714,
"HR_per_IP": 0.10714
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.408,
"predicted_H": 0.805,
"predicted_BB": 0.248,
"predicted_SO": 0.947,
"predicted_HR": 0.22,
"predicted_ERA": 3.6751,
"predicted_WHIP": 1.0527
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5506,
"form_weight": 0.4494,
"form_reliability": 0.5252,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.531,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5252,
"prior_weight": 0.4748
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.408,
"final": 0.734,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.805,
"final": 0.9124,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.248,
"final": 0.6621,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.947,
"final": 0.4256,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.22,
"final": 0.0989,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.6751,
"final": 3.6751,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0527,
"final": 1.0527,
"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.0259 |
| ESPN Rank | 646 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0578 |
| Avg Velo | 90.7459 |
| Avg Spin | 2299.3568 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 0.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 4.4536 |
| Season WHIP | 1.1443 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"opponent": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"edges": {
"quality_edge": -0.1705,
"offense_edge": 0.0192,
"opponent_offense_edge": -0.0113,
"defense_strength": -0.0659,
"opponent_defense_weakness": -0.1302,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9917,
"run_prevention": 1.0133,
"strikeout": 0.9958
},
"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": 25.7,
"bb_percent": 8.6,
"woba": 0.316,
"xwoba": 0.315,
"sweet_spot_percent": 39.6,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 41.8,
"avg_best_speed": 78.0902,
"avg_hyper_speed": 94.3264,
"whiff_percent": 34.9,
"swing_percent": 47.9
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.2252,
"command_and_miss": 0.6779,
"regression_edge": 0.0286,
"xwoba_edge": 0.0,
"barrel_edge": -0.3333,
"hard_hit_edge": -0.4857,
"whiff_edge": 1.3286,
"bb_edge": 0.1,
"pitch_design_score": 0.0578
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "689296",
"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": 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": 19,
"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.0578,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4129,
"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.0259,
"sample_weight": 0.45,
"run_prevention_factor": 0.9978,
"strikeout_factor": 1.0316,
"walk_factor": 0.9964,
"homer_factor": 1.0207,
"woba_minus_xwoba": 0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "689296",
"espn_id": 5275196,
"player_name": "Anthony Nunez",
"team": "BAL",
"role": "pitcher",
"espn_rank": 646,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 646,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.2886,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 3.0,
"sv_rank": 43,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 32.1,
"ip_rank": 183,
"h_value": 29.0,
"h_rank": 194,
"er_value": 19.0,
"er_rank": 143,
"hr_value": 5.0,
"hr_rank": 138,
"bb_value": 12.0,
"bb_rank": 228,
"k_value": 36.0,
"k_rank": 168,
"k_per_9_value": 10.020618,
"k_per_9_rank": 24,
"whip_value": 1.268,
"whip_rank": null,
"war_value": -0.59,
"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.0093,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0142,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 11.0,
"ER": 10,
"H": 12,
"BB": 5,
"SO": 11,
"HR": 1,
"ERA": 8.181818181818182,
"WHIP": 1.5454545454545454,
"K9": 9.0,
"HR9": 0.8181818181818182,
"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-08T00:00:00"
}{
"available": true,
"pitcher_id": "689296",
"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": 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": 19,
"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.0578,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.4129,
"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.387,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5609,
"prior_weight": 0.4391
},
"role": "pitcher",
"player_id": "689296",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.2,
"ER": 5.0,
"R": 5.0,
"H": 7.0,
"BB": 4.0,
"SO": 8.0,
"HR": 1.0,
"BF": 32.0,
"Pitches": 119.0
},
"per_game": {
"IP": 1.1,
"ER": 1.0,
"R": 1.0,
"H": 1.4,
"BB": 0.8,
"SO": 1.6,
"HR": 0.2,
"BF": 6.4,
"Pitches": 23.8
},
"rates": {
"ERA": 6.75,
"WHIP": 1.65,
"ER_per_IP": 0.75,
"H_per_IP": 1.05,
"BB_per_IP": 0.6,
"SO_per_IP": 1.2,
"HR_per_IP": 0.15
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.0,
"ER": 10.0,
"R": 10.0,
"H": 12.0,
"BB": 5.0,
"SO": 11.0,
"HR": 1.0,
"BF": 51.0,
"Pitches": 204.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 1.2,
"BB": 0.5,
"SO": 1.1,
"HR": 0.1,
"BF": 5.1,
"Pitches": 20.4
},
"rates": {
"ERA": 8.1818,
"WHIP": 1.5455,
"ER_per_IP": 0.90909,
"H_per_IP": 1.09091,
"BB_per_IP": 0.45455,
"SO_per_IP": 1.0,
"HR_per_IP": 0.09091
}
},
"season": {
"games": 29,
"totals": {
"IP": 32.1,
"ER": 16.0,
"R": 20.0,
"H": 27.0,
"BB": 10.0,
"SO": 36.0,
"HR": 5.0,
"BF": 136.0,
"Pitches": 509.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5517,
"R": 0.6897,
"H": 0.931,
"BB": 0.3448,
"SO": 1.2414,
"HR": 0.1724,
"BF": 4.6897,
"Pitches": 17.5517
},
"rates": {
"ERA": 4.4536,
"WHIP": 1.1443,
"ER_per_IP": 0.49485,
"H_per_IP": 0.83505,
"BB_per_IP": 0.30928,
"SO_per_IP": 1.1134,
"HR_per_IP": 0.15464
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.597,
"predicted_H": 0.932,
"predicted_BB": 0.409,
"predicted_SO": 0.971,
"predicted_HR": 0.127,
"predicted_ERA": 5.7303,
"predicted_WHIP": 1.43
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5355,
"form_weight": 0.4645,
"form_reliability": 0.5609,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.387,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5609,
"prior_weight": 0.4391
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 1.0,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.597,
"final": 0.2773,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.932,
"final": 0.4329,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.409,
"final": 0.7255,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.971,
"final": 0.451,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.127,
"final": 0.059,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.7303,
"final": 5.7303,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.43,
"final": 1.43,
"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.1346 |
| ESPN Rank | 151 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1256 |
| Avg Velo | 91.9570 |
| Avg Spin | 1937.1984 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.2000 |
| Pre ER | 0 |
| Pre H | 0 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.9853 |
| Season WHIP | 0.6176 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "BAL",
"games": 78,
"wins": 37,
"losses": 41,
"win_pct": 0.4744,
"runs_scored": 357.0,
"runs_allowed": 375.0,
"run_differential": -18.0,
"run_differential_per_game": -0.2308,
"avg_runs_scored": 4.5769,
"avg_runs_allowed": 4.8077,
"offense_index": 1.0192,
"defense_index": 0.9341,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 5.8,
"avg_runs_allowed": 4.6,
"run_differential": 12.0
},
"available": true,
"quality_score": -0.05
},
"opponent": {
"team": "SEA",
"games": 75,
"wins": 40,
"losses": 35,
"win_pct": 0.5333,
"runs_scored": 333.0,
"runs_allowed": 298.0,
"run_differential": 35.0,
"run_differential_per_game": 0.4667,
"avg_runs_scored": 4.44,
"avg_runs_allowed": 3.9733,
"offense_index": 0.9887,
"defense_index": 1.1302,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.0,
"avg_runs_allowed": 4.1,
"run_differential": -1.0
},
"available": true,
"quality_score": 0.1205
},
"edges": {
"quality_edge": -0.1705,
"offense_edge": 0.0192,
"opponent_offense_edge": -0.0113,
"defense_strength": -0.0659,
"opponent_defense_weakness": -0.1302,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.9917,
"run_prevention": 1.0133,
"strikeout": 0.9958
},
"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": 21.4,
"bb_percent": 3.6,
"woba": 0.21,
"xwoba": 0.285,
"sweet_spot_percent": 22.6,
"barrel_batted_rate": 9.7,
"hard_hit_percent": 43.5,
"avg_best_speed": 76.6775,
"avg_hyper_speed": 94.293,
"whiff_percent": 26.2,
"swing_percent": 46.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.7727,
"command_and_miss": 0.2164,
"regression_edge": -2.0,
"xwoba_edge": 0.8571,
"barrel_edge": -0.5333,
"hard_hit_edge": -0.7286,
"whiff_edge": 0.0857,
"bb_edge": 1.35,
"pitch_design_score": 0.1256
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "666974",
"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.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": 15,
"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.1256,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8973,
"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.1346,
"sample_weight": 0.45,
"run_prevention_factor": 0.9886,
"strikeout_factor": 0.9982,
"walk_factor": 0.9514,
"homer_factor": 1.0207,
"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": 151,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 151,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.3823,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 4.0,
"hld_rank": 106,
"ip_value": 22.2,
"ip_rank": 330,
"h_value": 14.0,
"h_rank": 410,
"er_value": 6.0,
"er_rank": 444,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 4.0,
"bb_rank": 490,
"k_value": 18.0,
"k_rank": 354,
"k_per_9_value": 7.147059,
"k_per_9_rank": 28,
"whip_value": 0.7941,
"whip_rank": null,
"war_value": 0.62,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9949,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9949,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9781,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0093,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9992,
"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": 6.2,
"ER": 3,
"H": 4,
"BB": 1,
"SO": 7,
"HR": 0,
"ERA": 4.050000000000001,
"WHIP": 0.7500000000000001,
"K9": 9.450000000000001,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "666974",
"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.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": 15,
"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.1256,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8973,
"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.478,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4725,
"prior_weight": 0.5275
},
"role": "pitcher",
"player_id": "666974",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 3.1,
"ER": 2.0,
"R": 2.0,
"H": 4.0,
"BB": 0.0,
"SO": 2.0,
"HR": 0.0,
"BF": 14.0,
"Pitches": 51.0
},
"per_game": {
"IP": 0.2,
"ER": 0.4,
"R": 0.4,
"H": 0.8,
"BB": 0.0,
"SO": 0.4,
"HR": 0.0,
"BF": 2.8,
"Pitches": 10.2
},
"rates": {
"ERA": 5.4,
"WHIP": 1.2,
"ER_per_IP": 0.6,
"H_per_IP": 1.2,
"BB_per_IP": 0.0,
"SO_per_IP": 0.6,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 7.2,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 2.0,
"SO": 7.0,
"HR": 0.0,
"BF": 29.0,
"Pitches": 111.0
},
"per_game": {
"IP": 0.2,
"ER": 0.3,
"R": 0.3,
"H": 0.4,
"BB": 0.2,
"SO": 0.7,
"HR": 0.0,
"BF": 2.9,
"Pitches": 11.1
},
"rates": {
"ERA": 3.5217,
"WHIP": 0.7826,
"ER_per_IP": 0.3913,
"H_per_IP": 0.52174,
"BB_per_IP": 0.26087,
"SO_per_IP": 0.91304,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 22.2,
"ER": 5.0,
"R": 5.0,
"H": 11.0,
"BB": 3.0,
"SO": 18.0,
"HR": 1.0,
"BF": 81.0,
"Pitches": 305.0
},
"per_game": {
"IP": 0.2,
"ER": 0.1724,
"R": 0.1724,
"H": 0.3793,
"BB": 0.1034,
"SO": 0.6207,
"HR": 0.0345,
"BF": 2.7931,
"Pitches": 10.5172
},
"rates": {
"ERA": 1.9853,
"WHIP": 0.6176,
"ER_per_IP": 0.22059,
"H_per_IP": 0.48529,
"BB_per_IP": 0.13235,
"SO_per_IP": 0.79412,
"HR_per_IP": 0.04412
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.313,
"predicted_H": 0.596,
"predicted_BB": 0.165,
"predicted_SO": 0.565,
"predicted_HR": 0.052,
"predicted_ERA": 4.2257,
"predicted_WHIP": 1.1418
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5729,
"form_weight": 0.4271,
"form_reliability": 0.4725,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.478,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4725,
"prior_weight": 0.5275
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.313,
"final": 0.1337,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.596,
"final": 0.2546,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.165,
"final": 0.0705,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.565,
"final": 0.2413,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.052,
"final": 0.0222,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.2257,
"final": 4.2257,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1418,
"final": 1.1418,
"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.327 | 1.000 | 1.000 | Hitting_2B | 0.327 | 0.000 | 0.673 | 1.000 |
| predicted_3B | 0.006 | 0.000 | 0.000 | Hitting_3B | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_AB | 4.250 | 4.000 | 7.000 | Hitting_AB | 3.905 | 4.000 | 0.095 | 0.000 |
| predicted_AVG | 0.251 | 0.250 | 0.286 | Hitting_AVG | 0.268 | 0.250 | -0.018 | 0.000 |
| predicted_BB | 0.405 | 1.000 | 1.000 | Hitting_BB | 0.405 | 0.000 | 0.595 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.006 | 0.000 | -0.006 | 0.000 |
| predicted_H | 1.070 | 1.000 | 2.000 | Hitting_H | 1.048 | 1.000 | -0.048 | 0.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.190 | 0.000 | -0.190 | 0.000 |
| predicted_OBP | 0.336 | 0.400 | 0.375 | Hitting_OBP | 0.339 | 0.250 | 0.061 | 0.150 |
| predicted_R | 0.542 | 1.000 | 1.000 | Hitting_R | 0.542 | 0.000 | 0.458 | 1.000 |
| predicted_RBI | 0.800 | 2.000 | 1.000 | Hitting_RBI | 0.708 | 0.000 | 1.292 | 2.000 |
| predicted_SLG | 0.472 | 0.500 | 0.429 | Hitting_SLG | 0.502 | 0.250 | -0.002 | 0.250 |
| predicted_SO | 0.673 | 1.000 | 1.000 | Hitting_SO | 0.673 | 1.000 | 0.327 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 10 |
| Boosted Metrics | 7 |
| Deboosted Metrics | 3 |
| Better Metrics | 6 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.8000 -> 2.0000 (boost 1.2000, better) |
| Biggest Deboost | predicted_AB: 4.2500 -> 4.0000 (deboost -0.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 | 12 | 12 | 0 | 11 | 1 | predicted_AB: 4.2500 -> 6.6719 (boost 2.4219, 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.3428 -> 0.3340 (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 | 7 | 4 | 3 | 4 | 3 | predicted_2B: 0.5173 -> 1.0000 (boost 0.4827, better) | predicted_RBI: 1.3545 -> 1.0000 (deboost -0.3545, worse) | AB rounded to 7 (raw=6.67), rates preserved: AVG=0.268 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9189 -> 1.0000 (boost 0.0811, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3340 -> 0.3750 (boost 0.0410, better) | predicted_SLG: 0.4871 -> 0.4290 (deboost -0.0581, 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_RBI: 1.0000 -> 2.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.4290 -> 0.4871 (boost 0.0581, better) | predicted_OBP: 0.3750 -> 0.3340 (deboost -0.0410, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "668939",
"player_name": "Adley Rutschman",
"position": "DH",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.327,
"predicted_3B": 0.006,
"predicted_AB": 4.25,
"predicted_AVG": 0.251,
"predicted_BB": 0.405,
"predicted_H": 1.07,
"predicted_HR": 0.16,
"predicted_OBP": 0.336,
"predicted_R": 0.542,
"predicted_RBI": 0.8,
"predicted_SLG": 0.472,
"predicted_SO": 0.673
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.5173,
"predicted_3B": 0.067,
"predicted_AB": 6.6719,
"predicted_AVG": 0.2659,
"predicted_BB": 0.6637,
"predicted_H": 1.8216,
"predicted_HBP": 0.046,
"predicted_HR": 0.2753,
"predicted_OBP": 0.3428,
"predicted_R": 0.9485,
"predicted_RBI": 1.3981,
"predicted_SLG": 0.494,
"predicted_SO": 1.0019
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.327,
"after": 0.5173,
"delta": 0.1903,
"percent_delta": 0.582,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.006,
"after": 0.067,
"delta": 0.061,
"percent_delta": 10.1667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.25,
"after": 6.6719,
"delta": 2.4219,
"percent_delta": 0.5699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2659,
"delta": 0.0149,
"percent_delta": 0.0594,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 0.6637,
"delta": 0.2587,
"percent_delta": 0.6388,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.8216,
"delta": 0.7516,
"percent_delta": 0.7024,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.2753,
"delta": 0.1153,
"percent_delta": 0.7206,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.336,
"after": 0.3428,
"delta": 0.0068,
"percent_delta": 0.0202,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.542,
"after": 0.9485,
"delta": 0.4065,
"percent_delta": 0.75,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8,
"after": 1.3981,
"delta": 0.5981,
"percent_delta": 0.7476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.472,
"after": 0.494,
"delta": 0.022,
"percent_delta": 0.0466,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.673,
"after": 1.0019,
"delta": 0.3289,
"percent_delta": 0.4887,
"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.25,
"after": 6.6719,
"delta": 2.4219,
"percent_delta": 0.5699,
"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.5173,
"predicted_3B": 0.067,
"predicted_AB": 6.6719,
"predicted_AVG": 0.268,
"predicted_BB": 0.6608,
"predicted_H": 1.7883,
"predicted_HBP": 0.046,
"predicted_HR": 0.27,
"predicted_OBP": 0.334,
"predicted_R": 0.9189,
"predicted_RBI": 1.3545,
"predicted_SLG": 0.4871,
"predicted_SO": 1.0062
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5173,
"after": 0.5173,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.067,
"after": 0.067,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.6719,
"after": 6.6719,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2659,
"after": 0.268,
"delta": 0.0021,
"percent_delta": 0.0079,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6637,
"after": 0.6608,
"delta": -0.0029,
"percent_delta": -0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8216,
"after": 1.7883,
"delta": -0.0333,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.046,
"after": 0.046,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2753,
"after": 0.27,
"delta": -0.0053,
"percent_delta": -0.0193,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3428,
"after": 0.334,
"delta": -0.0088,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9485,
"after": 0.9189,
"delta": -0.0296,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.3981,
"after": 1.3545,
"delta": -0.0436,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.494,
"after": 0.4871,
"delta": -0.0069,
"percent_delta": -0.014,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0019,
"after": 1.0062,
"delta": 0.0043,
"percent_delta": 0.0043,
"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.3428,
"after": 0.334,
"delta": -0.0088,
"percent_delta": -0.0257,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.67), rates preserved: AVG=0.268 HR/AB=0.040",
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5173,
"after": 1.0,
"delta": 0.4827,
"percent_delta": 0.9331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.067,
"after": 0.0,
"delta": -0.067,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 6.6719,
"after": 7.0,
"delta": 0.3281,
"percent_delta": 0.0492,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6608,
"after": 1.0,
"delta": 0.3392,
"percent_delta": 0.5133,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7883,
"after": 2.0,
"delta": 0.2117,
"percent_delta": 0.1184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.046,
"after": 0.0,
"delta": -0.046,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.27,
"after": 0.0,
"delta": -0.27,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.3545,
"after": 1.0,
"delta": -0.3545,
"percent_delta": -0.2617,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0062,
"after": 1.0,
"delta": -0.0062,
"percent_delta": -0.0062,
"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_2B",
"before": 0.5173,
"after": 1.0,
"delta": 0.4827,
"percent_delta": 0.9331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.3545,
"after": 1.0,
"delta": -0.3545,
"percent_delta": -0.2617,
"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": 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": 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.9189,
"after": 1.0,
"delta": 0.0811,
"percent_delta": 0.0883,
"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.9189,
"after": 1.0,
"delta": 0.0811,
"percent_delta": 0.0883,
"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": 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": 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": 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.268,
"after": 0.286,
"delta": 0.018,
"percent_delta": 0.0672,
"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.334,
"after": 0.375,
"delta": 0.041,
"percent_delta": 0.1228,
"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.4871,
"after": 0.429,
"delta": -0.0581,
"percent_delta": -0.1193,
"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.334,
"after": 0.375,
"delta": 0.041,
"percent_delta": 0.1228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4871,
"after": 0.429,
"delta": -0.0581,
"percent_delta": -0.1193,
"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": 2.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": 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": 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": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"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": 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.268,
"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.334,
"predicted_R": 1.0,
"predicted_RBI": 2.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4871,
"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.286,
"after": 0.268,
"delta": -0.018,
"percent_delta": -0.0628,
"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.334,
"delta": -0.041,
"percent_delta": -0.1093,
"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.429,
"after": 0.4871,
"delta": 0.0581,
"percent_delta": 0.1353,
"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.429,
"after": 0.4871,
"delta": 0.0581,
"percent_delta": 0.1353,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.334,
"delta": -0.041,
"percent_delta": -0.1093,
"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.327,
"after": 1.0,
"delta": 0.673,
"percent_delta": 2.0581,
"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": 4.25,
"after": 4.0,
"delta": -0.25,
"percent_delta": -0.0588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.268,
"delta": 0.017,
"percent_delta": 0.0677,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.405,
"after": 1.0,
"delta": 0.595,
"percent_delta": 1.4691,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.0,
"delta": -0.07,
"percent_delta": -0.0654,
"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.336,
"after": 0.334,
"delta": -0.002,
"percent_delta": -0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.542,
"after": 1.0,
"delta": 0.458,
"percent_delta": 0.845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.472,
"after": 0.4871,
"delta": 0.0151,
"percent_delta": 0.032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.673,
"after": 1.0,
"delta": 0.327,
"percent_delta": 0.4859,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 7,
"deboosted_metrics": 3,
"better_metrics": 6,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.8,
"after": 2.0,
"delta": 1.2,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.25,
"after": 4.0,
"delta": -0.25,
"percent_delta": -0.0588,
"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.327 | - |
| predicted_3B | 0.006 | - |
| predicted_AB | 4.250 | - |
| predicted_AVG | 0.251 | - |
| predicted_BB | 0.405 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.336 | - |
| predicted_R | 0.542 | - |
| predicted_RBI | 0.800 | - |
| predicted_SLG | 0.472 | - |
| predicted_SO | 0.673 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.517 | 0.190 |
| predicted_3B | 0.067 | 0.061 |
| predicted_AB | 6.672 | 2.422 |
| predicted_AVG | 0.266 | 0.015 |
| predicted_BB | 0.664 | 0.259 |
| predicted_H | 1.822 | 0.752 |
| predicted_HBP | 0.046 | - |
| predicted_HR | 0.275 | 0.115 |
| predicted_OBP | 0.343 | 0.007 |
| predicted_R | 0.949 | 0.406 |
| predicted_RBI | 1.398 | 0.598 |
| predicted_SLG | 0.494 | 0.022 |
| predicted_SO | 1.002 | 0.329 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.517 | 0.000 |
| predicted_3B | 0.067 | 0.000 |
| predicted_AB | 6.672 | 0.000 |
| predicted_AVG | 0.268 | 0.002 |
| predicted_BB | 0.661 | -0.003 |
| predicted_H | 1.788 | -0.033 |
| predicted_HBP | 0.046 | 0.000 |
| predicted_HR | 0.270 | -0.005 |
| predicted_OBP | 0.334 | -0.009 |
| predicted_R | 0.919 | -0.030 |
| predicted_RBI | 1.355 | -0.044 |
| predicted_SLG | 0.487 | -0.007 |
| predicted_SO | 1.006 | 0.004 |
AB rounded to 7 (raw=6.67), rates preserved: AVG=0.268 HR/AB=0.040
| 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 | 1.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 | 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.483 |
| predicted_3B | 0.000 | -0.067 |
| predicted_AB | 7.000 | 0.328 |
| predicted_AVG | 0.286 | 0.018 |
| predicted_BB | 1.000 | 0.339 |
| predicted_H | 2.000 | 0.212 |
| predicted_HR | 0.000 | -0.270 |
| predicted_OBP | 0.375 | 0.041 |
| predicted_R | 1.000 | 0.081 |
| predicted_RBI | 1.000 | -0.355 |
| predicted_SLG | 0.429 | -0.058 |
| predicted_SO | 1.000 | -0.006 |
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 | 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 | - | 22.000 | 8.000 | 2.000 | 1.000 | 1.000 | 7.000 | 4.000 | 1.000 | 2.000 | 0.3636 | 0.3913 | 0.6818 | 0.3636 | 0.0454 | 0.3182 | 0.0454 | 0.0909 |
| last_10 | 0.20 | 10 | - | 38.000 | 10.000 | 2.000 | 1.000 | 1.000 | 10.000 | 6.000 | 6.000 | 4.000 | 0.2632 | 0.3556 | 0.4474 | 0.2632 | 0.0263 | 0.2632 | 0.1579 | 0.1053 |
| season | 0.60 | 47 | - | 656.000 | 176.000 | 55.000 | 1.000 | 32.000 | 119.000 | 91.000 | 68.000 | 113.000 | 0.2683 | 0.3392 | 0.5015 | 0.2683 | 0.0488 | 0.1814 | 0.1037 | 0.1723 |
| Metric | Value |
|---|---|
| predicted_2B | 0.7610 |
| predicted_3B | 0.1450 |
| predicted_AB | 9.7730 |
| predicted_AVG | 0.2849 |
| predicted_BB | 0.9950 |
| predicted_H | 2.7840 |
| predicted_HBP | 0.0460 |
| predicted_HR | 0.4230 |
| predicted_OBP | 0.3514 |
| predicted_R | 1.4690 |
| predicted_RBI | 2.1640 |
| predicted_SLG | 0.5221 |
| predicted_SO | 1.4230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3270 | 0.7610 | 0.5173 | model_form_blend |
| predicted_3B | 0.0060 | 0.1450 | 0.0670 | model_form_blend |
| predicted_AB | 4.2500 | 9.7730 | 6.6719 | model_form_blend |
| predicted_AVG | 0.2510 | 0.2849 | 0.2659 | model_form_blend |
| predicted_BB | 0.4050 | 0.9950 | 0.6637 | model_form_blend |
| predicted_H | 1.0700 | 2.7840 | 1.8216 | model_form_blend |
| predicted_HBP | - | 0.0460 | 0.0460 | form_only |
| predicted_HR | 0.1600 | 0.4230 | 0.2753 | model_form_blend |
| predicted_OBP | 0.3360 | 0.3514 | 0.3428 | model_form_blend |
| predicted_R | 0.5420 | 1.4690 | 0.9485 | model_form_blend |
| predicted_RBI | 0.8000 | 2.1640 | 1.3981 | model_form_blend |
| predicted_SLG | 0.4720 | 0.5221 | 0.4940 | model_form_blend |
| predicted_SO | 0.6730 | 1.4230 | 1.0019 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 2 |
| BB | 1 |
| SO | 1 |
| 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.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 | DH |
| gameID | 20260607_BAL@TOR |
| game_type | full |
| mlbID | 668939 |
| playerID | 668939 |
| playerName | Adley Rutschman |
| pos | C |
| started | True |
| startingPosition | DH |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-07 |
| sl_k_percent | 13.7 |
| sl_bb_percent | 10.3 |
| sl_woba | 0.362 |
| sl_xwoba | 0.376 |
| sl_xba | 0.292 |
| sl_xslg | 0.487 |
| sl_sweet_spot_percent | 39.0 |
| sl_barrel_batted_rate | 9.8 |
| sl_hard_hit_percent | 47.4 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 16.0 |
| sl_whiff_percent | 14.2 |
| sl_swing_percent | 41.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.211 | 0.000 | 0.000 | Hitting_2B | 0.211 | 0.000 | -0.211 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_AB | 4.760 | 3.000 | 8.000 | Hitting_AB | 4.264 | 4.000 | -1.264 | -1.000 |
| predicted_AVG | 0.223 | 0.000 | 0.250 | Hitting_AVG | 0.212 | 0.250 | -0.212 | -0.250 |
| predicted_BB | 0.294 | 2.000 | 1.000 | Hitting_BB | 0.294 | 1.000 | 1.706 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.060 | 0.000 | -0.060 | 0.000 |
| predicted_H | 1.060 | 0.000 | 2.000 | Hitting_H | 0.902 | 1.000 | -0.902 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.204 | 0.000 | -0.204 | 0.000 |
| predicted_OBP | 0.316 | 0.400 | 0.333 | Hitting_OBP | 0.269 | 0.400 | 0.131 | 0.000 |
| predicted_R | 0.513 | 1.000 | 1.000 | Hitting_R | 0.513 | 0.000 | 0.487 | 1.000 |
| predicted_RBI | 0.400 | 1.000 | 1.000 | Hitting_RBI | 0.517 | 0.000 | 0.483 | 1.000 |
| predicted_SLG | 0.378 | 0.000 | 0.250 | Hitting_SLG | 0.413 | 0.250 | -0.413 | -0.250 |
| predicted_SO | 1.279 | 0.000 | 2.000 | Hitting_SO | 1.279 | 1.000 | -1.279 | -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.2940 -> 2.0000 (boost 1.7060, better) |
| Biggest Deboost | predicted_AB: 4.7600 -> 3.0000 (deboost -1.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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 4.7600 -> 7.8088 (boost 3.0488, better) | predicted_SLG: 0.3780 -> 0.3730 (deboost -0.0050, 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.3142 -> 0.2907 (deboost -0.0235, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 5 | 3 | predicted_RBI: 0.6107 -> 1.0000 (boost 0.3893, better) | predicted_2B: 0.3488 -> 0.0000 (deboost -0.3488, worse) | AB rounded to 8 (raw=7.81), rates preserved: AVG=0.223 HR/AB=0.028 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8176 -> 1.0000 (boost 0.1824, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2907 -> 0.3330 (boost 0.0423, better) | predicted_SLG: 0.3575 -> 0.2500 (deboost -0.1075, 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_BB: 1.0000 -> 2.0000 (boost 1.0000, better) | predicted_AB: 8.0000 -> 3.0000 (deboost -5.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3575 (boost 0.1075, better) | predicted_OBP: 0.3330 -> 0.2907 (deboost -0.0423, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683002",
"player_name": "Gunnar Henderson",
"position": "SS",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.211,
"predicted_3B": 0.019,
"predicted_AB": 4.76,
"predicted_AVG": 0.223,
"predicted_BB": 0.294,
"predicted_H": 1.06,
"predicted_HR": 0.13,
"predicted_OBP": 0.316,
"predicted_R": 0.513,
"predicted_RBI": 0.4,
"predicted_SLG": 0.378,
"predicted_SO": 1.279
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3488,
"predicted_3B": 0.0243,
"predicted_AB": 7.8088,
"predicted_AVG": 0.2261,
"predicted_BB": 0.745,
"predicted_H": 1.7768,
"predicted_HBP": 0.132,
"predicted_HR": 0.2208,
"predicted_OBP": 0.3142,
"predicted_R": 0.8439,
"predicted_RBI": 0.6304,
"predicted_SLG": 0.373,
"predicted_SO": 2.0591
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.211,
"after": 0.3488,
"delta": 0.1378,
"percent_delta": 0.6531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0243,
"delta": 0.0053,
"percent_delta": 0.2789,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.76,
"after": 7.8088,
"delta": 3.0488,
"percent_delta": 0.6405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2261,
"delta": 0.0031,
"percent_delta": 0.0139,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.294,
"after": 0.745,
"delta": 0.451,
"percent_delta": 1.534,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.06,
"after": 1.7768,
"delta": 0.7168,
"percent_delta": 0.6762,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2208,
"delta": 0.0908,
"percent_delta": 0.6985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.3142,
"delta": -0.0018,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.513,
"after": 0.8439,
"delta": 0.3309,
"percent_delta": 0.645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.6304,
"delta": 0.2304,
"percent_delta": 0.576,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.378,
"after": 0.373,
"delta": -0.005,
"percent_delta": -0.0132,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.279,
"after": 2.0591,
"delta": 0.7801,
"percent_delta": 0.6099,
"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.76,
"after": 7.8088,
"delta": 3.0488,
"percent_delta": 0.6405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.378,
"after": 0.373,
"delta": -0.005,
"percent_delta": -0.0132,
"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.3488,
"predicted_3B": 0.0243,
"predicted_AB": 7.8088,
"predicted_AVG": 0.2234,
"predicted_BB": 0.7418,
"predicted_H": 1.7443,
"predicted_HBP": 0.132,
"predicted_HR": 0.2166,
"predicted_OBP": 0.2907,
"predicted_R": 0.8176,
"predicted_RBI": 0.6107,
"predicted_SLG": 0.3575,
"predicted_SO": 2.068
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3488,
"after": 0.3488,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0243,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.8088,
"after": 7.8088,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2261,
"after": 0.2234,
"delta": -0.0027,
"percent_delta": -0.0119,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.745,
"after": 0.7418,
"delta": -0.0032,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7768,
"after": 1.7443,
"delta": -0.0325,
"percent_delta": -0.0183,
"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.2208,
"after": 0.2166,
"delta": -0.0042,
"percent_delta": -0.019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3142,
"after": 0.2907,
"delta": -0.0235,
"percent_delta": -0.0748,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8439,
"after": 0.8176,
"delta": -0.0263,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6304,
"after": 0.6107,
"delta": -0.0197,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.373,
"after": 0.3575,
"delta": -0.0155,
"percent_delta": -0.0416,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.0591,
"after": 2.068,
"delta": 0.0089,
"percent_delta": 0.0043,
"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.3142,
"after": 0.2907,
"delta": -0.0235,
"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 8 (raw=7.81), rates preserved: AVG=0.223 HR/AB=0.028",
"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.3488,
"after": 0.0,
"delta": -0.3488,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0243,
"after": 0.0,
"delta": -0.0243,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.8088,
"after": 8.0,
"delta": 0.1912,
"percent_delta": 0.0245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7418,
"after": 1.0,
"delta": 0.2582,
"percent_delta": 0.3481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7443,
"after": 2.0,
"delta": 0.2557,
"percent_delta": 0.1466,
"direction": "boost",
"projection_effect": "better",
"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.2166,
"after": 0.0,
"delta": -0.2166,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6107,
"after": 1.0,
"delta": 0.3893,
"percent_delta": 0.6375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.068,
"after": 2.0,
"delta": -0.068,
"percent_delta": -0.0329,
"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_RBI",
"before": 0.6107,
"after": 1.0,
"delta": 0.3893,
"percent_delta": 0.6375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3488,
"after": 0.0,
"delta": -0.3488,
"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.8176,
"after": 1.0,
"delta": 0.1824,
"percent_delta": 0.2231,
"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.8176,
"after": 1.0,
"delta": 0.1824,
"percent_delta": 0.2231,
"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": 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.2234,
"after": 0.25,
"delta": 0.0266,
"percent_delta": 0.1191,
"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.2907,
"after": 0.333,
"delta": 0.0423,
"percent_delta": 0.1455,
"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.3575,
"after": 0.25,
"delta": -0.1075,
"percent_delta": -0.3007,
"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.2907,
"after": 0.333,
"delta": 0.0423,
"percent_delta": 0.1455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3575,
"after": 0.25,
"delta": -0.1075,
"percent_delta": -0.3007,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 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": 8.0,
"after": 3.0,
"delta": -5.0,
"percent_delta": -0.625,
"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": 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": 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_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": 8.0,
"after": 3.0,
"delta": -5.0,
"percent_delta": -0.625,
"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.2234,
"predicted_BB": 2.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2907,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3575,
"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.25,
"after": 0.2234,
"delta": -0.0266,
"percent_delta": -0.1065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2907,
"delta": -0.0423,
"percent_delta": -0.1269,
"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.3575,
"delta": 0.1075,
"percent_delta": 0.4299,
"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.3575,
"delta": 0.1075,
"percent_delta": 0.4299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2907,
"delta": -0.0423,
"percent_delta": -0.1269,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.211,
"after": 0.0,
"delta": -0.211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.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": 3.0,
"delta": -1.76,
"percent_delta": -0.3697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.223,
"after": 0.2234,
"delta": 0.0004,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.294,
"after": 2.0,
"delta": 1.706,
"percent_delta": 5.8027,
"direction": "boost",
"projection_effect": "better",
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.316,
"after": 0.2907,
"delta": -0.0253,
"percent_delta": -0.0801,
"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.4,
"after": 1.0,
"delta": 0.6,
"percent_delta": 1.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.378,
"after": 0.3575,
"delta": -0.0205,
"percent_delta": -0.0542,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.279,
"after": 0.0,
"delta": -1.279,
"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.294,
"after": 2.0,
"delta": 1.706,
"percent_delta": 5.8027,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.76,
"after": 3.0,
"delta": -1.76,
"percent_delta": -0.3697,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.211 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 4.760 | - |
| predicted_AVG | 0.223 | - |
| predicted_BB | 0.294 | - |
| predicted_H | 1.060 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.316 | - |
| predicted_R | 0.513 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.378 | - |
| predicted_SO | 1.279 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.138 |
| predicted_3B | 0.024 | 0.005 |
| predicted_AB | 7.809 | 3.049 |
| predicted_AVG | 0.226 | 0.003 |
| predicted_BB | 0.745 | 0.451 |
| predicted_H | 1.777 | 0.717 |
| predicted_HBP | 0.132 | - |
| predicted_HR | 0.221 | 0.091 |
| predicted_OBP | 0.314 | -0.002 |
| predicted_R | 0.844 | 0.331 |
| predicted_RBI | 0.630 | 0.230 |
| predicted_SLG | 0.373 | -0.005 |
| predicted_SO | 2.059 | 0.780 |
Step 3: 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.024 | 0.000 |
| predicted_AB | 7.809 | 0.000 |
| predicted_AVG | 0.223 | -0.003 |
| predicted_BB | 0.742 | -0.003 |
| predicted_H | 1.744 | -0.032 |
| predicted_HBP | 0.132 | 0.000 |
| predicted_HR | 0.217 | -0.004 |
| predicted_OBP | 0.291 | -0.023 |
| predicted_R | 0.818 | -0.026 |
| predicted_RBI | 0.611 | -0.020 |
| predicted_SLG | 0.357 | -0.016 |
| predicted_SO | 2.068 | 0.009 |
AB rounded to 8 (raw=7.81), rates preserved: AVG=0.223 HR/AB=0.028
| 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.349 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 8.000 | 0.191 |
| predicted_AVG | 0.250 | 0.027 |
| predicted_BB | 1.000 | 0.258 |
| predicted_H | 2.000 | 0.256 |
| predicted_HR | 0.000 | -0.217 |
| predicted_OBP | 0.333 | 0.042 |
| predicted_R | 1.000 | 0.182 |
| predicted_RBI | 1.000 | 0.389 |
| predicted_SLG | 0.250 | -0.107 |
| predicted_SO | 2.000 | -0.068 |
Attached 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 | -5.000 |
| BB | 2.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 | 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 | - | 19.000 | 5.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 4.000 | 4.000 | 0.2632 | 0.3913 | 0.2632 | 0.2632 | 0.0000 | 0.0000 | 0.2105 | 0.2105 |
| last_10 | 0.20 | 10 | - | 40.000 | 10.000 | 3.000 | 0.000 | 0.000 | 1.000 | 5.000 | 6.000 | 8.000 | 0.2500 | 0.3617 | 0.3250 | 0.2500 | 0.0000 | 0.0250 | 0.1500 | 0.2000 |
| season | 0.60 | 66 | - | 1130.000 | 239.000 | 56.000 | 5.000 | 54.000 | 137.000 | 136.000 | 78.000 | 339.000 | 0.2115 | 0.2688 | 0.4133 | 0.2115 | 0.0478 | 0.1212 | 0.0690 | 0.3000 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5220 |
| predicted_3B | 0.0310 |
| predicted_AB | 11.6420 |
| predicted_AVG | 0.2300 |
| predicted_BB | 1.3120 |
| predicted_H | 2.6780 |
| predicted_HBP | 0.1320 |
| predicted_HR | 0.3350 |
| predicted_OBP | 0.3119 |
| predicted_R | 1.2600 |
| predicted_RBI | 0.9200 |
| predicted_SLG | 0.3667 |
| predicted_SO | 3.0400 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2110 | 0.5220 | 0.3488 | model_form_blend |
| predicted_3B | 0.0190 | 0.0310 | 0.0243 | model_form_blend |
| predicted_AB | 4.7600 | 11.6420 | 7.8088 | model_form_blend |
| predicted_AVG | 0.2230 | 0.2300 | 0.2261 | model_form_blend |
| predicted_BB | 0.2940 | 1.3120 | 0.7450 | model_form_blend |
| predicted_H | 1.0600 | 2.6780 | 1.7768 | model_form_blend |
| predicted_HBP | - | 0.1320 | 0.1320 | form_only |
| predicted_HR | 0.1300 | 0.3350 | 0.2208 | model_form_blend |
| predicted_OBP | 0.3160 | 0.3119 | 0.3142 | model_form_blend |
| predicted_R | 0.5130 | 1.2600 | 0.8439 | model_form_blend |
| predicted_RBI | 0.4000 | 0.9200 | 0.6304 | model_form_blend |
| predicted_SLG | 0.3780 | 0.3667 | 0.3730 | model_form_blend |
| predicted_SO | 1.2790 | 3.0400 | 2.0591 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 265 |
| Season rows before report date | 265 |
| Report year | 2026 |
| Profile rows used | 265 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| RBI | 1 |
| BB | 2 |
| SO | 0 |
| 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.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 2 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 683002 |
| playerID | 683002 |
| playerName | Gunnar Henderson |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.2 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.306 |
| sl_xwoba | 0.304 |
| sl_xba | 0.233 |
| sl_xslg | 0.393 |
| sl_sweet_spot_percent | 30.8 |
| sl_barrel_batted_rate | 8.7 |
| sl_hard_hit_percent | 44.7 |
| sl_exit_velocity_avg | 89.1 |
| sl_launch_angle_avg | 12.4 |
| sl_whiff_percent | 24.5 |
| sl_swing_percent | 49.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.278 | 0.000 | 0.000 | Hitting_2B | 0.278 | 0.000 | -0.278 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.270 | 5.000 | 7.000 | Hitting_AB | 3.669 | 3.000 | 1.331 | 2.000 |
| predicted_AVG | 0.245 | 0.000 | 0.286 | Hitting_AVG | 0.264 | 0.333 | -0.264 | -0.333 |
| predicted_BB | 0.901 | 0.000 | 1.000 | Hitting_BB | 0.901 | 2.000 | -0.901 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_H | 1.050 | 0.000 | 2.000 | Hitting_H | 0.970 | 1.000 | -0.970 | -1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_OBP | 0.383 | 0.000 | 0.375 | Hitting_OBP | 0.409 | 0.600 | -0.409 | -0.600 |
| predicted_R | 0.589 | 0.000 | 1.000 | Hitting_R | 0.589 | 1.000 | -0.589 | -1.000 |
| predicted_RBI | 0.420 | 0.000 | 1.000 | Hitting_RBI | 0.289 | 0.000 | -0.289 | 0.000 |
| predicted_SLG | 0.392 | 0.000 | 0.286 | Hitting_SLG | 0.371 | 0.333 | -0.371 | -0.333 |
| predicted_SO | 0.901 | 4.000 | 2.000 | Hitting_SO | 0.901 | 0.000 | 3.099 | 4.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.9010 -> 4.0000 (boost 3.0990, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 4.2700 -> 6.8520 (boost 2.5820, 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.3942 -> 0.3878 (deboost -0.0064, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 5 | 3 | 4 | 4 | predicted_SO: 1.5481 -> 2.0000 (boost 0.4519, worse) | predicted_2B: 0.3803 -> 0.0000 (deboost -0.3803, worse) | AB rounded to 7 (raw=6.85), rates preserved: AVG=0.261 HR/AB=0.024 |
| 5 | bvp_blend | 1 | 0 | 1 | 0 | 1 | - | predicted_BB: 2.0000 -> 1.0000 (deboost -1.0000, worse) | Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.000) |
| 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_AVG: 0.2612 -> 0.2860 (boost 0.0248, better) | predicted_SLG: 0.3878 -> 0.2860 (deboost -0.1018, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 1 | 5 | 0 | 6 | predicted_SO: 2.0000 -> 4.0000 (boost 2.0000, worse) | predicted_AB: 7.0000 -> 5.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.2860 -> 0.3878 (boost 0.1018, better) | predicted_AVG: 0.2860 -> 0.2612 (deboost -0.0248, 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.278,
"predicted_3B": 0.0,
"predicted_AB": 4.27,
"predicted_AVG": 0.245,
"predicted_BB": 0.901,
"predicted_H": 1.05,
"predicted_HR": 0.11,
"predicted_OBP": 0.383,
"predicted_R": 0.589,
"predicted_RBI": 0.42,
"predicted_SLG": 0.392,
"predicted_SO": 0.901
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3803,
"predicted_3B": 0.0004,
"predicted_AB": 6.852,
"predicted_AVG": 0.259,
"predicted_BB": 1.5632,
"predicted_H": 1.8229,
"predicted_HBP": 0.204,
"predicted_HR": 0.1654,
"predicted_OBP": 0.4002,
"predicted_R": 1.0696,
"predicted_RBI": 0.6446,
"predicted_SLG": 0.3942,
"predicted_SO": 1.5415
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.278,
"after": 0.3803,
"delta": 0.1023,
"percent_delta": 0.368,
"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.27,
"after": 6.852,
"delta": 2.582,
"percent_delta": 0.6047,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.259,
"delta": 0.014,
"percent_delta": 0.0571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.901,
"after": 1.5632,
"delta": 0.6622,
"percent_delta": 0.735,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.05,
"after": 1.8229,
"delta": 0.7729,
"percent_delta": 0.7361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1654,
"delta": 0.0554,
"percent_delta": 0.5036,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.383,
"after": 0.4002,
"delta": 0.0172,
"percent_delta": 0.0449,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.589,
"after": 1.0696,
"delta": 0.4806,
"percent_delta": 0.816,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.6446,
"delta": 0.2246,
"percent_delta": 0.5348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3942,
"delta": 0.0022,
"percent_delta": 0.0056,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.901,
"after": 1.5415,
"delta": 0.6405,
"percent_delta": 0.7109,
"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.27,
"after": 6.852,
"delta": 2.582,
"percent_delta": 0.6047,
"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.3803,
"predicted_3B": 0.0004,
"predicted_AB": 6.852,
"predicted_AVG": 0.2612,
"predicted_BB": 1.5565,
"predicted_H": 1.7895,
"predicted_HBP": 0.204,
"predicted_HR": 0.1622,
"predicted_OBP": 0.3979,
"predicted_R": 1.0362,
"predicted_RBI": 0.6245,
"predicted_SLG": 0.3878,
"predicted_SO": 1.5481
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3803,
"after": 0.3803,
"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.852,
"after": 6.852,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2612,
"delta": 0.0022,
"percent_delta": 0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.5632,
"after": 1.5565,
"delta": -0.0067,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8229,
"after": 1.7895,
"delta": -0.0334,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.204,
"after": 0.204,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1654,
"after": 0.1622,
"delta": -0.0032,
"percent_delta": -0.0193,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4002,
"after": 0.3979,
"delta": -0.0023,
"percent_delta": -0.0057,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0696,
"after": 1.0362,
"delta": -0.0334,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6446,
"after": 0.6245,
"delta": -0.0201,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3942,
"after": 0.3878,
"delta": -0.0064,
"percent_delta": -0.0162,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5415,
"after": 1.5481,
"delta": 0.0066,
"percent_delta": 0.0043,
"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.3942,
"after": 0.3878,
"delta": -0.0064,
"percent_delta": -0.0162,
"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.261 HR/AB=0.024",
"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.3803,
"after": 0.0,
"delta": -0.3803,
"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.852,
"after": 7.0,
"delta": 0.148,
"percent_delta": 0.0216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.5565,
"after": 2.0,
"delta": 0.4435,
"percent_delta": 0.2849,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7895,
"after": 2.0,
"delta": 0.2105,
"percent_delta": 0.1176,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.204,
"after": 0.0,
"delta": -0.204,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1622,
"after": 0.0,
"delta": -0.1622,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6245,
"after": 1.0,
"delta": 0.3755,
"percent_delta": 0.6013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5481,
"after": 2.0,
"delta": 0.4519,
"percent_delta": 0.2919,
"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.5481,
"after": 2.0,
"delta": 0.4519,
"percent_delta": 0.2919,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3803,
"after": 0.0,
"delta": -0.3803,
"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.000)",
"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": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"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_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": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"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": 1.0362,
"after": 1.0,
"delta": -0.0362,
"percent_delta": -0.0349,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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": 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.2612,
"after": 0.286,
"delta": 0.0248,
"percent_delta": 0.0949,
"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.3979,
"after": 0.375,
"delta": -0.0229,
"percent_delta": -0.0576,
"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.3878,
"after": 0.286,
"delta": -0.1018,
"percent_delta": -0.2625,
"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.2612,
"after": 0.286,
"delta": 0.0248,
"percent_delta": 0.0949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3878,
"after": 0.286,
"delta": -0.1018,
"percent_delta": -0.2625,
"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": 4.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 4.0,
"delta": 2.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": 2.0,
"after": 4.0,
"delta": 2.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"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.2612,
"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.3979,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3878,
"predicted_SO": 4.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2612,
"delta": -0.0248,
"percent_delta": -0.0868,
"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.3979,
"delta": 0.0229,
"percent_delta": 0.0612,
"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.3878,
"delta": 0.1018,
"percent_delta": 0.356,
"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": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.286,
"after": 0.3878,
"delta": 0.1018,
"percent_delta": 0.356,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2612,
"delta": -0.0248,
"percent_delta": -0.0868,
"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.278,
"after": 0.0,
"delta": -0.278,
"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.27,
"after": 5.0,
"delta": 0.73,
"percent_delta": 0.171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2612,
"delta": 0.0162,
"percent_delta": 0.0661,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.901,
"after": 0.0,
"delta": -0.901,
"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.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.383,
"after": 0.3979,
"delta": 0.0149,
"percent_delta": 0.0389,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.589,
"after": 0.0,
"delta": -0.589,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.392,
"after": 0.3878,
"delta": -0.0042,
"percent_delta": -0.0107,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.901,
"after": 4.0,
"delta": 3.099,
"percent_delta": 3.4395,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.901,
"after": 4.0,
"delta": 3.099,
"percent_delta": 3.4395,
"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.278 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.270 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.901 | - |
| predicted_H | 1.050 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.383 | - |
| predicted_R | 0.589 | - |
| predicted_RBI | 0.420 | - |
| predicted_SLG | 0.392 | - |
| predicted_SO | 0.901 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.380 | 0.102 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.852 | 2.582 |
| predicted_AVG | 0.259 | 0.014 |
| predicted_BB | 1.563 | 0.662 |
| predicted_H | 1.823 | 0.773 |
| predicted_HBP | 0.204 | - |
| predicted_HR | 0.165 | 0.055 |
| predicted_OBP | 0.400 | 0.017 |
| predicted_R | 1.070 | 0.481 |
| predicted_RBI | 0.645 | 0.225 |
| predicted_SLG | 0.394 | 0.002 |
| predicted_SO | 1.542 | 0.641 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.380 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.852 | 0.000 |
| predicted_AVG | 0.261 | 0.002 |
| predicted_BB | 1.556 | -0.007 |
| predicted_H | 1.790 | -0.033 |
| predicted_HBP | 0.204 | 0.000 |
| predicted_HR | 0.162 | -0.003 |
| predicted_OBP | 0.398 | -0.002 |
| predicted_R | 1.036 | -0.033 |
| predicted_RBI | 0.625 | -0.020 |
| predicted_SLG | 0.388 | -0.006 |
| predicted_SO | 1.548 | 0.007 |
AB rounded to 7 (raw=6.85), rates preserved: AVG=0.261 HR/AB=0.024
| 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 | - |
Sample-size BvP blend (BvP AB=13.0, weight=0.121, 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 | -1.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.380 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.148 |
| predicted_AVG | 0.286 | 0.025 |
| predicted_BB | 1.000 | -0.556 |
| predicted_H | 2.000 | 0.210 |
| predicted_HR | 0.000 | -0.162 |
| predicted_OBP | 0.375 | -0.023 |
| predicted_R | 1.000 | -0.036 |
| predicted_RBI | 1.000 | 0.375 |
| predicted_SLG | 0.286 | -0.102 |
| predicted_SO | 2.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 | 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 | 4.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 | 5.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 5.000 | 3.000 | 0.2941 | 0.4783 | 0.4706 | 0.2941 | 0.0588 | 0.1177 | 0.2941 | 0.1765 |
| last_10 | 0.20 | 10 | - | 40.000 | 12.000 | 1.000 | 0.000 | 1.000 | 4.000 | 7.000 | 7.000 | 10.000 | 0.3000 | 0.4167 | 0.4000 | 0.3000 | 0.0250 | 0.1000 | 0.1750 | 0.2500 |
| season | 0.60 | 66 | - | 965.000 | 255.000 | 73.000 | 0.000 | 10.000 | 76.000 | 155.000 | 237.000 | 237.000 | 0.2642 | 0.4092 | 0.3710 | 0.2642 | 0.0104 | 0.0788 | 0.2456 | 0.2456 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5090 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.0990 |
| predicted_AVG | 0.2767 |
| predicted_BB | 2.3960 |
| predicted_H | 2.7950 |
| predicted_HBP | 0.2040 |
| predicted_HR | 0.2350 |
| predicted_OBP | 0.4218 |
| predicted_R | 1.6740 |
| predicted_RBI | 0.9270 |
| predicted_SLG | 0.3970 |
| predicted_SO | 2.3470 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2780 | 0.5090 | 0.3803 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2700 | 10.0990 | 6.8520 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2767 | 0.2590 | model_form_blend |
| predicted_BB | 0.9010 | 2.3960 | 1.5632 | model_form_blend |
| predicted_H | 1.0500 | 2.7950 | 1.8229 | model_form_blend |
| predicted_HBP | - | 0.2040 | 0.2040 | form_only |
| predicted_HR | 0.1100 | 0.2350 | 0.1654 | model_form_blend |
| predicted_OBP | 0.3830 | 0.4218 | 0.4002 | model_form_blend |
| predicted_R | 0.5890 | 1.6740 | 1.0696 | model_form_blend |
| predicted_RBI | 0.4200 | 0.9270 | 0.6446 | model_form_blend |
| predicted_SLG | 0.3920 | 0.3970 | 0.3942 | model_form_blend |
| predicted_SO | 0.9010 | 2.3470 | 1.5415 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 4 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.264 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 2 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 621493 |
| playerID | 621493 |
| playerName | Taylor Ward |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 19.2 |
| sl_woba | 0.355 |
| sl_xwoba | 0.355 |
| sl_xba | 0.257 |
| sl_xslg | 0.375 |
| sl_sweet_spot_percent | 36.2 |
| sl_barrel_batted_rate | 4.8 |
| sl_hard_hit_percent | 41.5 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 13.8 |
| sl_whiff_percent | 18.1 |
| sl_swing_percent | 31.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.220 | 0.000 | 0.000 | Hitting_2B | 0.220 | 0.000 | -0.220 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.190 | 3.000 | 7.000 | Hitting_AB | 3.839 | 5.000 | -0.839 | -2.000 |
| predicted_AVG | 0.237 | 0.333 | 0.286 | Hitting_AVG | 0.243 | 0.400 | 0.090 | -0.067 |
| predicted_BB | 0.459 | 1.000 | 1.000 | Hitting_BB | 0.459 | 0.000 | 0.541 | 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.933 | 2.000 | 0.067 | -1.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.173 | 1.000 | -0.173 | -1.000 |
| predicted_OBP | 0.314 | 0.500 | 0.375 | Hitting_OBP | 0.324 | 0.400 | 0.176 | 0.100 |
| predicted_R | 0.557 | 1.000 | 1.000 | Hitting_R | 0.557 | 2.000 | 0.443 | -1.000 |
| predicted_RBI | 0.650 | 0.000 | 1.000 | Hitting_RBI | 0.612 | 1.000 | -0.612 | -1.000 |
| predicted_SLG | 0.456 | 0.333 | 0.286 | Hitting_SLG | 0.435 | 1.000 | -0.102 | -0.667 |
| predicted_SO | 1.027 | 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.4590 -> 1.0000 (boost 0.5410, better) |
| Biggest Deboost | predicted_AB: 4.1900 -> 3.0000 (deboost -1.1900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 8 | 8 | 0 | 7 | 1 | predicted_AB: 4.1900 -> 6.8471 (boost 2.6571, 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.4598 -> 0.4481 (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 | 8 | 4 | 4 | 3 | 5 | predicted_H: 1.6311 -> 2.0000 (boost 0.3689, better) | predicted_HR: 0.3856 -> 0.0000 (deboost -0.3856, worse) | AB rounded to 7 (raw=6.85), rates preserved: AVG=0.238 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.3077 -> 0.3750 (boost 0.0673, better) | predicted_SLG: 0.4481 -> 0.2860 (deboost -0.1621, 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 -> 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.4481 (boost 0.1621, better) | predicted_OBP: 0.3750 -> 0.3077 (deboost -0.0673, 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.22,
"predicted_3B": 0.0,
"predicted_AB": 4.19,
"predicted_AVG": 0.237,
"predicted_BB": 0.459,
"predicted_H": 0.99,
"predicted_HR": 0.21,
"predicted_OBP": 0.314,
"predicted_R": 0.557,
"predicted_RBI": 0.65,
"predicted_SLG": 0.456,
"predicted_SO": 1.027
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2793,
"predicted_3B": 0.0004,
"predicted_AB": 6.8471,
"predicted_AVG": 0.241,
"predicted_BB": 0.6899,
"predicted_H": 1.6615,
"predicted_HBP": 0.188,
"predicted_HR": 0.3931,
"predicted_OBP": 0.3157,
"predicted_R": 1.0816,
"predicted_RBI": 1.1273,
"predicted_SLG": 0.4598,
"predicted_SO": 1.7215
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.22,
"after": 0.2793,
"delta": 0.0593,
"percent_delta": 0.2695,
"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.19,
"after": 6.8471,
"delta": 2.6571,
"percent_delta": 0.6342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.241,
"delta": 0.004,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.459,
"after": 0.6899,
"delta": 0.2309,
"percent_delta": 0.5031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.6615,
"delta": 0.6715,
"percent_delta": 0.6783,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.3931,
"delta": 0.1831,
"percent_delta": 0.8719,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3157,
"delta": 0.0017,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.557,
"after": 1.0816,
"delta": 0.5246,
"percent_delta": 0.9418,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 1.1273,
"delta": 0.4773,
"percent_delta": 0.7343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.4598,
"delta": 0.0038,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.027,
"after": 1.7215,
"delta": 0.6945,
"percent_delta": 0.6762,
"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.19,
"after": 6.8471,
"delta": 2.6571,
"percent_delta": 0.6342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2793,
"predicted_3B": 0.0004,
"predicted_AB": 6.8471,
"predicted_AVG": 0.2382,
"predicted_BB": 0.6869,
"predicted_H": 1.6311,
"predicted_HBP": 0.188,
"predicted_HR": 0.3856,
"predicted_OBP": 0.3077,
"predicted_R": 1.0479,
"predicted_RBI": 1.0921,
"predicted_SLG": 0.4481,
"predicted_SO": 1.7289
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2793,
"after": 0.2793,
"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.8471,
"after": 6.8471,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2382,
"delta": -0.0028,
"percent_delta": -0.0116,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6899,
"after": 0.6869,
"delta": -0.003,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6615,
"after": 1.6311,
"delta": -0.0304,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.188,
"after": 0.188,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3931,
"after": 0.3856,
"delta": -0.0075,
"percent_delta": -0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3157,
"after": 0.3077,
"delta": -0.008,
"percent_delta": -0.0253,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0816,
"after": 1.0479,
"delta": -0.0337,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.1273,
"after": 1.0921,
"delta": -0.0352,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4598,
"after": 0.4481,
"delta": -0.0117,
"percent_delta": -0.0254,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7215,
"after": 1.7289,
"delta": 0.0074,
"percent_delta": 0.0043,
"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.4598,
"after": 0.4481,
"delta": -0.0117,
"percent_delta": -0.0254,
"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.238 HR/AB=0.056",
"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.2793,
"after": 0.0,
"delta": -0.2793,
"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.8471,
"after": 7.0,
"delta": 0.1529,
"percent_delta": 0.0223,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6869,
"after": 1.0,
"delta": 0.3131,
"percent_delta": 0.4558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6311,
"after": 2.0,
"delta": 0.3689,
"percent_delta": 0.2262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.188,
"after": 0.0,
"delta": -0.188,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3856,
"after": 0.0,
"delta": -0.3856,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0921,
"after": 1.0,
"delta": -0.0921,
"percent_delta": -0.0843,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7289,
"after": 2.0,
"delta": 0.2711,
"percent_delta": 0.1568,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.6311,
"after": 2.0,
"delta": 0.3689,
"percent_delta": 0.2262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.3856,
"after": 0.0,
"delta": -0.3856,
"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.0479,
"after": 1.0,
"delta": -0.0479,
"percent_delta": -0.0457,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2382,
"after": 0.286,
"delta": 0.0478,
"percent_delta": 0.2007,
"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.3077,
"after": 0.375,
"delta": 0.0673,
"percent_delta": 0.2187,
"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.4481,
"after": 0.286,
"delta": -0.1621,
"percent_delta": -0.3617,
"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.3077,
"after": 0.375,
"delta": 0.0673,
"percent_delta": 0.2187,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4481,
"after": 0.286,
"delta": -0.1621,
"percent_delta": -0.3617,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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.2382,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3077,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4481,
"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.2382,
"delta": -0.0478,
"percent_delta": -0.1671,
"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.3077,
"delta": -0.0673,
"percent_delta": -0.1795,
"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.4481,
"delta": 0.1621,
"percent_delta": 0.5666,
"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.4481,
"delta": 0.1621,
"percent_delta": 0.5666,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3077,
"delta": -0.0673,
"percent_delta": -0.1795,
"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.22,
"after": 0.0,
"delta": -0.22,
"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.19,
"after": 3.0,
"delta": -1.19,
"percent_delta": -0.284,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2382,
"delta": 0.0012,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.459,
"after": 1.0,
"delta": 0.541,
"percent_delta": 1.1786,
"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.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3077,
"delta": -0.0063,
"percent_delta": -0.0201,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.557,
"after": 1.0,
"delta": 0.443,
"percent_delta": 0.7953,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.65,
"after": 0.0,
"delta": -0.65,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.4481,
"delta": -0.0079,
"percent_delta": -0.0173,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.027,
"after": 0.0,
"delta": -1.027,
"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.459,
"after": 1.0,
"delta": 0.541,
"percent_delta": 1.1786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.19,
"after": 3.0,
"delta": -1.19,
"percent_delta": -0.284,
"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.220 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.190 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.459 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.557 | - |
| predicted_RBI | 0.650 | - |
| predicted_SLG | 0.456 | - |
| predicted_SO | 1.027 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.279 | 0.059 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.847 | 2.657 |
| predicted_AVG | 0.241 | 0.004 |
| predicted_BB | 0.690 | 0.231 |
| predicted_H | 1.661 | 0.671 |
| predicted_HBP | 0.188 | - |
| predicted_HR | 0.393 | 0.183 |
| predicted_OBP | 0.316 | 0.002 |
| predicted_R | 1.082 | 0.525 |
| predicted_RBI | 1.127 | 0.477 |
| predicted_SLG | 0.460 | 0.004 |
| predicted_SO | 1.722 | 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.279 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.847 | 0.000 |
| predicted_AVG | 0.238 | -0.003 |
| predicted_BB | 0.687 | -0.003 |
| predicted_H | 1.631 | -0.030 |
| predicted_HBP | 0.188 | 0.000 |
| predicted_HR | 0.386 | -0.008 |
| predicted_OBP | 0.308 | -0.008 |
| predicted_R | 1.048 | -0.034 |
| predicted_RBI | 1.092 | -0.035 |
| predicted_SLG | 0.448 | -0.012 |
| predicted_SO | 1.729 | 0.007 |
AB rounded to 7 (raw=6.85), rates preserved: AVG=0.238 HR/AB=0.056
| 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.279 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.153 |
| predicted_AVG | 0.286 | 0.048 |
| predicted_BB | 1.000 | 0.313 |
| predicted_H | 2.000 | 0.369 |
| predicted_HR | 0.000 | -0.386 |
| predicted_OBP | 0.375 | 0.067 |
| predicted_R | 1.000 | -0.048 |
| predicted_RBI | 1.000 | -0.092 |
| predicted_SLG | 0.286 | -0.162 |
| predicted_SO | 2.000 | 0.271 |
Attached 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 | 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 | - | 20.000 | 4.000 | 0.000 | 0.000 | 2.000 | 4.000 | 4.000 | 1.000 | 5.000 | 0.2000 | 0.2609 | 0.5000 | 0.2000 | 0.1000 | 0.2000 | 0.0500 | 0.2500 |
| last_10 | 0.20 | 10 | - | 40.000 | 12.000 | 0.000 | 0.000 | 3.000 | 7.000 | 9.000 | 3.000 | 9.000 | 0.3000 | 0.3556 | 0.5250 | 0.3000 | 0.0750 | 0.1750 | 0.0750 | 0.2250 |
| season | 0.60 | 67 | - | 979.000 | 238.000 | 56.000 | 0.000 | 44.000 | 156.000 | 142.000 | 117.000 | 262.000 | 0.2431 | 0.3243 | 0.4351 | 0.2431 | 0.0449 | 0.1593 | 0.1195 | 0.2676 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3540 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.1970 |
| predicted_AVG | 0.2460 |
| predicted_BB | 0.9810 |
| predicted_H | 2.5080 |
| predicted_HBP | 0.1880 |
| predicted_HR | 0.6240 |
| predicted_OBP | 0.3178 |
| predicted_R | 1.7430 |
| predicted_RBI | 1.7290 |
| predicted_SLG | 0.4646 |
| predicted_SO | 2.5970 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2200 | 0.3540 | 0.2793 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.1900 | 10.1970 | 6.8471 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2460 | 0.2410 | model_form_blend |
| predicted_BB | 0.4590 | 0.9810 | 0.6899 | model_form_blend |
| predicted_H | 0.9900 | 2.5080 | 1.6615 | model_form_blend |
| predicted_HBP | - | 0.1880 | 0.1880 | form_only |
| predicted_HR | 0.2100 | 0.6240 | 0.3931 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3178 | 0.3157 | model_form_blend |
| predicted_R | 0.5570 | 1.7430 | 1.0816 | model_form_blend |
| predicted_RBI | 0.6500 | 1.7290 | 1.1273 | model_form_blend |
| predicted_SLG | 0.4560 | 0.4646 | 0.4598 | model_form_blend |
| predicted_SO | 1.0270 | 2.5970 | 1.7215 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| 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 | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| 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 | 1B |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 624413 |
| playerID | 624413 |
| playerName | Pete Alonso |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.336 |
| sl_xwoba | 0.368 |
| sl_xba | 0.27 |
| sl_xslg | 0.513 |
| sl_sweet_spot_percent | 32.2 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 55.8 |
| sl_exit_velocity_avg | 95.0 |
| sl_launch_angle_avg | 15.0 |
| sl_whiff_percent | 27.1 |
| 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.205 | 1.000 | 0.000 | Hitting_2B | 0.201 | 1.000 | 0.799 | 0.000 |
| predicted_3B | 0.029 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 3.386 | 4.000 | 5.000 | Hitting_AB | 3.328 | 3.000 | 0.672 | 1.000 |
| predicted_AVG | 0.247 | 0.250 | 0.200 | Hitting_AVG | 0.273 | 0.667 | -0.023 | -0.417 |
| predicted_BB | 0.450 | 0.000 | 1.000 | Hitting_BB | 0.448 | 1.000 | -0.448 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.034 | 1.000 | -0.034 | -1.000 |
| predicted_H | 0.310 | 1.000 | 1.000 | Hitting_H | 0.908 | 2.000 | 0.092 | -1.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.052 | 0.000 | -0.052 | 0.000 |
| predicted_OBP | 0.285 | 0.250 | 0.333 | Hitting_OBP | 0.363 | 0.750 | -0.113 | -0.500 |
| predicted_R | 0.520 | 0.000 | 1.000 | Hitting_R | 0.511 | 2.000 | -0.511 | -2.000 |
| predicted_RBI | 0.210 | 0.000 | 1.000 | Hitting_RBI | 0.546 | 1.000 | -0.546 | -1.000 |
| predicted_SLG | 0.362 | 0.500 | 0.200 | Hitting_SLG | 0.397 | 1.000 | 0.103 | -0.500 |
| predicted_SO | 0.807 | 2.000 | 1.000 | Hitting_SO | 0.793 | 1.000 | 1.207 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 0.8070 -> 2.0000 (boost 1.1930, worse) |
| Biggest Deboost | predicted_R: 0.5200 -> 0.0000 (deboost -0.5200, 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.3860 -> 5.2222 (boost 1.8362, 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.3619 -> 0.2972 (deboost -0.0647, 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.5917 -> 1.0000 (boost 0.4083, better) | predicted_2B: 0.2960 -> 0.0000 (deboost -0.2960, worse) | AB rounded to 5 (raw=5.22), rates preserved: AVG=0.192 HR/AB=0.010 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.182) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7906 -> 1.0000 (boost 0.2094, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2739 -> 0.3330 (boost 0.0591, better) | predicted_SLG: 0.2972 -> 0.2000 (deboost -0.0972, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 2 | 4 | 1 | 5 | predicted_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.2000 -> 0.2972 (boost 0.0972, better) | predicted_OBP: 0.3330 -> 0.2739 (deboost -0.0591, 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.205,
"predicted_3B": 0.029,
"predicted_AB": 3.386,
"predicted_AVG": 0.247,
"predicted_BB": 0.45,
"predicted_H": 0.31,
"predicted_HR": 0.03,
"predicted_OBP": 0.285,
"predicted_R": 0.52,
"predicted_RBI": 0.21,
"predicted_SLG": 0.362,
"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.296,
"predicted_3B": 0.0522,
"predicted_AB": 5.2222,
"predicted_AVG": 0.2504,
"predicted_BB": 0.5943,
"predicted_H": 1.0193,
"predicted_HBP": 0.033,
"predicted_HR": 0.0514,
"predicted_OBP": 0.3007,
"predicted_R": 0.8161,
"predicted_RBI": 0.6805,
"predicted_SLG": 0.3619,
"predicted_SO": 1.285
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.205,
"after": 0.296,
"delta": 0.091,
"percent_delta": 0.4439,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0522,
"delta": 0.0232,
"percent_delta": 0.8,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.386,
"after": 5.2222,
"delta": 1.8362,
"percent_delta": 0.5423,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2504,
"delta": 0.0034,
"percent_delta": 0.0138,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.45,
"after": 0.5943,
"delta": 0.1443,
"percent_delta": 0.3207,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.31,
"after": 1.0193,
"delta": 0.7093,
"percent_delta": 2.2881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0514,
"delta": 0.0214,
"percent_delta": 0.7133,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.285,
"after": 0.3007,
"delta": 0.0157,
"percent_delta": 0.0551,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.52,
"after": 0.8161,
"delta": 0.2961,
"percent_delta": 0.5694,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.21,
"after": 0.6805,
"delta": 0.4705,
"percent_delta": 2.2405,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.362,
"after": 0.3619,
"delta": -0.0001,
"percent_delta": -0.0003,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.807,
"after": 1.285,
"delta": 0.478,
"percent_delta": 0.5923,
"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.386,
"after": 5.2222,
"delta": 1.8362,
"percent_delta": 0.5423,
"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.296,
"predicted_3B": 0.0522,
"predicted_AB": 5.2222,
"predicted_AVG": 0.1916,
"predicted_BB": 0.5917,
"predicted_H": 1.0006,
"predicted_HBP": 0.033,
"predicted_HR": 0.0504,
"predicted_OBP": 0.2739,
"predicted_R": 0.7906,
"predicted_RBI": 0.6593,
"predicted_SLG": 0.2972,
"predicted_SO": 1.2905
},
"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.0522,
"after": 0.0522,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.2222,
"after": 5.2222,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2504,
"after": 0.1916,
"delta": -0.0588,
"percent_delta": -0.2348,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5943,
"after": 0.5917,
"delta": -0.0026,
"percent_delta": -0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0193,
"after": 1.0006,
"delta": -0.0187,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0514,
"after": 0.0504,
"delta": -0.001,
"percent_delta": -0.0195,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3007,
"after": 0.2739,
"delta": -0.0268,
"percent_delta": -0.0891,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8161,
"after": 0.7906,
"delta": -0.0255,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6805,
"after": 0.6593,
"delta": -0.0212,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3619,
"after": 0.2972,
"delta": -0.0647,
"percent_delta": -0.1788,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.285,
"after": 1.2905,
"delta": 0.0055,
"percent_delta": 0.0043,
"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.3619,
"after": 0.2972,
"delta": -0.0647,
"percent_delta": -0.1788,
"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.192 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.296,
"after": 0.0,
"delta": -0.296,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0522,
"after": 0.0,
"delta": -0.0522,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.2222,
"after": 5.0,
"delta": -0.2222,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5917,
"after": 1.0,
"delta": 0.4083,
"percent_delta": 0.69,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0006,
"after": 1.0,
"delta": -0.0006,
"percent_delta": -0.0006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.0,
"delta": -0.033,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0504,
"after": 0.0,
"delta": -0.0504,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6593,
"after": 1.0,
"delta": 0.3407,
"percent_delta": 0.5168,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2905,
"after": 1.0,
"delta": -0.2905,
"percent_delta": -0.2251,
"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.5917,
"after": 1.0,
"delta": 0.4083,
"percent_delta": 0.69,
"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=11.0, weight=0.107, BvP AVG=0.182)",
"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.8927,
"bvp": 0.1073
},
"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.7906,
"after": 1.0,
"delta": 0.2094,
"percent_delta": 0.2649,
"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.7906,
"after": 1.0,
"delta": 0.2094,
"percent_delta": 0.2649,
"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.1916,
"after": 0.2,
"delta": 0.0084,
"percent_delta": 0.0438,
"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.2739,
"after": 0.333,
"delta": 0.0591,
"percent_delta": 0.2158,
"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.2972,
"after": 0.2,
"delta": -0.0972,
"percent_delta": -0.3271,
"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.2739,
"after": 0.333,
"delta": 0.0591,
"percent_delta": 0.2158,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.2972,
"after": 0.2,
"delta": -0.0972,
"percent_delta": -0.3271,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_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.1916,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2739,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2972,
"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.1916,
"delta": -0.0084,
"percent_delta": -0.0419,
"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.2739,
"delta": -0.0591,
"percent_delta": -0.1775,
"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.2972,
"delta": 0.0972,
"percent_delta": 0.4862,
"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.2972,
"delta": 0.0972,
"percent_delta": 0.4862,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2739,
"delta": -0.0591,
"percent_delta": -0.1775,
"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.205,
"after": 1.0,
"delta": 0.795,
"percent_delta": 3.878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.029,
"after": 0.0,
"delta": -0.029,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.386,
"after": 4.0,
"delta": 0.614,
"percent_delta": 0.1813,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.1916,
"delta": -0.0554,
"percent_delta": -0.2243,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"percent_delta": 2.2258,
"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.285,
"after": 0.2739,
"delta": -0.0111,
"percent_delta": -0.0389,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.21,
"after": 0.0,
"delta": -0.21,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.362,
"after": 0.2972,
"delta": -0.0648,
"percent_delta": -0.179,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.807,
"after": 2.0,
"delta": 1.193,
"percent_delta": 1.4783,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.807,
"after": 2.0,
"delta": 1.193,
"percent_delta": 1.4783,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.52,
"after": 0.0,
"delta": -0.52,
"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.205 | - |
| predicted_3B | 0.029 | - |
| predicted_AB | 3.386 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.450 | - |
| predicted_H | 0.310 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.285 | - |
| predicted_R | 0.520 | - |
| predicted_RBI | 0.210 | - |
| predicted_SLG | 0.362 | - |
| 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.296 | 0.091 |
| predicted_3B | 0.052 | 0.023 |
| predicted_AB | 5.222 | 1.836 |
| predicted_AVG | 0.250 | 0.003 |
| predicted_BB | 0.594 | 0.144 |
| predicted_H | 1.019 | 0.709 |
| predicted_HBP | 0.033 | - |
| predicted_HR | 0.051 | 0.021 |
| predicted_OBP | 0.301 | 0.016 |
| predicted_R | 0.816 | 0.296 |
| predicted_RBI | 0.680 | 0.471 |
| predicted_SLG | 0.362 | -0.000 |
| predicted_SO | 1.285 | 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.296 | 0.000 |
| predicted_3B | 0.052 | 0.000 |
| predicted_AB | 5.222 | 0.000 |
| predicted_AVG | 0.192 | -0.059 |
| predicted_BB | 0.592 | -0.003 |
| predicted_H | 1.001 | -0.019 |
| predicted_HBP | 0.033 | 0.000 |
| predicted_HR | 0.050 | -0.001 |
| predicted_OBP | 0.274 | -0.027 |
| predicted_R | 0.791 | -0.026 |
| predicted_RBI | 0.659 | -0.021 |
| predicted_SLG | 0.297 | -0.065 |
| predicted_SO | 1.290 | 0.006 |
AB rounded to 5 (raw=5.22), rates preserved: AVG=0.192 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 | - |
Sample-size BvP blend (BvP AB=11.0, weight=0.107, BvP AVG=0.182)
| 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.296 |
| predicted_3B | 0.000 | -0.052 |
| predicted_AB | 5.000 | -0.222 |
| predicted_AVG | 0.200 | 0.008 |
| predicted_BB | 1.000 | 0.408 |
| predicted_H | 1.000 | -0.001 |
| predicted_HR | 0.000 | -0.050 |
| predicted_OBP | 0.333 | 0.059 |
| predicted_R | 1.000 | 0.209 |
| predicted_RBI | 1.000 | 0.341 |
| predicted_SLG | 0.200 | -0.097 |
| predicted_SO | 1.000 | -0.290 |
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 | 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 | 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 | 4.000 | 1.000 | 0.000 | 0.000 | 3.000 | 3.000 | 1.000 | 4.000 | 0.2500 | 0.2778 | 0.3125 | 0.2500 | 0.0000 | 0.1875 | 0.0625 | 0.2500 |
| last_10 | 0.20 | 10 | - | 34.000 | 7.000 | 1.000 | 1.000 | 0.000 | 6.000 | 5.000 | 2.000 | 10.000 | 0.2059 | 0.2432 | 0.2941 | 0.2059 | 0.0000 | 0.1765 | 0.0588 | 0.2941 |
| season | 0.60 | 54 | - | 579.000 | 158.000 | 35.000 | 5.000 | 9.000 | 95.000 | 89.000 | 77.000 | 138.000 | 0.2729 | 0.3616 | 0.3972 | 0.2729 | 0.0155 | 0.1641 | 0.1330 | 0.2383 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4130 |
| predicted_3B | 0.0820 |
| predicted_AB | 7.5850 |
| predicted_AVG | 0.2547 |
| predicted_BB | 0.7800 |
| predicted_H | 1.9320 |
| predicted_HBP | 0.0330 |
| predicted_HR | 0.0790 |
| predicted_OBP | 0.3208 |
| predicted_R | 1.1970 |
| predicted_RBI | 1.2860 |
| predicted_SLG | 0.3618 |
| predicted_SO | 1.9000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2050 | 0.4130 | 0.2960 | model_form_blend |
| predicted_3B | 0.0290 | 0.0820 | 0.0522 | model_form_blend |
| predicted_AB | 3.3860 | 7.5850 | 5.2222 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2547 | 0.2504 | model_form_blend |
| predicted_BB | 0.4500 | 0.7800 | 0.5943 | model_form_blend |
| predicted_H | 0.3100 | 1.9320 | 1.0193 | model_form_blend |
| predicted_HBP | - | 0.0330 | 0.0330 | form_only |
| predicted_HR | 0.0300 | 0.0790 | 0.0514 | model_form_blend |
| predicted_OBP | 0.2850 | 0.3208 | 0.3007 | model_form_blend |
| predicted_R | 0.5200 | 1.1970 | 0.8161 | model_form_blend |
| predicted_RBI | 0.2100 | 1.2860 | 0.6805 | model_form_blend |
| predicted_SLG | 0.3620 | 0.3618 | 0.3619 | model_form_blend |
| predicted_SO | 0.8070 | 1.9000 | 1.2850 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 174 |
| Season rows before report date | 174 |
| Report year | 2026 |
| Profile rows used | 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 | 4 |
| H | 1 |
| 2B | 1 |
| 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 | 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 | 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 | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 665750 |
| playerID | 665750 |
| playerName | Leody Taveras |
| pos | CF |
| started | True |
| startingPosition | RF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.5 |
| sl_bb_percent | 11.2 |
| sl_woba | 0.328 |
| sl_xwoba | 0.313 |
| sl_xba | 0.246 |
| sl_xslg | 0.352 |
| sl_sweet_spot_percent | 34.3 |
| sl_barrel_batted_rate | 4.4 |
| sl_hard_hit_percent | 29.2 |
| sl_exit_velocity_avg | 86.8 |
| sl_launch_angle_avg | 15.7 |
| sl_whiff_percent | 24.9 |
| 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.169 | 1.000 | 0.000 | Hitting_2B | 0.168 | 0.000 | 0.832 | 1.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 3.587 | 4.000 | 5.000 | Hitting_AB | 3.566 | 2.000 | 0.434 | 2.000 |
| predicted_AVG | 0.230 | 0.250 | 0.200 | Hitting_AVG | 0.267 | 0.000 | -0.017 | 0.250 |
| predicted_BB | 0.337 | 0.000 | 0.000 | Hitting_BB | 0.341 | 0.000 | -0.341 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.800 | 1.000 | 1.000 | Hitting_H | 0.954 | 0.000 | 0.046 | 1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.185 | 0.000 | -0.185 | 0.000 |
| predicted_OBP | 0.280 | 0.250 | 0.200 | Hitting_OBP | 0.328 | 0.000 | -0.078 | 0.250 |
| predicted_R | 0.517 | 0.000 | 1.000 | Hitting_R | 0.514 | 0.000 | -0.514 | 0.000 |
| predicted_RBI | 0.470 | 0.000 | 1.000 | Hitting_RBI | 0.526 | 1.000 | -0.526 | -1.000 |
| predicted_SLG | 0.380 | 0.500 | 0.200 | Hitting_SLG | 0.483 | 0.000 | 0.017 | 0.500 |
| predicted_SO | 1.052 | 1.000 | 1.000 | Hitting_SO | 1.046 | 1.000 | -0.046 | 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_2B: 0.1690 -> 1.0000 (boost 0.8310, better) |
| Biggest Deboost | predicted_R: 0.5170 -> 0.0000 (deboost -0.5170, 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 | 8 | 3 | 7 | 4 | predicted_AB: 3.5870 -> 5.3227 (boost 1.7357, better) | predicted_SLG: 0.3800 -> 0.3662 (deboost -0.0138, 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.2180 -> 0.2065 (deboost -0.0115, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_RBI: 0.6869 -> 1.0000 (boost 0.3131, better) | predicted_SO: 1.5747 -> 1.0000 (deboost -0.5747, better) | AB rounded to 5 (raw=5.32), rates preserved: AVG=0.206 HR/AB=0.031 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6382 -> 1.0000 (boost 0.3618, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3559 -> 0.2000 (deboost -0.1559, 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_2B: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_AB: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.3559 (boost 0.1559, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694212",
"player_name": "Samuel Basallo",
"position": "C",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.169,
"predicted_3B": 0.023,
"predicted_AB": 3.587,
"predicted_AVG": 0.23,
"predicted_BB": 0.337,
"predicted_H": 0.8,
"predicted_HR": 0.12,
"predicted_OBP": 0.28,
"predicted_R": 0.517,
"predicted_RBI": 0.47,
"predicted_SLG": 0.38,
"predicted_SO": 1.052
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2417,
"predicted_3B": 0.0256,
"predicted_AB": 5.3227,
"predicted_AVG": 0.218,
"predicted_BB": 0.5055,
"predicted_H": 1.1195,
"predicted_HBP": 0.003,
"predicted_HR": 0.1708,
"predicted_OBP": 0.2736,
"predicted_R": 0.6588,
"predicted_RBI": 0.709,
"predicted_SLG": 0.3662,
"predicted_SO": 1.568
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.169,
"after": 0.2417,
"delta": 0.0727,
"percent_delta": 0.4302,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0256,
"delta": 0.0026,
"percent_delta": 0.113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.587,
"after": 5.3227,
"delta": 1.7357,
"percent_delta": 0.4839,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.218,
"delta": -0.012,
"percent_delta": -0.0522,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.337,
"after": 0.5055,
"delta": 0.1685,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8,
"after": 1.1195,
"delta": 0.3195,
"percent_delta": 0.3994,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1708,
"delta": 0.0508,
"percent_delta": 0.4233,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.28,
"after": 0.2736,
"delta": -0.0064,
"percent_delta": -0.0229,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.517,
"after": 0.6588,
"delta": 0.1418,
"percent_delta": 0.2743,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.47,
"after": 0.709,
"delta": 0.239,
"percent_delta": 0.5085,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3662,
"delta": -0.0138,
"percent_delta": -0.0363,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.052,
"after": 1.568,
"delta": 0.516,
"percent_delta": 0.4905,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 8,
"deboosted_metrics": 3,
"better_metrics": 7,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.587,
"after": 5.3227,
"delta": 1.7357,
"percent_delta": 0.4839,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.38,
"after": 0.3662,
"delta": -0.0138,
"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": 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.2417,
"predicted_3B": 0.0256,
"predicted_AB": 5.3227,
"predicted_AVG": 0.2065,
"predicted_BB": 0.5033,
"predicted_H": 1.099,
"predicted_HBP": 0.003,
"predicted_HR": 0.1675,
"predicted_OBP": 0.275,
"predicted_R": 0.6382,
"predicted_RBI": 0.6869,
"predicted_SLG": 0.3559,
"predicted_SO": 1.5747
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2417,
"after": 0.2417,
"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": 5.3227,
"after": 5.3227,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.218,
"after": 0.2065,
"delta": -0.0115,
"percent_delta": -0.0528,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5055,
"after": 0.5033,
"delta": -0.0022,
"percent_delta": -0.0044,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1195,
"after": 1.099,
"delta": -0.0205,
"percent_delta": -0.0183,
"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.1708,
"after": 0.1675,
"delta": -0.0033,
"percent_delta": -0.0193,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2736,
"after": 0.275,
"delta": 0.0014,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6588,
"after": 0.6382,
"delta": -0.0206,
"percent_delta": -0.0313,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.709,
"after": 0.6869,
"delta": -0.0221,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3662,
"after": 0.3559,
"delta": -0.0103,
"percent_delta": -0.0281,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.568,
"after": 1.5747,
"delta": 0.0067,
"percent_delta": 0.0043,
"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.218,
"after": 0.2065,
"delta": -0.0115,
"percent_delta": -0.0528,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.32), rates preserved: AVG=0.206 HR/AB=0.031",
"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.2417,
"after": 0.0,
"delta": -0.2417,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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": 5.3227,
"after": 5.0,
"delta": -0.3227,
"percent_delta": -0.0606,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5033,
"after": 0.0,
"delta": -0.5033,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.099,
"after": 1.0,
"delta": -0.099,
"percent_delta": -0.0901,
"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.1675,
"after": 0.0,
"delta": -0.1675,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6869,
"after": 1.0,
"delta": 0.3131,
"percent_delta": 0.4558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5747,
"after": 1.0,
"delta": -0.5747,
"percent_delta": -0.365,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6869,
"after": 1.0,
"delta": 0.3131,
"percent_delta": 0.4558,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.5747,
"after": 1.0,
"delta": -0.5747,
"percent_delta": -0.365,
"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": 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.6382,
"after": 1.0,
"delta": 0.3618,
"percent_delta": 0.5669,
"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.6382,
"after": 1.0,
"delta": 0.3618,
"percent_delta": 0.5669,
"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.2065,
"after": 0.2,
"delta": -0.0065,
"percent_delta": -0.0315,
"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.275,
"after": 0.2,
"delta": -0.075,
"percent_delta": -0.2727,
"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.3559,
"after": 0.2,
"delta": -0.1559,
"percent_delta": -0.438,
"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.3559,
"after": 0.2,
"delta": -0.1559,
"percent_delta": -0.438,
"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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 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_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.2065,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.275,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3559,
"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.2065,
"delta": 0.0065,
"percent_delta": 0.0324,
"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.275,
"delta": 0.075,
"percent_delta": 0.3752,
"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.3559,
"delta": 0.1559,
"percent_delta": 0.7796,
"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.3559,
"delta": 0.1559,
"percent_delta": 0.7796,
"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": 1.0,
"delta": 0.831,
"percent_delta": 4.9172,
"direction": "boost",
"projection_effect": "better",
"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.587,
"after": 4.0,
"delta": 0.413,
"percent_delta": 0.1151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2065,
"delta": -0.0235,
"percent_delta": -0.1022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.8,
"after": 1.0,
"delta": 0.2,
"percent_delta": 0.25,
"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.28,
"after": 0.275,
"delta": -0.005,
"percent_delta": -0.0179,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.517,
"after": 0.0,
"delta": -0.517,
"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.38,
"after": 0.3559,
"delta": -0.0241,
"percent_delta": -0.0634,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.052,
"after": 1.0,
"delta": -0.052,
"percent_delta": -0.0494,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.169,
"after": 1.0,
"delta": 0.831,
"percent_delta": 4.9172,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.517,
"after": 0.0,
"delta": -0.517,
"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.023 | - |
| predicted_AB | 3.587 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.337 | - |
| predicted_H | 0.800 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.280 | - |
| predicted_R | 0.517 | - |
| predicted_RBI | 0.470 | - |
| predicted_SLG | 0.380 | - |
| predicted_SO | 1.052 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.073 |
| predicted_3B | 0.026 | 0.003 |
| predicted_AB | 5.323 | 1.736 |
| predicted_AVG | 0.218 | -0.012 |
| predicted_BB | 0.505 | 0.168 |
| predicted_H | 1.119 | 0.319 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.171 | 0.051 |
| predicted_OBP | 0.274 | -0.006 |
| predicted_R | 0.659 | 0.142 |
| predicted_RBI | 0.709 | 0.239 |
| predicted_SLG | 0.366 | -0.014 |
| predicted_SO | 1.568 | 0.516 |
Step 3: 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.026 | 0.000 |
| predicted_AB | 5.323 | 0.000 |
| predicted_AVG | 0.206 | -0.012 |
| predicted_BB | 0.503 | -0.002 |
| predicted_H | 1.099 | -0.020 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.168 | -0.003 |
| predicted_OBP | 0.275 | 0.001 |
| predicted_R | 0.638 | -0.021 |
| predicted_RBI | 0.687 | -0.022 |
| predicted_SLG | 0.356 | -0.010 |
| predicted_SO | 1.575 | 0.007 |
AB rounded to 5 (raw=5.32), rates preserved: AVG=0.206 HR/AB=0.031
| 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.242 |
| predicted_3B | 0.000 | -0.026 |
| predicted_AB | 5.000 | -0.323 |
| predicted_AVG | 0.200 | -0.006 |
| predicted_BB | 0.000 | -0.503 |
| predicted_H | 1.000 | -0.099 |
| predicted_HR | 0.000 | -0.168 |
| predicted_OBP | 0.200 | -0.075 |
| predicted_R | 1.000 | 0.362 |
| predicted_RBI | 1.000 | 0.313 |
| predicted_SLG | 0.200 | -0.156 |
| predicted_SO | 1.000 | -0.575 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 1.000 | 1.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -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 | - | 9.000 | 0.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 0.000 | 3.000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.0000 | 0.1111 | 0.0000 | 0.3333 |
| last_10 | 0.20 | 10 | - | 25.000 | 5.000 | 2.000 | 0.000 | 0.000 | 3.000 | 3.000 | 5.000 | 7.000 | 0.2000 | 0.3333 | 0.2800 | 0.2000 | 0.0000 | 0.1200 | 0.2000 | 0.2800 |
| season | 0.60 | 54 | - | 617.000 | 165.000 | 29.000 | 4.000 | 32.000 | 91.000 | 89.000 | 58.000 | 181.000 | 0.2674 | 0.3275 | 0.4830 | 0.2674 | 0.0519 | 0.1475 | 0.0940 | 0.2933 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3350 |
| predicted_3B | 0.0290 |
| predicted_AB | 7.5530 |
| predicted_AVG | 0.2025 |
| predicted_BB | 0.7220 |
| predicted_H | 1.5300 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.2360 |
| predicted_OBP | 0.2653 |
| predicted_R | 0.8410 |
| predicted_RBI | 1.0160 |
| predicted_SLG | 0.3485 |
| predicted_SO | 2.2310 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1690 | 0.3350 | 0.2417 | model_form_blend |
| predicted_3B | 0.0230 | 0.0290 | 0.0256 | model_form_blend |
| predicted_AB | 3.5870 | 7.5530 | 5.3227 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2025 | 0.2180 | model_form_blend |
| predicted_BB | 0.3370 | 0.7220 | 0.5055 | model_form_blend |
| predicted_H | 0.8000 | 1.5300 | 1.1195 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1200 | 0.2360 | 0.1708 | model_form_blend |
| predicted_OBP | 0.2800 | 0.2653 | 0.2736 | model_form_blend |
| predicted_R | 0.5170 | 0.8410 | 0.6588 | model_form_blend |
| predicted_RBI | 0.4700 | 1.0160 | 0.7090 | model_form_blend |
| predicted_SLG | 0.3800 | 0.3485 | 0.3662 | model_form_blend |
| predicted_SO | 1.0520 | 2.2310 | 1.5680 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 172 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.267 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 1 |
| 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-C |
| gameID | 20260609_SEA@BAL |
| game_type | ph |
| mlbID | 694212 |
| note | Struck out for Huff in the 7th. |
| playerID | 694212 |
| playerName | Samuel Basallo |
| pos | C |
| started | False |
| startingPosition | PH |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-09 |
| sl_k_percent | 25.6 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.347 |
| sl_xwoba | 0.357 |
| sl_xba | 0.272 |
| sl_xslg | 0.497 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 12.4 |
| sl_hard_hit_percent | 47.7 |
| sl_exit_velocity_avg | 92.1 |
| sl_launch_angle_avg | 13.0 |
| sl_whiff_percent | 31.5 |
| sl_swing_percent | 51.6 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.132 | 0.000 | 0.000 | Hitting_2B | 0.130 | 0.000 | -0.130 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.340 | 4.000 | 5.000 | Hitting_AB | 3.278 | 5.000 | 0.722 | -1.000 |
| predicted_AVG | 0.226 | 0.250 | 0.200 | Hitting_AVG | 0.211 | 0.200 | 0.039 | 0.050 |
| predicted_BB | 0.333 | 0.000 | 0.000 | Hitting_BB | 0.327 | 0.000 | -0.327 | 0.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.691 | 1.000 | 0.309 | 0.000 |
| predicted_HR | 0.160 | 0.000 | 0.000 | Hitting_HR | 0.148 | 1.000 | -0.148 | -1.000 |
| predicted_OBP | 0.269 | 0.250 | 0.200 | Hitting_OBP | 0.286 | 0.200 | -0.036 | 0.050 |
| predicted_R | 0.459 | 0.000 | 1.000 | Hitting_R | 0.457 | 2.000 | -0.457 | -2.000 |
| predicted_RBI | 0.500 | 0.000 | 1.000 | Hitting_RBI | 0.481 | 1.000 | -0.481 | -1.000 |
| predicted_SLG | 0.418 | 0.250 | 0.200 | Hitting_SLG | 0.386 | 0.800 | -0.136 | -0.550 |
| predicted_SO | 1.113 | 0.000 | 2.000 | Hitting_SO | 1.093 | 2.000 | -1.093 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 9 |
| Better Metrics | 3 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.3400 -> 4.0000 (boost 0.6600, better) |
| Biggest Deboost | predicted_SO: 1.1130 -> 0.0000 (deboost -1.1130, 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.3400 -> 5.2652 (boost 1.9252, better) | predicted_AVG: 0.2260 -> 0.2128 (deboost -0.0132, 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.2128 -> 0.1928 (deboost -0.0200, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 1 | 6 | predicted_SO: 1.8520 -> 2.0000 (boost 0.1480, worse) | predicted_BB: 0.4392 -> 0.0000 (deboost -0.4392, worse) | AB rounded to 5 (raw=5.27), rates preserved: AVG=0.193 HR/AB=0.058 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8582 -> 1.0000 (boost 0.1418, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1928 -> 0.2000 (boost 0.0072, better) | predicted_SLG: 0.4077 -> 0.2000 (deboost -0.2077, 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_SO: 2.0000 -> 0.0000 (deboost -2.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2000 -> 0.4077 (boost 0.2077, better) | predicted_AVG: 0.2000 -> 0.1928 (deboost -0.0072, worse) | 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.132,
"predicted_3B": 0.0,
"predicted_AB": 3.34,
"predicted_AVG": 0.226,
"predicted_BB": 0.333,
"predicted_H": 0.66,
"predicted_HR": 0.16,
"predicted_OBP": 0.269,
"predicted_R": 0.459,
"predicted_RBI": 0.5,
"predicted_SLG": 0.418,
"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.207,
"predicted_3B": 0.0004,
"predicted_AB": 5.2652,
"predicted_AVG": 0.2128,
"predicted_BB": 0.4411,
"predicted_H": 1.0341,
"predicted_HBP": 0.085,
"predicted_HR": 0.3139,
"predicted_OBP": 0.2637,
"predicted_R": 0.8858,
"predicted_RBI": 0.9102,
"predicted_SLG": 0.4248,
"predicted_SO": 1.8441
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.132,
"after": 0.207,
"delta": 0.075,
"percent_delta": 0.5682,
"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.34,
"after": 5.2652,
"delta": 1.9252,
"percent_delta": 0.5764,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2128,
"delta": -0.0132,
"percent_delta": -0.0584,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.4411,
"delta": 0.1081,
"percent_delta": 0.3246,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 1.0341,
"delta": 0.3741,
"percent_delta": 0.5668,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.16,
"after": 0.3139,
"delta": 0.1539,
"percent_delta": 0.9619,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.269,
"after": 0.2637,
"delta": -0.0053,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.459,
"after": 0.8858,
"delta": 0.4268,
"percent_delta": 0.9298,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.9102,
"delta": 0.4102,
"percent_delta": 0.8204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.4248,
"delta": 0.0068,
"percent_delta": 0.0163,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.113,
"after": 1.8441,
"delta": 0.7311,
"percent_delta": 0.6569,
"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.34,
"after": 5.2652,
"delta": 1.9252,
"percent_delta": 0.5764,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2128,
"delta": -0.0132,
"percent_delta": -0.0584,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 50
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.207,
"predicted_3B": 0.0004,
"predicted_AB": 5.2652,
"predicted_AVG": 0.1928,
"predicted_BB": 0.4392,
"predicted_H": 1.0152,
"predicted_HBP": 0.085,
"predicted_HR": 0.3079,
"predicted_OBP": 0.255,
"predicted_R": 0.8582,
"predicted_RBI": 0.8818,
"predicted_SLG": 0.4077,
"predicted_SO": 1.852
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.207,
"after": 0.207,
"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.2652,
"after": 5.2652,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2128,
"after": 0.1928,
"delta": -0.02,
"percent_delta": -0.094,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4411,
"after": 0.4392,
"delta": -0.0019,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0341,
"after": 1.0152,
"delta": -0.0189,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.085,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3139,
"after": 0.3079,
"delta": -0.006,
"percent_delta": -0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2637,
"after": 0.255,
"delta": -0.0087,
"percent_delta": -0.033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8858,
"after": 0.8582,
"delta": -0.0276,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9102,
"after": 0.8818,
"delta": -0.0284,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4248,
"after": 0.4077,
"delta": -0.0171,
"percent_delta": -0.0403,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8441,
"after": 1.852,
"delta": 0.0079,
"percent_delta": 0.0043,
"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.2128,
"after": 0.1928,
"delta": -0.02,
"percent_delta": -0.094,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.27), rates preserved: AVG=0.193 HR/AB=0.058",
"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.207,
"after": 0.0,
"delta": -0.207,
"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.2652,
"after": 5.0,
"delta": -0.2652,
"percent_delta": -0.0504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4392,
"after": 0.0,
"delta": -0.4392,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0152,
"after": 1.0,
"delta": -0.0152,
"percent_delta": -0.015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.085,
"after": 0.0,
"delta": -0.085,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.3079,
"after": 0.0,
"delta": -0.3079,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8818,
"after": 1.0,
"delta": 0.1182,
"percent_delta": 0.134,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.852,
"after": 2.0,
"delta": 0.148,
"percent_delta": 0.0799,
"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.852,
"after": 2.0,
"delta": 0.148,
"percent_delta": 0.0799,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4392,
"after": 0.0,
"delta": -0.4392,
"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.8582,
"after": 1.0,
"delta": 0.1418,
"percent_delta": 0.1652,
"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.8582,
"after": 1.0,
"delta": 0.1418,
"percent_delta": 0.1652,
"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.1928,
"after": 0.2,
"delta": 0.0072,
"percent_delta": 0.0373,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.255,
"after": 0.2,
"delta": -0.055,
"percent_delta": -0.2157,
"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.4077,
"after": 0.2,
"delta": -0.2077,
"percent_delta": -0.5094,
"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.1928,
"after": 0.2,
"delta": 0.0072,
"percent_delta": 0.0373,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4077,
"after": 0.2,
"delta": -0.2077,
"percent_delta": -0.5094,
"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": 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": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 3,
"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": "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.1928,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.255,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4077,
"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.2,
"after": 0.1928,
"delta": -0.0072,
"percent_delta": -0.036,
"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.2,
"after": 0.255,
"delta": 0.055,
"percent_delta": 0.2748,
"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.4077,
"delta": 0.2077,
"percent_delta": 1.0385,
"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.4077,
"delta": 0.2077,
"percent_delta": 1.0385,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2,
"after": 0.1928,
"delta": -0.0072,
"percent_delta": -0.036,
"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.132,
"after": 0.0,
"delta": -0.132,
"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.34,
"after": 4.0,
"delta": 0.66,
"percent_delta": 0.1976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.1928,
"delta": -0.0332,
"percent_delta": -0.1469,
"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.66,
"after": 1.0,
"delta": 0.34,
"percent_delta": 0.5152,
"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.269,
"after": 0.255,
"delta": -0.014,
"percent_delta": -0.052,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.459,
"after": 0.0,
"delta": -0.459,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.4077,
"delta": -0.0103,
"percent_delta": -0.0246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.113,
"after": 0.0,
"delta": -1.113,
"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.34,
"after": 4.0,
"delta": 0.66,
"percent_delta": 0.1976,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.113,
"after": 0.0,
"delta": -1.113,
"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.132 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.340 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.333 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.160 | - |
| predicted_OBP | 0.269 | - |
| predicted_R | 0.459 | - |
| predicted_RBI | 0.500 | - |
| predicted_SLG | 0.418 | - |
| 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.207 | 0.075 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.265 | 1.925 |
| predicted_AVG | 0.213 | -0.013 |
| predicted_BB | 0.441 | 0.108 |
| predicted_H | 1.034 | 0.374 |
| predicted_HBP | 0.085 | - |
| predicted_HR | 0.314 | 0.154 |
| predicted_OBP | 0.264 | -0.005 |
| predicted_R | 0.886 | 0.427 |
| predicted_RBI | 0.910 | 0.410 |
| predicted_SLG | 0.425 | 0.007 |
| predicted_SO | 1.844 | 0.731 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.207 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.265 | 0.000 |
| predicted_AVG | 0.193 | -0.020 |
| predicted_BB | 0.439 | -0.002 |
| predicted_H | 1.015 | -0.019 |
| predicted_HBP | 0.085 | 0.000 |
| predicted_HR | 0.308 | -0.006 |
| predicted_OBP | 0.255 | -0.009 |
| predicted_R | 0.858 | -0.028 |
| predicted_RBI | 0.882 | -0.028 |
| predicted_SLG | 0.408 | -0.017 |
| predicted_SO | 1.852 | 0.008 |
AB rounded to 5 (raw=5.27), rates preserved: AVG=0.193 HR/AB=0.058
| 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.207 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.265 |
| predicted_AVG | 0.200 | 0.007 |
| predicted_BB | 0.000 | -0.439 |
| predicted_H | 1.000 | -0.015 |
| predicted_HR | 0.000 | -0.308 |
| predicted_OBP | 0.200 | -0.055 |
| predicted_R | 1.000 | 0.142 |
| predicted_RBI | 1.000 | 0.118 |
| predicted_SLG | 0.200 | -0.208 |
| predicted_SO | 2.000 | 0.148 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -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 | 1.000 | 0.000 | 2.000 | 6.000 | 6.000 | 1.000 | 9.000 | 0.1429 | 0.1818 | 0.4762 | 0.1429 | 0.0952 | 0.2857 | 0.0476 | 0.4286 |
| last_10 | 0.20 | 10 | - | 37.000 | 7.000 | 1.000 | 0.000 | 4.000 | 8.000 | 9.000 | 1.000 | 15.000 | 0.1892 | 0.2308 | 0.5405 | 0.1892 | 0.1081 | 0.2162 | 0.0270 | 0.4054 |
| season | 0.60 | 50 | - | 531.000 | 112.000 | 21.000 | 0.000 | 24.000 | 78.000 | 73.000 | 53.000 | 177.000 | 0.2109 | 0.2857 | 0.3861 | 0.2109 | 0.0452 | 0.1469 | 0.0998 | 0.3333 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3040 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.7560 |
| predicted_AVG | 0.1957 |
| predicted_BB | 0.5810 |
| predicted_H | 1.5180 |
| predicted_HBP | 0.0850 |
| predicted_HR | 0.5130 |
| predicted_OBP | 0.2568 |
| predicted_R | 1.4380 |
| predicted_RBI | 1.4410 |
| predicted_SLG | 0.4337 |
| predicted_SO | 2.7900 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1320 | 0.3040 | 0.2070 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.3400 | 7.7560 | 5.2652 | model_form_blend |
| predicted_AVG | 0.2260 | 0.1957 | 0.2128 | model_form_blend |
| predicted_BB | 0.3330 | 0.5810 | 0.4411 | model_form_blend |
| predicted_H | 0.6600 | 1.5180 | 1.0341 | model_form_blend |
| predicted_HBP | - | 0.0850 | 0.0850 | form_only |
| predicted_HR | 0.1600 | 0.5130 | 0.3139 | model_form_blend |
| predicted_OBP | 0.2690 | 0.2568 | 0.2637 | model_form_blend |
| predicted_R | 0.4590 | 1.4380 | 0.8858 | model_form_blend |
| predicted_RBI | 0.5000 | 1.4410 | 0.9102 | model_form_blend |
| predicted_SLG | 0.4180 | 0.4337 | 0.4248 | model_form_blend |
| predicted_SO | 1.1130 | 2.7900 | 1.8441 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 159 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.211 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| 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 | 2 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260609_SEA@BAL |
| game_type | full |
| mlbID | 691723 |
| playerID | 691723 |
| playerName | Coby Mayo |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-09 |
| sl_k_percent | 31.6 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.287 |
| sl_xwoba | 0.299 |
| sl_xba | 0.219 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 26.8 |
| sl_barrel_batted_rate | 10.7 |
| sl_hard_hit_percent | 48.2 |
| sl_exit_velocity_avg | 91.8 |
| sl_launch_angle_avg | 19.6 |
| sl_whiff_percent | 29.8 |
| 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.057 | 0.000 | 0.000 | Hitting_2B | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.846 | 3.000 | 4.000 | Hitting_AB | 2.652 | 3.000 | 0.348 | 0.000 |
| predicted_AVG | 0.266 | 0.333 | 0.250 | Hitting_AVG | 0.209 | 0.000 | 0.125 | 0.333 |
| predicted_BB | 0.374 | 1.000 | 1.000 | Hitting_BB | 0.394 | 1.000 | 0.606 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.030 | 0.000 | -0.030 | 0.000 |
| predicted_H | 0.610 | 1.000 | 1.000 | Hitting_H | 0.553 | 0.000 | 0.447 | 1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.083 | 0.000 | -0.083 | 0.000 |
| predicted_OBP | 0.312 | 0.500 | 0.400 | Hitting_OBP | 0.308 | 0.250 | 0.192 | 0.250 |
| predicted_R | 0.366 | 0.000 | 1.000 | Hitting_R | 0.379 | 1.000 | -0.379 | -1.000 |
| predicted_RBI | 0.390 | 0.000 | 1.000 | Hitting_RBI | 0.348 | 0.000 | -0.348 | 0.000 |
| predicted_SLG | 0.426 | 0.333 | 0.250 | Hitting_SLG | 0.323 | 0.000 | 0.010 | 0.333 |
| predicted_SO | 1.041 | 1.000 | 1.000 | Hitting_SO | 0.970 | 0.000 | 0.030 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.3740 -> 1.0000 (boost 0.6260, better) |
| Biggest Deboost | predicted_RBI: 0.3900 -> 0.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: 2.8460 -> 3.8486 (boost 1.0026, better) | predicted_AVG: 0.2660 -> 0.2456 (deboost -0.0204, 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.2456 -> 0.2127 (deboost -0.0329, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 5 | 2 | predicted_BB: 0.5071 -> 1.0000 (boost 0.4929, better) | predicted_SO: 1.2478 -> 1.0000 (deboost -0.2478, better) | AB rounded to 4 (raw=3.85), rates preserved: AVG=0.213 HR/AB=0.054 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5319 -> 1.0000 (boost 0.4681, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3043 -> 0.4000 (boost 0.0957, better) | predicted_SLG: 0.3916 -> 0.2500 (deboost -0.1416, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3916 (boost 0.1416, better) | predicted_OBP: 0.4000 -> 0.3043 (deboost -0.0957, 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.057,
"predicted_3B": 0.0,
"predicted_AB": 2.846,
"predicted_AVG": 0.266,
"predicted_BB": 0.374,
"predicted_H": 0.61,
"predicted_HR": 0.13,
"predicted_OBP": 0.312,
"predicted_R": 0.366,
"predicted_RBI": 0.39,
"predicted_SLG": 0.426,
"predicted_SO": 1.041
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0652,
"predicted_3B": 0.0004,
"predicted_AB": 3.8486,
"predicted_AVG": 0.2456,
"predicted_BB": 0.5093,
"predicted_H": 0.8338,
"predicted_HBP": 0.003,
"predicted_HR": 0.2116,
"predicted_OBP": 0.3098,
"predicted_R": 0.549,
"predicted_RBI": 0.5683,
"predicted_SLG": 0.4229,
"predicted_SO": 1.2425
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.057,
"after": 0.0652,
"delta": 0.0082,
"percent_delta": 0.1439,
"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.846,
"after": 3.8486,
"delta": 1.0026,
"percent_delta": 0.3523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2456,
"delta": -0.0204,
"percent_delta": -0.0767,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.374,
"after": 0.5093,
"delta": 0.1353,
"percent_delta": 0.3618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.61,
"after": 0.8338,
"delta": 0.2238,
"percent_delta": 0.3669,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2116,
"delta": 0.0816,
"percent_delta": 0.6277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3098,
"delta": -0.0022,
"percent_delta": -0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.366,
"after": 0.549,
"delta": 0.183,
"percent_delta": 0.5,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.5683,
"delta": 0.1783,
"percent_delta": 0.4572,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.426,
"after": 0.4229,
"delta": -0.0031,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.041,
"after": 1.2425,
"delta": 0.2015,
"percent_delta": 0.1936,
"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": 2.846,
"after": 3.8486,
"delta": 1.0026,
"percent_delta": 0.3523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2456,
"delta": -0.0204,
"percent_delta": -0.0767,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 52
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0652,
"predicted_3B": 0.0004,
"predicted_AB": 3.8486,
"predicted_AVG": 0.2127,
"predicted_BB": 0.5071,
"predicted_H": 0.8185,
"predicted_HBP": 0.003,
"predicted_HR": 0.2075,
"predicted_OBP": 0.3043,
"predicted_R": 0.5319,
"predicted_RBI": 0.5506,
"predicted_SLG": 0.3916,
"predicted_SO": 1.2478
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0652,
"after": 0.0652,
"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.8486,
"after": 3.8486,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2456,
"after": 0.2127,
"delta": -0.0329,
"percent_delta": -0.134,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5093,
"after": 0.5071,
"delta": -0.0022,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8338,
"after": 0.8185,
"delta": -0.0153,
"percent_delta": -0.0183,
"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.2116,
"after": 0.2075,
"delta": -0.0041,
"percent_delta": -0.0194,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3098,
"after": 0.3043,
"delta": -0.0055,
"percent_delta": -0.0178,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.549,
"after": 0.5319,
"delta": -0.0171,
"percent_delta": -0.0311,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5683,
"after": 0.5506,
"delta": -0.0177,
"percent_delta": -0.0311,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4229,
"after": 0.3916,
"delta": -0.0313,
"percent_delta": -0.074,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2425,
"after": 1.2478,
"delta": 0.0053,
"percent_delta": 0.0043,
"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.2456,
"after": 0.2127,
"delta": -0.0329,
"percent_delta": -0.134,
"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.213 HR/AB=0.054",
"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.0652,
"after": 0.0,
"delta": -0.0652,
"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.8486,
"after": 4.0,
"delta": 0.1514,
"percent_delta": 0.0393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5071,
"after": 1.0,
"delta": 0.4929,
"percent_delta": 0.972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8185,
"after": 1.0,
"delta": 0.1815,
"percent_delta": 0.2217,
"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.2075,
"after": 0.0,
"delta": -0.2075,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.5506,
"after": 1.0,
"delta": 0.4494,
"percent_delta": 0.8162,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2478,
"after": 1.0,
"delta": -0.2478,
"percent_delta": -0.1986,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 4,
"deboosted_metrics": 3,
"better_metrics": 5,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.5071,
"after": 1.0,
"delta": 0.4929,
"percent_delta": 0.972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.2478,
"after": 1.0,
"delta": -0.2478,
"percent_delta": -0.1986,
"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.5319,
"after": 1.0,
"delta": 0.4681,
"percent_delta": 0.8801,
"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.5319,
"after": 1.0,
"delta": 0.4681,
"percent_delta": 0.8801,
"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.2127,
"after": 0.25,
"delta": 0.0373,
"percent_delta": 0.1754,
"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.3043,
"after": 0.4,
"delta": 0.0957,
"percent_delta": 0.3145,
"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.3916,
"after": 0.25,
"delta": -0.1416,
"percent_delta": -0.3616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 2,
"deboosted_metrics": 1,
"better_metrics": 2,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3043,
"after": 0.4,
"delta": 0.0957,
"percent_delta": 0.3145,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3916,
"after": 0.25,
"delta": -0.1416,
"percent_delta": -0.3616,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 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": 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.2127,
"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.3043,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3916,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2127,
"delta": -0.0373,
"percent_delta": -0.1493,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3043,
"delta": -0.0957,
"percent_delta": -0.2391,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3916,
"delta": 0.1416,
"percent_delta": 0.5664,
"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.3916,
"delta": 0.1416,
"percent_delta": 0.5664,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3043,
"delta": -0.0957,
"percent_delta": -0.2391,
"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.057,
"after": 0.0,
"delta": -0.057,
"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.846,
"after": 3.0,
"delta": 0.154,
"percent_delta": 0.0541,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.266,
"after": 0.2127,
"delta": -0.0533,
"percent_delta": -0.2004,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.374,
"after": 1.0,
"delta": 0.626,
"percent_delta": 1.6738,
"direction": "boost",
"projection_effect": "better",
"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.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.312,
"after": 0.3043,
"delta": -0.0077,
"percent_delta": -0.0247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.366,
"after": 0.0,
"delta": -0.366,
"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.426,
"after": 0.3916,
"delta": -0.0344,
"percent_delta": -0.0808,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.041,
"after": 1.0,
"delta": -0.041,
"percent_delta": -0.0394,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.374,
"after": 1.0,
"delta": 0.626,
"percent_delta": 1.6738,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.0,
"delta": -0.39,
"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.057 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.846 | - |
| predicted_AVG | 0.266 | - |
| predicted_BB | 0.374 | - |
| predicted_H | 0.610 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.312 | - |
| predicted_R | 0.366 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.426 | - |
| predicted_SO | 1.041 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.065 | 0.008 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.849 | 1.003 |
| predicted_AVG | 0.246 | -0.020 |
| predicted_BB | 0.509 | 0.135 |
| predicted_H | 0.834 | 0.224 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.212 | 0.082 |
| predicted_OBP | 0.310 | -0.002 |
| predicted_R | 0.549 | 0.183 |
| predicted_RBI | 0.568 | 0.178 |
| predicted_SLG | 0.423 | -0.003 |
| predicted_SO | 1.242 | 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.065 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 3.849 | 0.000 |
| predicted_AVG | 0.213 | -0.033 |
| predicted_BB | 0.507 | -0.002 |
| predicted_H | 0.819 | -0.015 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.207 | -0.004 |
| predicted_OBP | 0.304 | -0.006 |
| predicted_R | 0.532 | -0.017 |
| predicted_RBI | 0.551 | -0.018 |
| predicted_SLG | 0.392 | -0.031 |
| predicted_SO | 1.248 | 0.005 |
AB rounded to 4 (raw=3.85), rates preserved: AVG=0.213 HR/AB=0.054
| 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.065 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | 0.151 |
| predicted_AVG | 0.250 | 0.037 |
| predicted_BB | 1.000 | 0.493 |
| predicted_H | 1.000 | 0.181 |
| predicted_HR | 0.000 | -0.207 |
| predicted_OBP | 0.400 | 0.096 |
| predicted_R | 1.000 | 0.468 |
| predicted_RBI | 1.000 | 0.449 |
| predicted_SLG | 0.250 | -0.142 |
| predicted_SO | 1.000 | -0.248 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -1.000 |
| RBI | 0.000 | -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 | 3.000 | 0.000 | 0.000 | 2.000 | 2.000 | 3.000 | 2.000 | 3.000 | 0.1875 | 0.2778 | 0.5625 | 0.1875 | 0.1250 | 0.1250 | 0.1250 | 0.1875 |
| last_10 | 0.20 | 10 | - | 30.000 | 8.000 | 0.000 | 0.000 | 3.000 | 8.000 | 6.000 | 5.000 | 6.000 | 0.2667 | 0.3611 | 0.5667 | 0.2667 | 0.1000 | 0.2667 | 0.1667 | 0.2000 |
| season | 0.60 | 52 | - | 350.000 | 73.000 | 7.000 | 0.000 | 11.000 | 46.000 | 45.000 | 46.000 | 128.000 | 0.2086 | 0.2975 | 0.3229 | 0.2086 | 0.0314 | 0.1314 | 0.1314 | 0.3657 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0760 |
| predicted_3B | 0.0010 |
| predicted_AB | 5.1800 |
| predicted_AVG | 0.2184 |
| predicted_BB | 0.6890 |
| predicted_H | 1.1310 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3200 |
| predicted_OBP | 0.3068 |
| predicted_R | 0.7920 |
| predicted_RBI | 0.8050 |
| predicted_SLG | 0.4188 |
| predicted_SO | 1.5100 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0570 | 0.0760 | 0.0652 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.8460 | 5.1800 | 3.8486 | model_form_blend |
| predicted_AVG | 0.2660 | 0.2184 | 0.2456 | model_form_blend |
| predicted_BB | 0.3740 | 0.6890 | 0.5093 | model_form_blend |
| predicted_H | 0.6100 | 1.1310 | 0.8338 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1300 | 0.3200 | 0.2116 | model_form_blend |
| predicted_OBP | 0.3120 | 0.3068 | 0.3098 | model_form_blend |
| predicted_R | 0.3660 | 0.7920 | 0.5490 | model_form_blend |
| predicted_RBI | 0.3900 | 0.8050 | 0.5683 | model_form_blend |
| predicted_SLG | 0.4260 | 0.4188 | 0.4229 | model_form_blend |
| predicted_SO | 1.0410 | 1.5100 | 1.2425 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 132 |
| Season rows before report date | 132 |
| Report year | 2026 |
| Profile rows used | 123 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.209 |
| 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.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 681297 |
| playerID | 681297 |
| playerName | Colton Cowser |
| pos | RF |
| started | True |
| startingPosition | CF |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.8 |
| sl_bb_percent | 11.4 |
| sl_woba | 0.309 |
| sl_xwoba | 0.321 |
| sl_xba | 0.213 |
| sl_xslg | 0.438 |
| sl_sweet_spot_percent | 29.2 |
| sl_barrel_batted_rate | 12.5 |
| sl_hard_hit_percent | 31.3 |
| sl_exit_velocity_avg | 85.9 |
| sl_launch_angle_avg | 10.6 |
| sl_whiff_percent | 32.0 |
| 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.027 | 0.000 | 0.000 | Hitting_2B | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_3B | 0.027 | 0.000 | 0.000 | Hitting_3B | 0.027 | 0.000 | -0.027 | 0.000 |
| predicted_AB | 3.216 | 3.000 | 4.000 | Hitting_AB | 3.216 | 4.000 | -0.216 | -1.000 |
| predicted_AVG | 0.240 | 0.000 | 0.250 | Hitting_AVG | 0.218 | 0.250 | -0.218 | -0.250 |
| predicted_BB | 0.432 | 1.000 | 1.000 | Hitting_BB | 0.432 | 0.000 | 0.568 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.660 | 0.000 | 1.000 | Hitting_H | 0.703 | 1.000 | -0.703 | -1.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.162 | 1.000 | -0.162 | -1.000 |
| predicted_OBP | 0.309 | 0.250 | 0.400 | Hitting_OBP | 0.298 | 0.250 | -0.048 | 0.000 |
| predicted_R | 0.459 | 0.000 | 1.000 | Hitting_R | 0.459 | 1.000 | -0.459 | -1.000 |
| predicted_RBI | 0.450 | 0.000 | 1.000 | Hitting_RBI | 0.622 | 4.000 | -0.622 | -4.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.108 | 0.000 | -0.108 | 0.000 |
| predicted_SLG | 0.418 | 0.000 | 0.250 | Hitting_SLG | 0.395 | 1.000 | -0.395 | -1.000 |
| predicted_SO | 1.054 | 0.000 | 1.000 | Hitting_SO | 1.054 | 2.000 | -1.054 | -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_BB: 0.4320 -> 1.0000 (boost 0.5680, better) |
| Biggest Deboost | predicted_SO: 1.0540 -> 0.0000 (deboost -1.0540, 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: 3.2160 -> 3.8475 (boost 0.6315, better) | predicted_AVG: 0.2400 -> 0.2304 (deboost -0.0096, 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.4176 -> 0.3733 (deboost -0.0443, 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.5119 -> 1.0000 (boost 0.4881, better) | predicted_SO: 1.2992 -> 1.0000 (deboost -0.2992, better) | AB rounded to 4 (raw=3.85), rates preserved: AVG=0.207 HR/AB=0.041 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5192 -> 1.0000 (boost 0.4808, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2998 -> 0.4000 (boost 0.1002, better) | predicted_SLG: 0.3733 -> 0.2500 (deboost -0.1233, 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: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3733 (boost 0.1233, better) | predicted_OBP: 0.4000 -> 0.2998 (deboost -0.1002, 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.027,
"predicted_3B": 0.027,
"predicted_AB": 3.216,
"predicted_AVG": 0.24,
"predicted_BB": 0.432,
"predicted_H": 0.66,
"predicted_HR": 0.12,
"predicted_OBP": 0.309,
"predicted_R": 0.459,
"predicted_RBI": 0.45,
"predicted_SLG": 0.418,
"predicted_SO": 1.054
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0505,
"predicted_3B": 0.0565,
"predicted_AB": 3.8475,
"predicted_AVG": 0.2304,
"predicted_BB": 0.5141,
"predicted_H": 0.8099,
"predicted_HBP": 0.008,
"predicted_HR": 0.1623,
"predicted_OBP": 0.3066,
"predicted_R": 0.5359,
"predicted_RBI": 0.631,
"predicted_SLG": 0.4176,
"predicted_SO": 1.2936
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.027,
"after": 0.0505,
"delta": 0.0235,
"percent_delta": 0.8704,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0565,
"delta": 0.0295,
"percent_delta": 1.0926,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.216,
"after": 3.8475,
"delta": 0.6315,
"percent_delta": 0.1964,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2304,
"delta": -0.0096,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.432,
"after": 0.5141,
"delta": 0.0821,
"percent_delta": 0.19,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.8099,
"delta": 0.1499,
"percent_delta": 0.2271,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.1623,
"delta": 0.0423,
"percent_delta": 0.3525,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.3066,
"delta": -0.0024,
"percent_delta": -0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.459,
"after": 0.5359,
"delta": 0.0769,
"percent_delta": 0.1675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.631,
"delta": 0.181,
"percent_delta": 0.4022,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.4176,
"delta": -0.0004,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.054,
"after": 1.2936,
"delta": 0.2396,
"percent_delta": 0.2273,
"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.216,
"after": 3.8475,
"delta": 0.6315,
"percent_delta": 0.1964,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2304,
"delta": -0.0096,
"percent_delta": -0.04,
"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": 19
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.0505,
"predicted_3B": 0.0565,
"predicted_AB": 3.8475,
"predicted_AVG": 0.2066,
"predicted_BB": 0.5119,
"predicted_H": 0.7951,
"predicted_HBP": 0.008,
"predicted_HR": 0.1592,
"predicted_OBP": 0.2998,
"predicted_R": 0.5192,
"predicted_RBI": 0.6113,
"predicted_SLG": 0.3733,
"predicted_SO": 1.2992
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0505,
"after": 0.0505,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0565,
"after": 0.0565,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.8475,
"after": 3.8475,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2304,
"after": 0.2066,
"delta": -0.0238,
"percent_delta": -0.1033,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5141,
"after": 0.5119,
"delta": -0.0022,
"percent_delta": -0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8099,
"after": 0.7951,
"delta": -0.0148,
"percent_delta": -0.0183,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.008,
"after": 0.008,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1623,
"after": 0.1592,
"delta": -0.0031,
"percent_delta": -0.0191,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3066,
"after": 0.2998,
"delta": -0.0068,
"percent_delta": -0.0222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.5359,
"after": 0.5192,
"delta": -0.0167,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.631,
"after": 0.6113,
"delta": -0.0197,
"percent_delta": -0.0312,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4176,
"after": 0.3733,
"delta": -0.0443,
"percent_delta": -0.1061,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2936,
"after": 1.2992,
"delta": 0.0056,
"percent_delta": 0.0043,
"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.4176,
"after": 0.3733,
"delta": -0.0443,
"percent_delta": -0.1061,
"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.207 HR/AB=0.041",
"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.0505,
"after": 0.0,
"delta": -0.0505,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0565,
"after": 0.0,
"delta": -0.0565,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.8475,
"after": 4.0,
"delta": 0.1525,
"percent_delta": 0.0396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5119,
"after": 1.0,
"delta": 0.4881,
"percent_delta": 0.9535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7951,
"after": 1.0,
"delta": 0.2049,
"percent_delta": 0.2577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.008,
"after": 0.0,
"delta": -0.008,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1592,
"after": 0.0,
"delta": -0.1592,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6113,
"after": 1.0,
"delta": 0.3887,
"percent_delta": 0.6359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2992,
"after": 1.0,
"delta": -0.2992,
"percent_delta": -0.2303,
"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.5119,
"after": 1.0,
"delta": 0.4881,
"percent_delta": 0.9535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.2992,
"after": 1.0,
"delta": -0.2992,
"percent_delta": -0.2303,
"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.5192,
"after": 1.0,
"delta": 0.4808,
"percent_delta": 0.926,
"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.5192,
"after": 1.0,
"delta": 0.4808,
"percent_delta": 0.926,
"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.2066,
"after": 0.25,
"delta": 0.0434,
"percent_delta": 0.2101,
"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.2998,
"after": 0.4,
"delta": 0.1002,
"percent_delta": 0.3342,
"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.3733,
"after": 0.25,
"delta": -0.1233,
"percent_delta": -0.3303,
"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.2998,
"after": 0.4,
"delta": 0.1002,
"percent_delta": 0.3342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3733,
"after": 0.25,
"delta": -0.1233,
"percent_delta": -0.3303,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 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": 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": 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.2066,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2998,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3733,
"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.2066,
"delta": -0.0434,
"percent_delta": -0.1734,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.2998,
"delta": -0.1002,
"percent_delta": -0.2505,
"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.3733,
"delta": 0.1233,
"percent_delta": 0.4931,
"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.3733,
"delta": 0.1233,
"percent_delta": 0.4931,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.2998,
"delta": -0.1002,
"percent_delta": -0.2505,
"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.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.027,
"after": 0.0,
"delta": -0.027,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.216,
"after": 3.0,
"delta": -0.216,
"percent_delta": -0.0672,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.24,
"after": 0.2066,
"delta": -0.0334,
"percent_delta": -0.1392,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.432,
"after": 1.0,
"delta": 0.568,
"percent_delta": 1.3148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.66,
"after": 0.0,
"delta": -0.66,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.309,
"after": 0.2998,
"delta": -0.0092,
"percent_delta": -0.0298,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.459,
"after": 0.0,
"delta": -0.459,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.3733,
"delta": -0.0447,
"percent_delta": -0.1069,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.054,
"after": 0.0,
"delta": -1.054,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.432,
"after": 1.0,
"delta": 0.568,
"percent_delta": 1.3148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.054,
"after": 0.0,
"delta": -1.054,
"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.027 | - |
| predicted_3B | 0.027 | - |
| predicted_AB | 3.216 | - |
| predicted_AVG | 0.240 | - |
| predicted_BB | 0.432 | - |
| predicted_H | 0.660 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.309 | - |
| predicted_R | 0.459 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.418 | - |
| predicted_SO | 1.054 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.051 | 0.024 |
| predicted_3B | 0.057 | 0.030 |
| predicted_AB | 3.848 | 0.631 |
| predicted_AVG | 0.230 | -0.010 |
| predicted_BB | 0.514 | 0.082 |
| predicted_H | 0.810 | 0.150 |
| predicted_HBP | 0.008 | - |
| predicted_HR | 0.162 | 0.042 |
| predicted_OBP | 0.307 | -0.002 |
| predicted_R | 0.536 | 0.077 |
| predicted_RBI | 0.631 | 0.181 |
| predicted_SLG | 0.418 | -0.000 |
| predicted_SO | 1.294 | 0.240 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.051 | 0.000 |
| predicted_3B | 0.057 | 0.000 |
| predicted_AB | 3.848 | 0.000 |
| predicted_AVG | 0.207 | -0.024 |
| predicted_BB | 0.512 | -0.002 |
| predicted_H | 0.795 | -0.015 |
| predicted_HBP | 0.008 | 0.000 |
| predicted_HR | 0.159 | -0.003 |
| predicted_OBP | 0.300 | -0.007 |
| predicted_R | 0.519 | -0.017 |
| predicted_RBI | 0.611 | -0.020 |
| predicted_SLG | 0.373 | -0.044 |
| predicted_SO | 1.299 | 0.006 |
AB rounded to 4 (raw=3.85), rates preserved: AVG=0.207 HR/AB=0.041
| 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.051 |
| predicted_3B | 0.000 | -0.057 |
| predicted_AB | 4.000 | 0.152 |
| predicted_AVG | 0.250 | 0.043 |
| predicted_BB | 1.000 | 0.488 |
| predicted_H | 1.000 | 0.205 |
| predicted_HR | 0.000 | -0.159 |
| predicted_OBP | 0.400 | 0.100 |
| predicted_R | 1.000 | 0.481 |
| predicted_RBI | 1.000 | 0.389 |
| predicted_SLG | 0.250 | -0.123 |
| predicted_SO | 1.000 | -0.299 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | -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 | 0.000 | 1.000 | 1.000 | 4.000 | 2.000 | 2.000 | 7.000 | 0.2000 | 0.2941 | 0.5333 | 0.2000 | 0.0667 | 0.2667 | 0.1333 | 0.4667 |
| last_10 | 0.20 | 10 | - | 32.000 | 6.000 | 1.000 | 1.000 | 1.000 | 5.000 | 4.000 | 6.000 | 13.000 | 0.1875 | 0.3158 | 0.3750 | 0.1875 | 0.0312 | 0.1562 | 0.1875 | 0.4062 |
| season | 0.60 | 19 | - | 119.000 | 26.000 | 1.000 | 1.000 | 6.000 | 23.000 | 17.000 | 16.000 | 39.000 | 0.2185 | 0.2979 | 0.3950 | 0.2185 | 0.0504 | 0.1933 | 0.1344 | 0.3277 |
| Metric | Value |
|---|---|
| predicted_2B | 0.0860 |
| predicted_3B | 0.1010 |
| predicted_AB | 4.8000 |
| predicted_AVG | 0.2159 |
| predicted_BB | 0.6380 |
| predicted_H | 1.0360 |
| predicted_HBP | 0.0080 |
| predicted_HR | 0.2260 |
| predicted_OBP | 0.3030 |
| predicted_R | 0.6520 |
| predicted_RBI | 0.9040 |
| predicted_SLG | 0.4169 |
| predicted_SO | 1.6550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0270 | 0.0860 | 0.0505 | model_form_blend |
| predicted_3B | 0.0270 | 0.1010 | 0.0565 | model_form_blend |
| predicted_AB | 3.2160 | 4.8000 | 3.8475 | model_form_blend |
| predicted_AVG | 0.2400 | 0.2159 | 0.2304 | model_form_blend |
| predicted_BB | 0.4320 | 0.6380 | 0.5141 | model_form_blend |
| predicted_H | 0.6600 | 1.0360 | 0.8099 | model_form_blend |
| predicted_HBP | - | 0.0080 | 0.0080 | form_only |
| predicted_HR | 0.1200 | 0.2260 | 0.1623 | model_form_blend |
| predicted_OBP | 0.3090 | 0.3030 | 0.3066 | model_form_blend |
| predicted_R | 0.4590 | 0.6520 | 0.5359 | model_form_blend |
| predicted_RBI | 0.4500 | 0.9040 | 0.6310 | model_form_blend |
| predicted_SLG | 0.4180 | 0.4169 | 0.4176 | model_form_blend |
| predicted_SO | 1.0540 | 1.6550 | 1.2936 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 37 |
| Season rows before report date | 37 |
| Report year | 2026 |
| Profile rows used | 37 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| 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 | 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 | 4 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 702616 |
| playerID | 702616 |
| playerName | Jackson Holliday |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 29.0 |
| sl_bb_percent | 13.0 |
| sl_woba | 0.327 |
| sl_xwoba | 0.339 |
| sl_xba | 0.227 |
| sl_xslg | 0.432 |
| sl_sweet_spot_percent | 45.0 |
| sl_barrel_batted_rate | 15.0 |
| sl_hard_hit_percent | 42.5 |
| sl_exit_velocity_avg | 88.8 |
| sl_launch_angle_avg | 16.4 |
| sl_whiff_percent | 31.1 |
| sl_swing_percent | 44.0 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 2.000 | 2.000 | 2.000 | Pitching_BB | 2.769 | 3.000 | -0.769 | -1.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 2.308 | 5.000 | -0.308 | -3.000 |
| predicted_H | 7.000 | 7.000 | 7.000 | Pitching_H | 5.308 | 9.000 | 1.692 | -2.000 |
| predicted_IP | 4.200 | 4.200 | 4.200 | Pitching_InningsPitched | 5.262 | 4.000 | -1.062 | 0.200 |
| predicted_SO | 3.000 | 3.000 | 3.000 | Pitching_SO | 5.231 | 3.000 | -2.231 | 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.6667 -> 4.2000 (deboost -1.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 | starter_usage_guardrail | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 5.6667 -> 4.2000 (deboost -1.4667, 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": "680694",
"player_name": "Kyle Bradish",
"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": 2.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 5.6667,
"predicted_SO": 3.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 2.0,
"predicted_ER": 2.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 4.2,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 4.2,
"delta": -1.4667,
"percent_delta": -0.2588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 4.2,
"delta": -1.4667,
"percent_delta": -0.2588,
"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": 2.0,
"predicted_H": 7.0,
"predicted_HR": 0.0,
"predicted_IP": 4.2,
"predicted_R": 2.0,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 4.2,
"after": 4.2,
"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": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 7.0,
"after": 7.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.6667,
"after": 4.2,
"delta": -1.4667,
"percent_delta": -0.2588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 5.6667,
"after": 4.2,
"delta": -1.4667,
"percent_delta": -0.2588,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 2.000 | - |
| predicted_ER | 2.000 | - |
| predicted_H | 7.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.667 | - |
| 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 | 2.000 | 0.000 |
| predicted_ER | 2.000 | 0.000 |
| predicted_H | 7.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 4.200 | -1.467 |
| predicted_SO | 3.000 | 0.000 |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 28.100 | 8.000 | 23.000 | 14.000 | 23.000 | 3.000 | 2.5412 | 1.3059 | 0.2823 | 0.8118 | 0.4941 | 0.8118 | 0.1059 |
| last_10 | 0.35 | 10 | 55.200 | 22.000 | 55.000 | 27.000 | 51.000 | 7.000 | 3.5569 | 1.4731 | 0.3952 | 0.9880 | 0.4850 | 0.9162 | 0.1258 |
| season | 0.20 | 13 | 69.100 | 30.000 | 69.000 | 36.000 | 68.000 | 8.000 | 3.8942 | 1.5144 | 0.4327 | 0.9952 | 0.5192 | 0.9808 | 0.1154 |
| Metric | Value |
|---|---|
| predicted_BB | 2.5820 |
| predicted_ER | 2.1870 |
| predicted_ERA | 3.5026 |
| predicted_H | 5.1910 |
| predicted_HR | 0.6850 |
| predicted_IP | 5.2000 |
| predicted_SO | 5.0400 |
| predicted_WHIP | 1.3835 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 2.0000 | 2.5820 | 2.3100 | model_form_blend |
| predicted_ER | 2.0000 | 2.1870 | 2.0996 | model_form_blend |
| predicted_ERA | - | 3.5026 | 3.5026 | form_only |
| predicted_H | 7.0000 | 5.1910 | 6.0365 | model_form_blend |
| predicted_HR | 0.0000 | 0.6850 | 0.3649 | model_form_blend |
| predicted_IP | 5.2000 | 5.2000 | 5.2000 | model_form_blend |
| predicted_SO | 3.0000 | 5.0400 | 4.0866 | model_form_blend |
| predicted_WHIP | - | 1.3835 | 1.3835 | 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 | 4.2 |
| H | 7 |
| R | 2 |
| ER | 2 |
| BB | 2 |
| SO | 3 |
| HR | 0 |
| BF | 23 |
| 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 | 21 |
| Pitching_ER | 5 |
| Pitching_ERA | 3.89 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 5 |
| Pitching_H | 9 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 4.0 |
| Pitching_Pitches | 81 |
| Pitching_R | 5 |
| Pitching_SO | 3 |
| Pitching_Strikes | 51 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260606_BAL@TOR |
| game_type | full |
| mlbID | 680694 |
| playerID | 680694 |
| playerName | Kyle Bradish |
| pos | P |
| started | True |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-06 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 11.9 |
| sl_woba | 0.344 |
| sl_xwoba | 0.318 |
| sl_sweet_spot_percent | 28.9 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 36.5 |
| sl_whiff_percent | 25.5 |
| sl_swing_percent | 44.4 |
| sl_avg_best_speed | 76.67102268 |
| sl_avg_hyper_speed | 93.751884611 |
| 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.250 | 0.000 | -0.250 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.688 | 1.000 | 0.312 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.188 | 3.000 | -0.188 | -2.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.738 | 1.000 | 0.262 | 0.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.938 | 1.000 | 0.062 | 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": "552640",
"player_name": "Andrew Kittredge",
"position": "Middle Reliever",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 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 | 5.000 | 2.000 | 5.000 | 0.000 | 7.000 | 1.000 | 3.6000 | 1.0000 | 0.4000 | 1.0000 | 0.0000 | 1.4000 | 0.2000 |
| last_10 | 0.35 | 10 | 9.000 | 4.000 | 8.000 | 2.000 | 9.000 | 2.000 | 4.0000 | 1.1111 | 0.4444 | 0.8889 | 0.2222 | 1.0000 | 0.2222 |
| season | 0.20 | 16 | 13.200 | 11.000 | 19.000 | 4.000 | 15.000 | 3.000 | 7.2439 | 1.6829 | 0.8049 | 1.3902 | 0.2927 | 1.0976 | 0.2195 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2850 |
| predicted_ER | 0.4900 |
| predicted_ERA | 4.4075 |
| predicted_H | 0.9880 |
| predicted_HR | 0.1660 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0280 |
| predicted_WHIP | 1.2724 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2850 | 0.1071 | model_form_blend |
| predicted_ER | 1.0000 | 0.4900 | 0.8084 | model_form_blend |
| predicted_ERA | - | 4.4075 | 4.4075 | form_only |
| predicted_H | 1.0000 | 0.9880 | 0.9955 | model_form_blend |
| predicted_HR | 1.0000 | 0.1660 | 0.6867 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 1.0280 | 1.0105 | model_form_blend |
| predicted_WHIP | - | 1.2724 | 1.2724 | 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 | 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 | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 1 |
| Pitching_ERA | 7.24 |
| 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.0 |
| Pitching_Pitches | 19 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 14 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260609_SEA@BAL |
| game_type | full |
| mlbID | 552640 |
| playerID | 552640 |
| playerName | Andrew Kittredge |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-09 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.371 |
| sl_xwoba | 0.286 |
| sl_sweet_spot_percent | 39.1 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 32.6 |
| sl_whiff_percent | 24.4 |
| sl_swing_percent | 53.2 |
| sl_avg_best_speed | 74.2998 |
| sl_avg_hyper_speed | 93.190082 |
| 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.300 | 0.000 | 0.700 | 1.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.133 | 1.000 | 0.867 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.300 | 1.000 | 0.700 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.840 | 1.000 | 0.160 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.033 | 0.000 | -1.033 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "670329",
"player_name": "Rico Garcia",
"position": "Middle Reliever",
"team": "BAL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 2.000 | 3.000 | 0.000 | 4.000 | 2.000 | 3.8571 | 0.6429 | 0.4286 | 0.6429 | 0.0000 | 0.8571 | 0.4286 |
| last_10 | 0.35 | 10 | 9.000 | 3.000 | 8.000 | 2.000 | 9.000 | 2.000 | 3.0000 | 1.1111 | 0.3333 | 0.8889 | 0.2222 | 1.0000 | 0.2222 |
| season | 0.20 | 30 | 28.000 | 4.000 | 9.000 | 9.000 | 31.000 | 3.000 | 1.2857 | 0.6429 | 0.1429 | 0.3214 | 0.3214 | 1.1071 | 0.1071 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2480 |
| predicted_ER | 0.4080 |
| predicted_ERA | 3.6751 |
| predicted_H | 0.8050 |
| predicted_HR | 0.2200 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9470 |
| predicted_WHIP | 1.0527 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2480 | 0.6621 | model_form_blend |
| predicted_ER | 1.0000 | 0.4080 | 0.7340 | model_form_blend |
| predicted_ERA | - | 3.6751 | 3.6751 | form_only |
| predicted_H | 1.0000 | 0.8050 | 0.9124 | model_form_blend |
| predicted_HR | 0.0000 | 0.2200 | 0.0989 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9470 | 0.4256 | model_form_blend |
| predicted_WHIP | - | 1.0527 | 1.0527 | 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 | 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 | 1.29 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 1 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 2 |
| Pitching_SO | 0 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260609_SEA@BAL |
| game_type | full |
| mlbID | 670329 |
| playerID | 670329 |
| playerName | Rico Garcia |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-09 |
| sl_k_percent | 31.0 |
| sl_bb_percent | 9.0 |
| sl_woba | 0.185 |
| sl_xwoba | 0.256 |
| sl_sweet_spot_percent | 23.3 |
| sl_barrel_batted_rate | 8.3 |
| sl_hard_hit_percent | 33.3 |
| sl_whiff_percent | 37.9 |
| sl_swing_percent | 48.8 |
| sl_avg_best_speed | 73.062771667 |
| sl_avg_hyper_speed | 93.029226167 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 0.400 | 1.000 | 0.600 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.633 | 2.000 | -0.633 | -2.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.967 | 1.000 | -0.967 | -1.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.977 | 2.100 | -0.777 | -1.900 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.200 | 2.000 | -1.200 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 0.6667 -> 0.2000 (deboost -0.4667, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "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": 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": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.2,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 0.6667,
"after": 0.2,
"delta": -0.4667,
"percent_delta": -0.7,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 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 | 1.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 | 6.200 | 5.000 | 7.000 | 4.000 | 8.000 | 1.000 | 6.7500 | 1.6500 | 0.7500 | 1.0500 | 0.6000 | 1.2000 | 0.1500 |
| last_10 | 0.35 | 10 | 11.000 | 10.000 | 12.000 | 5.000 | 11.000 | 1.000 | 8.1818 | 1.5455 | 0.9091 | 1.0909 | 0.4546 | 1.0000 | 0.0909 |
| season | 0.20 | 29 | 32.100 | 16.000 | 27.000 | 10.000 | 36.000 | 5.000 | 4.4536 | 1.1443 | 0.4949 | 0.8350 | 0.3093 | 1.1134 | 0.1546 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4090 |
| predicted_ER | 0.5970 |
| predicted_ERA | 5.7303 |
| predicted_H | 0.9320 |
| predicted_HR | 0.1270 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9710 |
| predicted_WHIP | 1.4300 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.4090 | 0.7255 | model_form_blend |
| predicted_ER | 0.0000 | 0.5970 | 0.2773 | model_form_blend |
| predicted_ERA | - | 5.7303 | 5.7303 | form_only |
| predicted_H | 0.0000 | 0.9320 | 0.4329 | model_form_blend |
| predicted_HR | 0.0000 | 0.1270 | 0.0590 | model_form_blend |
| predicted_IP | 0.2000 | 1.0000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.9710 | 0.4510 | model_form_blend |
| predicted_WHIP | - | 1.4300 | 1.4300 | 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 | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 3 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 9 |
| Pitching_ER | 2 |
| Pitching_ERA | 5.29 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 2 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 2 |
| Pitching_Inherited Runners Scored | 2 |
| Pitching_InningsPitched | 2.1 |
| Pitching_Pitches | 32 |
| Pitching_R | 2 |
| Pitching_SO | 2 |
| Pitching_Strikes | 18 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260608_SEA@BAL |
| game_type | full |
| mlbID | 689296 |
| playerID | 689296 |
| playerName | Anthony Nunez |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-08 |
| sl_k_percent | 25.7 |
| sl_bb_percent | 8.6 |
| sl_woba | 0.316 |
| sl_xwoba | 0.315 |
| sl_sweet_spot_percent | 39.6 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 41.8 |
| sl_whiff_percent | 34.9 |
| sl_swing_percent | 47.9 |
| sl_avg_best_speed | 78.0901925 |
| sl_avg_hyper_speed | 94.326371705 |
| 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.133 | 0.000 | -0.133 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.467 | 0.000 | -0.467 | 0.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.623 | 1.100 | 0.577 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.600 | 2.000 | -0.600 | -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.2000 (boost 0.5333, 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.2000 (boost 0.5333, 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": 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.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": 1.2,
"delta": 0.5333,
"percent_delta": 0.8,
"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.2,
"delta": 0.5333,
"percent_delta": 0.8,
"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.2,
"delta": 0.5333,
"percent_delta": 0.7999,
"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.2,
"delta": 0.5333,
"percent_delta": 0.7999,
"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 | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 3.100 | 2.000 | 4.000 | 0.000 | 2.000 | 0.000 | 5.4000 | 1.2000 | 0.6000 | 1.2000 | 0.0000 | 0.6000 | 0.0000 |
| last_10 | 0.35 | 10 | 7.200 | 3.000 | 4.000 | 2.000 | 7.000 | 0.000 | 3.5217 | 0.7826 | 0.3913 | 0.5217 | 0.2609 | 0.9130 | 0.0000 |
| season | 0.20 | 29 | 22.200 | 5.000 | 11.000 | 3.000 | 18.000 | 1.000 | 1.9853 | 0.6176 | 0.2206 | 0.4853 | 0.1323 | 0.7941 | 0.0441 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1650 |
| predicted_ER | 0.3130 |
| predicted_ERA | 4.2257 |
| predicted_H | 0.5960 |
| predicted_HR | 0.0520 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.5650 |
| predicted_WHIP | 1.1418 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1650 | 0.0705 | model_form_blend |
| predicted_ER | 0.0000 | 0.3130 | 0.1337 | model_form_blend |
| predicted_ERA | - | 4.2257 | 4.2257 | form_only |
| predicted_H | 0.0000 | 0.5960 | 0.2546 | model_form_blend |
| predicted_HR | 0.0000 | 0.0520 | 0.0222 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.5650 | 0.2413 | model_form_blend |
| predicted_WHIP | - | 1.1418 | 1.1418 | 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.2 |
| H | 0 |
| 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 | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.38 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.1 |
| Pitching_Pitches | 13 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 9 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_SEA@BAL |
| game_type | full |
| mlbID | 666974 |
| playerID | 666974 |
| playerName | Yennier Cano |
| pos | P |
| started | False |
| startingPosition | P |
| team | BAL |
| teamID | 3 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.4 |
| sl_bb_percent | 3.6 |
| sl_woba | 0.21 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 22.6 |
| sl_barrel_batted_rate | 9.7 |
| sl_hard_hit_percent | 43.5 |
| sl_whiff_percent | 26.2 |
| sl_swing_percent | 46.6 |
| sl_avg_best_speed | 76.677452258 |
| sl_avg_hyper_speed | 94.293027903 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | STL 1 - 2 NYM | NYM | 0.564 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | STL 1 - 2 NYM | NYM | - | advisory_box_score_draw | True |
The shipped score is the pre-simulation model target. The inning simulation is a separate box-score realization used for player lines and stress testing.
| Process Layer | What It Does | Stored Field | Observed Value |
|---|---|---|---|
| 1. Historical model | Starts from trained game model output. | score_evolution.steps[historical_ml] | - |
| 2. Variance layer | Applies bounded game variance before enhanced corrections. | score_evolution.steps[variance_applied] | - |
| 3. Recent/team form | Uses latest team form, recent scoring, prevention, and streak state. | enhanced_prediction_analysis.recent_form | True |
| 4. Season quality | Uses season run differential and record quality guardrails. | season_run_differential_adjustment, season_quality_guardrail | True |
| 5. Savant hitters | Applies lineup-level Statcast xwOBA, xBA, xSLG, barrel, hard-hit, sweet-spot, EV, launch-angle, whiff, K and BB quality. | savant_batter_quality_adjustment | True |
| 6. Savant pitchers | Applies starter run prevention, strikeout, walk, HR and regression factors from xwOBA, wOBA, contact quality and whiff/command. | savant_pitcher_quality_adjustment | True |
| 7. Low-score analysis | Controls unrealistic totals and preserves the pre-sync low-score expected total. | low_score_analysis | 6.5000 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5641 |
| 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.480 | 4.769 | - | Base ML historical model prediction |
| 2 | variance_applied | 3 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 1 | 2 | 0.5641 | Enhanced ML with recent form, H2H, low-score analysis |
| 4 | embedded_savant_run_environment | 1 | 2 | - | Target score adjusted by temporal Savant lineup quality versus opposing starter quality |
| 5 | capped_target | 1 | 2 | - | Capped at max 12 realistic runs |
| 6 | simulation_result | 1 | 2 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.6691003691202874,
"base_low_score_probability": 0.41831238779174146,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.2507879813285459,
"confidence": 0.8997616000000002,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.4520000000000002,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.5995232000000004
},
"prediction": "low_scoring",
"expected_total_runs": 3,
"pre_simulation_expected_total_runs": 6.5,
"low_score_model_expected_total_runs": 6.5,
"final_simulation_total_runs": 3,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 152,
"near_bucket_sample_size": 152,
"medium_bucket_sample_size": 167,
"wide_bucket_sample_size": 174,
"global_sample_size": 174,
"bucket_scope": "near_0.05",
"sparse_bucket": false,
"empirical_hit_rate": 0.5855,
"bayesian_hit_rate": 0.5765,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8941,
"confidence_cap": 0.78,
"raw_pick_probability": 0.5632,
"calibrated_pick_probability": 0.5641,
"predicted_side": "home"
}{
"applied": true,
"home": {
"team": "NYM",
"games": 67,
"wins": 29,
"losses": 38,
"win_pct": 0.43283582089552236,
"runs_scored": 267,
"runs_allowed": 286,
"run_differential": -19,
"run_differential_per_game": -0.2835820895522388,
"available": true
},
"away": {
"team": "STL",
"games": 65,
"wins": 37,
"losses": 28,
"win_pct": 0.5692307692307692,
"runs_scored": 294,
"runs_allowed": 282,
"run_differential": 12,
"run_differential_per_game": 0.18461538461538463,
"available": true
},
"run_differential_edge_per_game": -0.4682,
"win_pct_edge": -0.1364,
"quality_edge": -0.6728,
"margin_adjustment": -0.2826,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 1.155,
"home_runs": 1.899,
"home_win_probability": 0.5632
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "NYM",
"guardrail_predicted_team": "NYM",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "NYM",
"output_opponent_team": "STL",
"final_score_winner": "NYM",
"pre_simulation_winner": "NYM",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "STL 1 - 2 NYM",
"winner": "NYM"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "STL 1 - 2 NYM",
"winner": "NYM"
},
"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": "NYM",
"games": 67,
"wins": 29,
"losses": 38,
"win_pct": 0.43283582089552236,
"runs_scored": 267,
"runs_allowed": 286,
"run_differential": -19,
"run_differential_per_game": -0.2835820895522388,
"available": true
},
"away": {
"team": "STL",
"games": 65,
"wins": 37,
"losses": 28,
"win_pct": 0.5692307692307692,
"runs_scored": 294,
"runs_allowed": 282,
"run_differential": 12,
"run_differential_per_game": 0.18461538461538463,
"available": true
}
}
}{
"applied": false,
"raw_margin": 0.7441,
"final_margin": 0.7441,
"margin_cap": 1.5,
"season_quality_edge": 0.6728,
"reason": "raw target margin within supported range"
}{
"applied": false,
"raw_confidence": 0.564063,
"final_confidence": 0.564063,
"confidence_cap": 0.66,
"score_gap": 0.7441,
"calibration_sample_size": 152,
"calibration_empirical_hit_rate": 0.5855,
"calibration_bayesian_hit_rate": 0.5765,
"calibration_sparse_bucket": false,
"season_quality_edge": 0.6728,
"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": 1,
"home_runs": 2,
"score_text": "STL 1 - 2 NYM",
"winner": "NYM"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "STL 1 - 2 NYM",
"winner": "NYM"
},
"winner_flipped_by_simulation": false,
"away_run_delta": 0,
"home_run_delta": 0,
"total_run_delta": 0,
"score_source": "enhanced_prediction.pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"final_prediction_source": "pre_simulation_target"
}{
"away_runs": 1,
"home_runs": 2,
"confidence": 0.564063,
"home_win_probability": 0.564063,
"away_win_probability": 0.435937,
"predicted_score_text": "STL 1 - 2 NYM",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "STL",
"original_runs": 1,
"run_delta": 0.1958,
"adjusted_runs": 1,
"lineup": {
"players_used": 9,
"total_weight": 56.0,
"quality": 0.3190879058347715,
"contact": 0.435157296688683,
"power": 0.4333558857079631,
"discipline": 0.1558820174161145,
"xwoba": 0.33899999999999997,
"recent_xwoba": 0.33899999999999997,
"barrel": 9.051785714285716,
"ab_hard_contact": 0.13792043524768877,
"ab_bat_speed": 71.15759991255398,
"ab_strikeout_rate": 0.2122168308951397,
"available_players": 7,
"top_players": [
{
"player_id": "676475",
"player_name": "Alec Burleson",
"position": "1B",
"weight": 7.0,
"quality": 1.213546080990656,
"contact": 1.4202673988303656,
"power": 1.3241063561556572,
"discipline": 0.338127156125608,
"xwoba": 0.385,
"recent_xwoba": 0.385,
"barrel": 11.0,
"ab_hard_contact": 1.4432699802559905,
"ab_bat_speed": 71.2597854030501,
"ab_strikeout_rate": 0.15980392156862747,
"available": 1.0
},
{
"player_id": "691023",
"player_name": "Jordan Walker",
"position": "RF",
"weight": 7.0,
"quality": 1.0769358721656421,
"contact": 1.266165543088068,
"power": 1.6088735421714069,
"discipline": -0.5305334414467543,
"xwoba": 0.373,
"recent_xwoba": 0.373,
"barrel": 13.7,
"ab_hard_contact": 1.2003279862852754,
"ab_bat_speed": 77.65222766884531,
"ab_strikeout_rate": 0.25653594771241833,
"available": 1.0
},
{
"player_id": "802139",
"player_name": "JJ Wetherholt",
"position": "2B",
"weight": 8.0,
"quality": 0.5818632024175787,
"contact": 0.7419009823971259,
"power": 0.45921655117484034,
"discipline": 0.5303190328763083,
"xwoba": 0.354,
"recent_xwoba": 0.354,
"barrel": 7.3,
"ab_hard_contact": 0.3565214996872703,
"ab_bat_speed": 70.76903297682709,
"ab_strikeout_rate": 0.18725490196078431,
"available": 1.0
},
{
"player_id": "691026",
"player_name": "Masyn Winn",
"position": "SS",
"weight": 7.0,
"quality": -0.4194313638098497,
"contact": -0.313799744524754,
"power": -0.909641232574417,
"discipline": 0.10055541631857408,
"xwoba": 0.301,
"recent_xwoba": 0.301,
"barrel": 3.0,
"ab_hard_contact": -0.7193008419645419,
"ab_bat_speed": 68.20100000000001,
"ab_strikeout_rate": 0.1985185185185185,
"available": 1.0
},
{
"player_id": "663457",
"player_name": "Lars Nootbaar",
"position": "LF",
"weight": 4.0,
"quality": 0.0,
"contact": 1.083171428571429,
"power": 1.7005904761904767,
"discipline": 1.8241428571428568,
"xwoba": 0.371,
"recent_xwoba": 0.371,
"barrel": 15.4,
"ab_hard_contact": -2.0,
"ab_bat_speed": 70.26223456790123,
"ab_strikeout_rate": 0.2222222222222222,
"available": 0.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "681035",
"player_name": "Christian Scott",
"quality": 0.03875052156229275,
"contact": 0.26258924108999965,
"command": -0.1259526104638886,
"movement": 0.27356638858065774,
"xwoba": 0.319,
"whiff": 22.0,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "NYM",
"original_runs": 2,
"run_delta": 0.3341,
"adjusted_runs": 2,
"lineup": {
"players_used": 9,
"total_weight": 50.0,
"quality": 0.3098386987607341,
"contact": 0.4444665685999339,
"power": 0.6178226569032942,
"discipline": -0.03786766474636179,
"xwoba": 0.33736000000000005,
"recent_xwoba": 0.33736000000000005,
"barrel": 10.96,
"ab_hard_contact": 0.13095218568492503,
"ab_bat_speed": 70.32651310794127,
"ab_strikeout_rate": 0.23488731386916872,
"available_players": 9,
"top_players": [
{
"player_id": "665742",
"player_name": "Juan Soto",
"position": "DH",
"weight": 6.0,
"quality": 1.0945111575937656,
"contact": 1.5607523500432834,
"power": 1.8349183128948616,
"discipline": 0.931497358260516,
"xwoba": 0.40599999999999997,
"recent_xwoba": 0.406,
"barrel": 16.2,
"ab_hard_contact": 0.9238900674210341,
"ab_bat_speed": 70.41891355641356,
"ab_strikeout_rate": 0.148005148005148,
"available": 1.0
},
{
"player_id": "701807",
"player_name": "Carson Benge",
"position": "RF",
"weight": 6.0,
"quality": 0.5607603096763989,
"contact": 0.799469276329365,
"power": 0.6636312489158825,
"discipline": -0.14290225563909795,
"xwoba": 0.353,
"recent_xwoba": 0.353,
"barrel": 9.6,
"ab_hard_contact": 0.06614878784145456,
"ab_bat_speed": 69.1056576984127,
"ab_strikeout_rate": 0.22833333333333333,
"available": 1.0
},
{
"player_id": "682626",
"player_name": "Francisco Alvarez",
"position": "C",
"weight": 6.0,
"quality": 0.2881119515882567,
"contact": 0.23074169530895777,
"power": 1.0683533860167236,
"discipline": -0.27883082706766915,
"xwoba": 0.336,
"recent_xwoba": 0.336,
"barrel": 16.9,
"ab_hard_contact": 0.2398296250963559,
"ab_bat_speed": 72.7064484126984,
"ab_strikeout_rate": 0.2276190476190476,
"available": 1.0
},
{
"player_id": "666182",
"player_name": "Bo Bichette",
"position": "SS",
"weight": 7.0,
"quality": 0.49737364795053035,
"contact": 0.6709106708947474,
"power": 0.32368811988402985,
"discipline": 0.10437816764132539,
"xwoba": 0.325,
"recent_xwoba": 0.325,
"barrel": 7.3,
"ab_hard_contact": -0.04547569755750945,
"ab_bat_speed": 69.04705887579499,
"ab_strikeout_rate": 0.16898148148148148,
"available": 1.0
},
{
"player_id": "676724",
"player_name": "Jared Young",
"position": "1B",
"weight": 4.0,
"quality": 0.10285176508650795,
"contact": 1.0087629660572566,
"power": 1.2733416186381048,
"discipline": 0.04150250626566406,
"xwoba": 0.378,
"recent_xwoba": 0.378,
"barrel": 14.9,
"ab_hard_contact": -0.8668819129521962,
"ab_bat_speed": 72.63215277777778,
"ab_strikeout_rate": 0.2,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "690928",
"player_name": "Hunter Dobbins",
"quality": -0.04676483685520283,
"contact": -0.9622332505364285,
"command": -0.09095261046388872,
"movement": -0.02760541019878171,
"xwoba": 0.357,
"whiff": 24.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": 1,
"home_runs": 2,
"predicted_score_text": "STL 1 - 2 NYM",
"confidence": 0.564063,
"source": "enhanced_prediction_before_inning_simulation"
},
"score_source": "enhanced_prediction.pre_simulation_target",
"final_prediction_synced": true,
"final_prediction_source": "pre_simulation_target",
"simulation_usage": "advisory_box_score_draw",
"simulation_score_matches_prediction": true,
"simulation_reconciliation": {
"pre_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "STL 1 - 2 NYM",
"winner": "NYM"
},
"final_simulation_score": {
"away_runs": 1,
"home_runs": 2,
"score_text": "STL 1 - 2 NYM",
"winner": "NYM"
},
"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 STL | True | 1.0424 | 1.0424 | 1 | 9 | 0 |
| Home NYM | True | 1.0395 | 1.0395 | 1 | 9 | 0 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2B | JJ Wetherholt | 16 | 1.0636 | 0.8480 | neutral | 0.3540 | 0.2500 | 0.4400 | 7.30 | 47.90 | 90.70 | 16.30 | 22 | 16.40 | 11 | 0.4286 |
| RF | Jordan Walker | 5 | 1.0995 | 1.3260 | neutral | 0.3730 | 0.2840 | 0.5210 | 13.70 | 52.20 | 94.60 | 14 | 31.70 | 25.50 | 7.60 | -0.7714 |
| 1B | Alec Burleson | 53 | 1.1170 | 1.5602 | neutral | 0.3850 | 0.2930 | 0.5410 | 11 | 48.10 | 91.50 | 12.30 | 21.50 | 15.40 | 8.90 | 0.6000 |
| SS | Masyn Winn | 124 | 0.9840 | -0.2130 | neutral | 0.3010 | 0.2520 | 0.3220 | 3 | 32.70 | 87 | 11.90 | 23.10 | 21 | 8.90 | 0.3714 |
| DH | Iván Herrera | 51 | 1.0553 | 0.7377 | neutral | 0.3630 | 0.2690 | 0.4150 | 6.70 | 41 | 89.50 | 5.80 | 20 | 16.60 | 12.50 | 0.0571 |
| LF | Lars Nootbaar | 370 | 1.0580 | 0.7733 | positive_batter_regression | 0.3710 | 0.2320 | 0.5290 | 15.40 | 61.50 | 95.30 | 9.30 | 10.70 | 22.70 | 18.20 | 1.9714 |
| C | Jimmy Crooks | 394 | 1.0235 | 0.3128 | positive_batter_regression | 0.3280 | 0.2680 | 0.3970 | 9.10 | 36.40 | 88.40 | 9 | 31.40 | 35 | 10 | 2 |
| CF | Nathan Church | 115 | 0.9923 | -0.1023 | neutral | 0.2920 | 0.2450 | 0.3950 | 9 | 32.80 | 85.80 | 10.10 | 22.90 | 20.70 | 3.70 | -0.2286 |
| 3B | Nolan Gorman | 421 | 0.9884 | -0.1552 | neutral | 0.2810 | 0.2000 | 0.3540 | 9.30 | 43.40 | 89.20 | 22.20 | 38.40 | 31.90 | 11.10 | 0.2857 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SS | Bo Bichette | 542 | 1.0554 | 0.7383 | positive_batter_regression | 0.3250 | 0.2770 | 0.4190 | 7.30 | 46.40 | 91.20 | 7.60 | 17.50 | 17.80 | 6.50 | 1.6286 |
| DH | Juan Soto | 63 | 1.0963 | 1.2835 | neutral | 0.4060 | 0.2870 | 0.5960 | 16.20 | 48.40 | 92.70 | 15.30 | 20.90 | 14 | 13.10 | 0.8286 |
| 1B | Jared Young | 138 | 1.0460 | 0.6135 | neutral | 0.3780 | 0.2660 | 0.4940 | 14.90 | 51.10 | 91.80 | 3.10 | 27.30 | 22.50 | 9.90 | 0.3714 |
| RF | Carson Benge | 144 | 1.0746 | 0.9953 | positive_batter_regression | 0.3530 | 0.2870 | 0.4690 | 9.60 | 44.60 | 90 | 10.80 | 21.30 | 21.50 | 6.80 | 0.9429 |
| C | Francisco Alvarez | 324 | 1.0347 | 0.4620 | neutral | 0.3360 | 0.2440 | 0.4580 | 16.90 | 41.60 | 90.40 | 9.70 | 28.90 | 23 | 8.10 | 0.3714 |
| CF | A.J. Ewing | 147 | 1.0223 | 0.2968 | neutral | 0.3390 | 0.2730 | 0.4070 | 6.50 | 43.50 | 89 | 10.50 | 22.20 | 30.20 | 11.30 | 0.7429 |
| 3B | Brett Baty | 263 | 0.9994 | -0.0079 | neutral | 0.2970 | 0.2340 | 0.3720 | 7.80 | 37.60 | 89.20 | 9.10 | 28.10 | 28 | 8.40 | 0.3429 |
| 2B | Marcus Semien | 493 | 1.0419 | 0.5583 | positive_batter_regression | 0.3250 | 0.2640 | 0.4380 | 8.90 | 35.80 | 86.50 | 18.40 | 21.60 | 20.10 | 6.40 | 1.4000 |
| LF | MJ Melendez | 308 | 0.9852 | -0.1975 | negative_batter_regression | 0.2710 | 0.1580 | 0.3190 | 12.10 | 53.40 | 93.50 | 24.30 | 33.80 | 33 | 9.20 | -1.1714 |
{
"home": {
"applied": true,
"offense_factor": 1.0395,
"raw_average_factor": 1.0395,
"team_espn_average_rank": 269.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "SS",
"player_id": "666182",
"player_name": "Bo Bichette",
"offense_factor": 1.0554,
"quality_score": 0.7383,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "666182",
"espn_id": 38904,
"player_name": "Bo Bichette",
"team": "NYM",
"role": "batter",
"espn_rank": 542,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 542,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 269.0,
"ab_rank": 6,
"r_value": 30.0,
"r_rank": 90,
"h_value": 61.0,
"h_rank": 68,
"avg_value": 0.2267657,
"avg_rank": 131.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 32.0,
"rbi_rank": 73,
"tb_value": 86.0,
"tb_rank": 862,
"bb_value": 19.0,
"bb_rank": 144,
"so_value": 52.0,
"so_rank": 100,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2773972,
"obp_rank": "154",
"slg_value": 0.3197026,
"slg_rank": "156",
"ops_value": 0.5970998,
"ops_rank": 2.0,
"war_value": -0.77,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 241.0,
"k_percent": 17.8,
"bb_percent": 6.5,
"woba": 0.268,
"xwoba": 0.325,
"xba": 0.277,
"xslg": 0.419,
"sweet_spot_percent": 31.8,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 46.4,
"exit_velocity_avg": 91.2,
"launch_angle_avg": 7.6,
"whiff_percent": 17.5,
"swing_percent": 53.1
},
"components": {
"expected_quality": 0.5934,
"regression_edge": 1.6286,
"xwoba_edge": 0.6,
"xba_edge": 1.1143,
"xslg_edge": 0.6429,
"barrel_edge": 0.0889,
"hard_hit_edge": 1.1286,
"exit_velocity_edge": 0.96,
"sweet_spot_edge": -0.25,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "665742",
"player_name": "Juan Soto",
"offense_factor": 1.0963,
"quality_score": 1.2835,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "665742",
"espn_id": 36969,
"player_name": "Juan Soto",
"team": "NYM",
"role": "batter",
"espn_rank": 63,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 63,
"gp_value": 50.0,
"gp_rank": 212,
"ab_value": 184.0,
"ab_rank": 162,
"r_value": 28.0,
"r_rank": 111,
"h_value": 50.0,
"h_rank": 124,
"avg_value": 0.2717391,
"avg_rank": 47.0,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 13.0,
"hr_rank": 28,
"rbi_value": 30.0,
"rbi_rank": 92,
"tb_value": 95.0,
"tb_rank": 616,
"bb_value": 28.0,
"bb_rank": 58,
"so_value": 30.0,
"so_rank": 250,
"sb_value": 6.0,
"sb_rank": 70,
"obp_value": 0.3661971,
"obp_rank": "35",
"slg_value": 0.5163043,
"slg_rank": "22",
"ops_value": 0.8825014,
"ops_rank": 57.0,
"war_value": 1.65,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 14.0,
"bb_percent": 13.1,
"woba": 0.377,
"xwoba": 0.406,
"xba": 0.287,
"xslg": 0.596,
"sweet_spot_percent": 29.7,
"barrel_batted_rate": 16.2,
"hard_hit_percent": 48.4,
"exit_velocity_avg": 92.7,
"launch_angle_avg": 15.3,
"whiff_percent": 20.9,
"swing_percent": 40.3
},
"components": {
"expected_quality": 1.9565,
"regression_edge": 0.8286,
"xwoba_edge": 2.5,
"xba_edge": 1.4,
"xslg_edge": 2.5,
"barrel_edge": 2.0667,
"hard_hit_edge": 1.4143,
"exit_velocity_edge": 1.56,
"sweet_spot_edge": -0.6,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "676724",
"player_name": "Jared Young",
"offense_factor": 1.046,
"quality_score": 0.6135,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676724",
"espn_id": 41575,
"player_name": "Jared Young",
"team": "NYM",
"role": "batter",
"espn_rank": 138,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 138,
"gp_value": 24.0,
"gp_rank": 379,
"ab_value": 62.0,
"ab_rank": 380,
"r_value": 8.0,
"r_rank": 357,
"h_value": 17.0,
"h_rank": 348,
"avg_value": 0.2741935,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 7.0,
"rbi_rank": 352,
"tb_value": 30.0,
"tb_rank": 1663,
"bb_value": 7.0,
"bb_rank": 320,
"so_value": 16.0,
"so_rank": 379,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3521126,
"obp_rank": "-",
"slg_value": 0.4838709,
"slg_rank": "-",
"ops_value": 0.8359835,
"ops_rank": null,
"war_value": 0.91,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 25.0,
"k_percent": 22.5,
"bb_percent": 9.9,
"woba": 0.365,
"xwoba": 0.378,
"xba": 0.266,
"xslg": 0.494,
"sweet_spot_percent": 29.8,
"barrel_batted_rate": 14.9,
"hard_hit_percent": 51.1,
"exit_velocity_avg": 91.8,
"launch_angle_avg": 3.1,
"whiff_percent": 27.3,
"swing_percent": 46.6
},
"components": {
"expected_quality": 1.5249,
"regression_edge": 0.3714,
"xwoba_edge": 2.1143,
"xba_edge": 0.8,
"xslg_edge": 1.7143,
"barrel_edge": 1.7778,
"hard_hit_edge": 1.8,
"exit_velocity_edge": 1.2,
"sweet_spot_edge": -0.5833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "RF",
"player_id": "701807",
"player_name": "Carson Benge",
"offense_factor": 1.0746,
"quality_score": 0.9953,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "701807",
"espn_id": 4925604,
"player_name": "Carson Benge",
"team": "NYM",
"role": "batter",
"espn_rank": 144,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 144,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 231.0,
"ab_rank": 91,
"r_value": 34.0,
"r_rank": 63,
"h_value": 60.0,
"h_rank": 73,
"avg_value": 0.2597402,
"avg_rank": 71.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 26.0,
"rbi_rank": 127,
"tb_value": 92.0,
"tb_rank": 651,
"bb_value": 17.0,
"bb_rank": 171,
"so_value": 54.0,
"so_rank": 90,
"sb_value": 10.0,
"sb_rank": 29,
"obp_value": 0.318725,
"obp_rank": "107",
"slg_value": 0.3982683,
"slg_rank": "102",
"ops_value": 0.7169933,
"ops_rank": 209.0,
"war_value": 0.86,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 199.0,
"k_percent": 21.5,
"bb_percent": 6.8,
"woba": 0.32,
"xwoba": 0.353,
"xba": 0.287,
"xslg": 0.469,
"sweet_spot_percent": 42.4,
"barrel_batted_rate": 9.6,
"hard_hit_percent": 44.6,
"exit_velocity_avg": 90.0,
"launch_angle_avg": 10.8,
"whiff_percent": 21.3,
"swing_percent": 44.7
},
"components": {
"expected_quality": 1.1259,
"regression_edge": 0.9429,
"xwoba_edge": 1.4,
"xba_edge": 1.4,
"xslg_edge": 1.3571,
"barrel_edge": 0.6,
"hard_hit_edge": 0.8714,
"exit_velocity_edge": 0.48,
"sweet_spot_edge": 1.5167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "C",
"player_id": "682626",
"player_name": "Francisco Alvarez",
"offense_factor": 1.0347,
"quality_score": 0.462,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "682626",
"espn_id": 41253,
"player_name": "Francisco Alvarez",
"team": "NYM",
"role": "batter",
"espn_rank": 324,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 324,
"gp_value": 39.0,
"gp_rank": 291,
"ab_value": 119.0,
"ab_rank": 269,
"r_value": 13.0,
"r_rank": 285,
"h_value": 29.0,
"h_rank": 256,
"avg_value": 0.2436974,
"avg_rank": null,
"2b_value": 5.0,
"2b_rank": 246,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 12.0,
"rbi_rank": 275,
"tb_value": 49.0,
"tb_rank": 1360,
"bb_value": 11.0,
"bb_rank": 252,
"so_value": 31.0,
"so_rank": 244,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3157894,
"obp_rank": "-",
"slg_value": 0.4117647,
"slg_rank": "-",
"ops_value": 0.7275541,
"ops_rank": null,
"war_value": 0.03,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 128.0,
"k_percent": 23.0,
"bb_percent": 8.1,
"woba": 0.323,
"xwoba": 0.336,
"xba": 0.244,
"xslg": 0.458,
"sweet_spot_percent": 30.3,
"barrel_batted_rate": 16.9,
"hard_hit_percent": 41.6,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 9.7,
"whiff_percent": 28.9,
"swing_percent": 45.3
},
"components": {
"expected_quality": 0.8629,
"regression_edge": 0.3714,
"xwoba_edge": 0.9143,
"xba_edge": 0.1714,
"xslg_edge": 1.2,
"barrel_edge": 2.2222,
"hard_hit_edge": 0.4429,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": -0.5,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "805999",
"player_name": "A.J. Ewing",
"offense_factor": 1.0223,
"quality_score": 0.2968,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "805999",
"espn_id": 5208019,
"player_name": "A.J. Ewing",
"team": "NYM",
"role": "batter",
"espn_rank": 147,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 147,
"gp_value": 27.0,
"gp_rank": 363,
"ab_value": 91.0,
"ab_rank": 326,
"r_value": 12.0,
"r_rank": 298,
"h_value": 24.0,
"h_rank": 286,
"avg_value": 0.2637362,
"avg_rank": null,
"2b_value": 2.0,
"2b_rank": 374,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 7.0,
"rbi_rank": 352,
"tb_value": 31.0,
"tb_rank": 1820,
"bb_value": 12.0,
"bb_rank": 233,
"so_value": 32.0,
"so_rank": 235,
"sb_value": 7.0,
"sb_rank": 57,
"obp_value": 0.3461538,
"obp_rank": "-",
"slg_value": 0.3406593,
"slg_rank": "-",
"ops_value": 0.6868131,
"ops_rank": null,
"war_value": 0.83,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 57.0,
"k_percent": 30.2,
"bb_percent": 11.3,
"woba": 0.313,
"xwoba": 0.339,
"xba": 0.273,
"xslg": 0.407,
"sweet_spot_percent": 38.7,
"barrel_batted_rate": 6.5,
"hard_hit_percent": 43.5,
"exit_velocity_avg": 89.0,
"launch_angle_avg": 10.5,
"whiff_percent": 22.2,
"swing_percent": 42.4
},
"components": {
"expected_quality": 0.646,
"regression_edge": 0.7429,
"xwoba_edge": 1.0,
"xba_edge": 1.0,
"xslg_edge": 0.4714,
"barrel_edge": -0.0889,
"hard_hit_edge": 0.7143,
"exit_velocity_edge": 0.08,
"sweet_spot_edge": 0.9,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "683146",
"player_name": "Brett Baty",
"offense_factor": 0.9994,
"quality_score": -0.0079,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "683146",
"espn_id": 42414,
"player_name": "Brett Baty",
"team": "NYM",
"role": "batter",
"espn_rank": 263,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 263,
"gp_value": 63.0,
"gp_rank": 100,
"ab_value": 202.0,
"ab_rank": 132,
"r_value": 24.0,
"r_rank": 157,
"h_value": 47.0,
"h_rank": 143,
"avg_value": 0.2326732,
"avg_rank": 116.0,
"2b_value": 9.0,
"2b_rank": 132,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 25.0,
"rbi_rank": 138,
"tb_value": 67.0,
"tb_rank": 1072,
"bb_value": 19.0,
"bb_rank": 144,
"so_value": 63.0,
"so_rank": 52,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.2991071,
"obp_rank": "132",
"slg_value": 0.3316831,
"slg_rank": "147",
"ops_value": 0.6307902,
"ops_rank": 279.0,
"war_value": 0.2,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 180.0,
"k_percent": 28.0,
"bb_percent": 8.4,
"woba": 0.285,
"xwoba": 0.297,
"xba": 0.234,
"xslg": 0.372,
"sweet_spot_percent": 34.8,
"barrel_batted_rate": 7.8,
"hard_hit_percent": 37.6,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 9.1,
"whiff_percent": 28.1,
"swing_percent": 46.1
},
"components": {
"expected_quality": -0.067,
"regression_edge": 0.3429,
"xwoba_edge": -0.2,
"xba_edge": -0.1143,
"xslg_edge": -0.0286,
"barrel_edge": 0.2,
"hard_hit_edge": -0.1286,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 0.25,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "543760",
"player_name": "Marcus Semien",
"offense_factor": 1.0419,
"quality_score": 0.5583,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "543760",
"espn_id": 32146,
"player_name": "Marcus Semien",
"team": "NYM",
"role": "batter",
"espn_rank": 493,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 493,
"gp_value": 67.0,
"gp_rank": 27,
"ab_value": 242.0,
"ab_rank": 55,
"r_value": 26.0,
"r_rank": 136,
"h_value": 53.0,
"h_rank": 110,
"avg_value": 0.2190082,
"avg_rank": 143.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 25.0,
"rbi_rank": 138,
"tb_value": 85.0,
"tb_rank": 902,
"bb_value": 17.0,
"bb_rank": 171,
"so_value": 53.0,
"so_rank": 95,
"sb_value": 5.0,
"sb_rank": 84,
"obp_value": 0.2699619,
"obp_rank": "159",
"slg_value": 0.3512396,
"slg_rank": "135",
"ops_value": 0.6212015,
"ops_rank": 24.0,
"war_value": -0.4,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 214.0,
"k_percent": 20.1,
"bb_percent": 6.4,
"woba": 0.276,
"xwoba": 0.325,
"xba": 0.264,
"xslg": 0.438,
"sweet_spot_percent": 36.8,
"barrel_batted_rate": 8.9,
"hard_hit_percent": 35.8,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 18.4,
"whiff_percent": 21.6,
"swing_percent": 51.5
},
"components": {
"expected_quality": 0.4395,
"regression_edge": 1.4,
"xwoba_edge": 0.6,
"xba_edge": 0.7429,
"xslg_edge": 0.9143,
"barrel_edge": 0.4444,
"hard_hit_edge": -0.3857,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": 0.5833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "669004",
"player_name": "MJ Melendez",
"offense_factor": 0.9852,
"quality_score": -0.1975,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "669004",
"espn_id": 40948,
"player_name": "MJ Melendez",
"team": "NYM",
"role": "batter",
"espn_rank": 308,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 308,
"gp_value": 42.0,
"gp_rank": 268,
"ab_value": 92.0,
"ab_rank": 321,
"r_value": 11.0,
"r_rank": 310,
"h_value": 18.0,
"h_rank": 338,
"avg_value": 0.1956521,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 11.0,
"rbi_rank": 290,
"tb_value": 36.0,
"tb_rank": 1316,
"bb_value": 10.0,
"bb_rank": 268,
"so_value": 36.0,
"so_rank": 205,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3055555,
"obp_rank": "-",
"slg_value": 0.3913043,
"slg_rank": "-",
"ops_value": 0.6968598,
"ops_rank": null,
"war_value": 0.06,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 83.0,
"k_percent": 33.0,
"bb_percent": 9.2,
"woba": 0.312,
"xwoba": 0.271,
"xba": 0.158,
"xslg": 0.319,
"sweet_spot_percent": 27.6,
"barrel_batted_rate": 12.1,
"hard_hit_percent": 53.4,
"exit_velocity_avg": 93.5,
"launch_angle_avg": 24.3,
"whiff_percent": 33.8,
"swing_percent": 47.5
},
"components": {
"expected_quality": -0.3196,
"regression_edge": -1.1714,
"xwoba_edge": -0.9429,
"xba_edge": -2.2857,
"xslg_edge": -0.7857,
"barrel_edge": 1.1556,
"hard_hit_edge": 2.1286,
"exit_velocity_edge": 1.88,
"sweet_spot_edge": -0.95,
"launch_angle_hr_bonus": 0.45
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0424,
"raw_average_factor": 1.0424,
"team_espn_average_rank": 172.11,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "2B",
"player_id": "802139",
"player_name": "JJ Wetherholt",
"offense_factor": 1.0636,
"quality_score": 0.848,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "802139",
"espn_id": 4941056,
"player_name": "JJ Wetherholt",
"team": "STL",
"role": "batter",
"espn_rank": 16,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 16,
"gp_value": 61.0,
"gp_rank": 136,
"ab_value": 238.0,
"ab_rank": 72,
"r_value": 43.0,
"r_rank": 18,
"h_value": 60.0,
"h_rank": 73,
"avg_value": 0.2521008,
"avg_rank": 81.0,
"2b_value": 7.0,
"2b_rank": 198,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 27.0,
"rbi_rank": 115,
"tb_value": 94.0,
"tb_rank": 841,
"bb_value": 31.0,
"bb_rank": 40,
"so_value": 46.0,
"so_rank": 135,
"sb_value": 7.0,
"sb_rank": 57,
"obp_value": 0.3594306,
"obp_rank": "42",
"slg_value": 0.3949579,
"slg_rank": "109",
"ops_value": 0.7543885,
"ops_rank": 151.0,
"war_value": 2.75,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 237.0,
"k_percent": 16.4,
"bb_percent": 11.0,
"woba": 0.339,
"xwoba": 0.354,
"xba": 0.25,
"xslg": 0.44,
"sweet_spot_percent": 34.5,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 47.9,
"exit_velocity_avg": 90.7,
"launch_angle_avg": 16.3,
"whiff_percent": 22.0,
"swing_percent": 44.1
},
"components": {
"expected_quality": 0.9162,
"regression_edge": 0.4286,
"xwoba_edge": 1.4286,
"xba_edge": 0.3429,
"xslg_edge": 0.9429,
"barrel_edge": 0.0889,
"hard_hit_edge": 1.3429,
"exit_velocity_edge": 0.76,
"sweet_spot_edge": 0.2,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "691023",
"player_name": "Jordan Walker",
"offense_factor": 1.0995,
"quality_score": 1.326,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691023",
"espn_id": 4684778,
"player_name": "Jordan Walker",
"team": "STL",
"role": "batter",
"espn_rank": 5,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 5,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 251.0,
"ab_rank": 32,
"r_value": 45.0,
"r_rank": 11,
"h_value": 76.0,
"h_rank": 7,
"avg_value": 0.3027888,
"avg_rank": 12.0,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 17.0,
"hr_rank": 9,
"rbi_value": 52.0,
"rbi_rank": 2,
"tb_value": 142.0,
"tb_rank": 419,
"bb_value": 21.0,
"bb_rank": 121,
"so_value": 70.0,
"so_rank": 29,
"sb_value": 10.0,
"sb_rank": 29,
"obp_value": 0.36,
"obp_rank": "41",
"slg_value": 0.565737,
"slg_rank": "4",
"ops_value": 0.925737,
"ops_rank": 37.0,
"war_value": 3.38,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 223.0,
"k_percent": 25.5,
"bb_percent": 7.6,
"woba": 0.4,
"xwoba": 0.373,
"xba": 0.284,
"xslg": 0.521,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 13.7,
"hard_hit_percent": 52.2,
"exit_velocity_avg": 94.6,
"launch_angle_avg": 14.0,
"whiff_percent": 31.7,
"swing_percent": 52.0
},
"components": {
"expected_quality": 1.6675,
"regression_edge": -0.7714,
"xwoba_edge": 1.9714,
"xba_edge": 1.3143,
"xslg_edge": 2.1,
"barrel_edge": 1.5111,
"hard_hit_edge": 1.9571,
"exit_velocity_edge": 2.32,
"sweet_spot_edge": 0.2167,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "676475",
"player_name": "Alec Burleson",
"offense_factor": 1.117,
"quality_score": 1.5602,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676475",
"espn_id": 4345070,
"player_name": "Alec Burleson",
"team": "STL",
"role": "batter",
"espn_rank": 53,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 53,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 251.0,
"ab_rank": 32,
"r_value": 34.0,
"r_rank": 63,
"h_value": 73.0,
"h_rank": 13,
"avg_value": 0.2908366,
"avg_rank": 20.0,
"2b_value": 17.0,
"2b_rank": 8,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 10.0,
"hr_rank": 54,
"rbi_value": 47.0,
"rbi_rank": 10,
"tb_value": 120.0,
"tb_rank": 549,
"bb_value": 25.0,
"bb_rank": 74,
"so_value": 43.0,
"so_rank": 157,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3571428,
"obp_rank": "45",
"slg_value": 0.4780876,
"slg_rank": "39",
"ops_value": 0.8352304,
"ops_rank": 6.0,
"war_value": 1.78,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 224.0,
"k_percent": 15.4,
"bb_percent": 8.9,
"woba": 0.364,
"xwoba": 0.385,
"xba": 0.293,
"xslg": 0.541,
"sweet_spot_percent": 34.8,
"barrel_batted_rate": 11.0,
"hard_hit_percent": 48.1,
"exit_velocity_avg": 91.5,
"launch_angle_avg": 12.3,
"whiff_percent": 21.5,
"swing_percent": 49.1
},
"components": {
"expected_quality": 1.7165,
"regression_edge": 0.6,
"xwoba_edge": 2.3143,
"xba_edge": 1.5714,
"xslg_edge": 2.3857,
"barrel_edge": 0.9111,
"hard_hit_edge": 1.3714,
"exit_velocity_edge": 1.08,
"sweet_spot_edge": 0.25,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "SS",
"player_id": "691026",
"player_name": "Masyn Winn",
"offense_factor": 0.984,
"quality_score": -0.213,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "691026",
"espn_id": 4683365,
"player_name": "Masyn Winn",
"team": "STL",
"role": "batter",
"espn_rank": 124,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 124,
"gp_value": 58.0,
"gp_rank": 157,
"ab_value": 216.0,
"ab_rank": 117,
"r_value": 23.0,
"r_rank": 165,
"h_value": 50.0,
"h_rank": 124,
"avg_value": 0.2314814,
"avg_rank": 122.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 25.0,
"rbi_rank": 138,
"tb_value": 68.0,
"tb_rank": 1164,
"bb_value": 22.0,
"bb_rank": 105,
"so_value": 52.0,
"so_rank": 100,
"sb_value": 6.0,
"sb_rank": 70,
"obp_value": 0.3145161,
"obp_rank": "113",
"slg_value": 0.3148148,
"slg_rank": "157",
"ops_value": 0.6293309,
"ops_rank": 270.0,
"war_value": 1.01,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 197.0,
"k_percent": 21.0,
"bb_percent": 8.9,
"woba": 0.288,
"xwoba": 0.301,
"xba": 0.252,
"xslg": 0.322,
"sweet_spot_percent": 31.5,
"barrel_batted_rate": 3.0,
"hard_hit_percent": 32.7,
"exit_velocity_avg": 87.0,
"launch_angle_avg": 11.9,
"whiff_percent": 23.1,
"swing_percent": 41.8
},
"components": {
"expected_quality": -0.3371,
"regression_edge": 0.3714,
"xwoba_edge": -0.0857,
"xba_edge": 0.4,
"xslg_edge": -0.7429,
"barrel_edge": -0.8667,
"hard_hit_edge": -0.8286,
"exit_velocity_edge": -0.72,
"sweet_spot_edge": -0.3,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "671056",
"player_name": "Iván Herrera",
"offense_factor": 1.0553,
"quality_score": 0.7377,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "671056",
"espn_id": 41889,
"player_name": "Ivan Herrera",
"team": "STL",
"role": "batter",
"espn_rank": 51,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 51,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 242.0,
"ab_rank": 55,
"r_value": 43.0,
"r_rank": 18,
"h_value": 64.0,
"h_rank": 47,
"avg_value": 0.2644628,
"avg_rank": 63.0,
"2b_value": 13.0,
"2b_rank": 43,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 28.0,
"rbi_rank": 108,
"tb_value": 100.0,
"tb_rank": 536,
"bb_value": 37.0,
"bb_rank": 24,
"so_value": 49.0,
"so_rank": 119,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3918918,
"obp_rank": "9",
"slg_value": 0.4132231,
"slg_rank": "88",
"ops_value": 0.8051149,
"ops_rank": 79.0,
"war_value": 1.82,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 236.0,
"k_percent": 16.6,
"bb_percent": 12.5,
"woba": 0.361,
"xwoba": 0.363,
"xba": 0.269,
"xslg": 0.415,
"sweet_spot_percent": 31.3,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 41.0,
"exit_velocity_avg": 89.5,
"launch_angle_avg": 5.8,
"whiff_percent": 20.0,
"swing_percent": 43.8
},
"components": {
"expected_quality": 0.8485,
"regression_edge": 0.0571,
"xwoba_edge": 1.6857,
"xba_edge": 0.8857,
"xslg_edge": 0.5857,
"barrel_edge": -0.0444,
"hard_hit_edge": 0.3571,
"exit_velocity_edge": 0.28,
"sweet_spot_edge": -0.3333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "663457",
"player_name": "Lars Nootbaar",
"offense_factor": 1.058,
"quality_score": 0.7733,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "663457",
"espn_id": 4448736,
"player_name": "Lars Nootbaar",
"team": "STL",
"role": "batter",
"espn_rank": 370,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 370,
"gp_value": 5.0,
"gp_rank": 514,
"ab_value": 18.0,
"ab_rank": 486,
"r_value": 2.0,
"r_rank": 461,
"h_value": 3.0,
"h_rank": 483,
"avg_value": 0.1666666,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 418,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 4.0,
"rbi_rank": 417,
"tb_value": 7.0,
"tb_rank": 2299,
"bb_value": 4.0,
"bb_rank": 394,
"so_value": 5.0,
"so_rank": 489,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3181818,
"obp_rank": "-",
"slg_value": 0.3888888,
"slg_rank": "-",
"ops_value": 0.7070706,
"ops_rank": null,
"war_value": -0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 22.7,
"bb_percent": 18.2,
"woba": 0.302,
"xwoba": 0.371,
"xba": 0.232,
"xslg": 0.529,
"sweet_spot_percent": 30.8,
"barrel_batted_rate": 15.4,
"hard_hit_percent": 61.5,
"exit_velocity_avg": 95.3,
"launch_angle_avg": 9.3,
"whiff_percent": 10.7,
"swing_percent": 29.5
},
"components": {
"expected_quality": 1.6772,
"regression_edge": 1.9714,
"xwoba_edge": 1.9143,
"xba_edge": -0.1714,
"xslg_edge": 2.2143,
"barrel_edge": 1.8889,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.5,
"sweet_spot_edge": -0.4167,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "699625",
"player_name": "Jimmy Crooks",
"offense_factor": 1.0235,
"quality_score": 0.3128,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "699625",
"espn_id": 4749675,
"player_name": "Jimmy Crooks",
"team": "STL",
"role": "batter",
"espn_rank": 394,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 394,
"gp_value": 6.0,
"gp_rank": 508,
"ab_value": 18.0,
"ab_rank": 486,
"r_value": 0.0,
"r_rank": 526,
"h_value": 3.0,
"h_rank": 483,
"avg_value": 0.1666666,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 418,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 0.0,
"hr_rank": 425,
"rbi_value": 2.0,
"rbi_rank": 453,
"tb_value": 4.0,
"tb_rank": 2542,
"bb_value": 2.0,
"bb_rank": 436,
"so_value": 7.0,
"so_rank": 460,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.25,
"obp_rank": "-",
"slg_value": 0.2222222,
"slg_rank": "-",
"ops_value": 0.4722222,
"ops_rank": null,
"war_value": -0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 0.0,
"k_percent": 35.0,
"bb_percent": 10.0,
"woba": 0.223,
"xwoba": 0.328,
"xba": 0.268,
"xslg": 0.397,
"sweet_spot_percent": 45.5,
"barrel_batted_rate": 9.1,
"hard_hit_percent": 36.4,
"exit_velocity_avg": 88.4,
"launch_angle_avg": 9.0,
"whiff_percent": 31.4,
"swing_percent": 43.2
},
"components": {
"expected_quality": 0.4828,
"regression_edge": 2.0,
"xwoba_edge": 0.6857,
"xba_edge": 0.8571,
"xslg_edge": 0.3286,
"barrel_edge": 0.4889,
"hard_hit_edge": -0.3,
"exit_velocity_edge": -0.16,
"sweet_spot_edge": 2.0333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "CF",
"player_id": "701675",
"player_name": "Nathan Church",
"offense_factor": 0.9923,
"quality_score": -0.1023,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "701675",
"espn_id": 4843048,
"player_name": "Nathan Church",
"team": "STL",
"role": "batter",
"espn_rank": 115,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 115,
"gp_value": 47.0,
"gp_rank": 233,
"ab_value": 154.0,
"ab_rank": 215,
"r_value": 19.0,
"r_rank": 202,
"h_value": 39.0,
"h_rank": 194,
"avg_value": 0.2532467,
"avg_rank": null,
"2b_value": 7.0,
"2b_rank": 198,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 5.0,
"hr_rank": 164,
"rbi_value": 18.0,
"rbi_rank": 214,
"tb_value": 61.0,
"tb_rank": 1250,
"bb_value": 6.0,
"bb_rank": 342,
"so_value": 34.0,
"so_rank": 215,
"sb_value": 4.0,
"sb_rank": 116,
"obp_value": 0.2865853,
"obp_rank": "-",
"slg_value": 0.3961038,
"slg_rank": "-",
"ops_value": 0.6826891,
"ops_rank": null,
"war_value": 1.08,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 150.0,
"k_percent": 20.7,
"bb_percent": 3.7,
"woba": 0.3,
"xwoba": 0.292,
"xba": 0.245,
"xslg": 0.395,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 9.0,
"hard_hit_percent": 32.8,
"exit_velocity_avg": 85.8,
"launch_angle_avg": 10.1,
"whiff_percent": 22.9,
"swing_percent": 57.5
},
"components": {
"expected_quality": -0.1373,
"regression_edge": -0.2286,
"xwoba_edge": -0.3429,
"xba_edge": 0.2,
"xslg_edge": 0.3,
"barrel_edge": 0.4667,
"hard_hit_edge": -0.8143,
"exit_velocity_edge": -1.2,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "3B",
"player_id": "669357",
"player_name": "Nolan Gorman",
"offense_factor": 0.9884,
"quality_score": -0.1552,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669357",
"espn_id": 41174,
"player_name": "Nolan Gorman",
"team": "STL",
"role": "batter",
"espn_rank": 421,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 421,
"gp_value": 61.0,
"gp_rank": 136,
"ab_value": 198.0,
"ab_rank": 138,
"r_value": 19.0,
"r_rank": 202,
"h_value": 39.0,
"h_rank": 194,
"avg_value": 0.1969696,
"avg_rank": 160.0,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 26.0,
"rbi_rank": 127,
"tb_value": 64.0,
"tb_rank": 1158,
"bb_value": 25.0,
"bb_rank": 74,
"so_value": 72.0,
"so_rank": 26,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2831858,
"obp_rank": "148",
"slg_value": 0.3232323,
"slg_rank": "153",
"ops_value": 0.6064181,
"ops_rank": 5.0,
"war_value": -0.16,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 193.0,
"k_percent": 31.9,
"bb_percent": 11.1,
"woba": 0.271,
"xwoba": 0.281,
"xba": 0.2,
"xslg": 0.354,
"sweet_spot_percent": 34.9,
"barrel_batted_rate": 9.3,
"hard_hit_percent": 43.4,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 22.2,
"whiff_percent": 38.4,
"swing_percent": 49.8
},
"components": {
"expected_quality": -0.2522,
"regression_edge": 0.2857,
"xwoba_edge": -0.6571,
"xba_edge": -1.0857,
"xslg_edge": -0.2857,
"barrel_edge": 0.5333,
"hard_hit_edge": 0.7,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 0.2667,
"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 STL | True | 258 | -0.3465 | 0.4500 | 1.0295 | 1.0059 | 1.0378 | 1.1124 | negative_pitcher_regression | 0.3570 | 0.2980 | 26.40 | 13.20 | 24.20 | 15.60 | 50 | |
| Home NYM | True | 83 | 0.0029 | 0.4560 | 0.9998 | 1 | 1.0228 | 0.9512 | neutral | 0.3190 | 0.2930 | 26.30 | 11.50 | 22 | 3.30 | 31.50 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away STL | True | None | 79 | 90.03 | 2366 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0176 | |
| Home NYM | True | None | 86 | 91.03 | 2324 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.0735 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 0.9999 |
| home_runs_vs_away_pitcher | 1.0133 |
| home_pitcher_quality_edge | 0.3494 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "681035",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 114.0,
"k_percent": 26.3,
"bb_percent": 11.5,
"woba": 0.293,
"xwoba": 0.319,
"sweet_spot_percent": 46.7,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 31.5,
"avg_best_speed": 76.0794,
"avg_hyper_speed": 93.0759,
"whiff_percent": 22.0,
"swing_percent": 47.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.1677,
"command_and_miss": -0.0736,
"regression_edge": -0.7429,
"xwoba_edge": -0.1143,
"barrel_edge": 0.8889,
"hard_hit_edge": 0.9857,
"whiff_edge": -0.5143,
"bb_edge": -0.625,
"pitch_design_score": 0.0735
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "681035",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 86,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 86,
"pitch_usage": 0.0,
"release_speed": 91.02549335702402,
"release_spin_rate": 2324.4013439020473,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86,
"pitch_usage": 0.0,
"release_speed": 91.02549335702402,
"release_spin_rate": 2324.4013439020473,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0255,
"release_spin_rate": 2324.4013,
"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.0735,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5247,
"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.0029,
"sample_weight": 0.456,
"run_prevention_factor": 0.9998,
"strikeout_factor": 1.0,
"walk_factor": 1.0228,
"homer_factor": 0.9512,
"woba_minus_xwoba": -0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681035",
"espn_id": 4414215,
"player_name": "Christian Scott",
"team": "NYM",
"role": "pitcher",
"espn_rank": 83,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 83,
"gp_value": 8.0,
"gp_rank": 409,
"gs_value": 8.0,
"gs_rank": 129,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.5,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 36.0,
"ip_rank": 164,
"h_value": 29.0,
"h_rank": 194,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 18.0,
"bb_rank": 123,
"k_value": 41.0,
"k_rank": 137,
"k_per_9_value": 10.25,
"k_per_9_rank": 22,
"whip_value": 1.3055,
"whip_rank": null,
"war_value": 1.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "690928",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 19.0,
"k_percent": 26.4,
"bb_percent": 13.2,
"woba": 0.298,
"xwoba": 0.357,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 15.6,
"hard_hit_percent": 50.0,
"avg_best_speed": 81.3389,
"avg_hyper_speed": 95.1892,
"whiff_percent": 24.2,
"swing_percent": 45.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.0571,
"command_and_miss": -0.0421,
"regression_edge": -1.6857,
"xwoba_edge": -1.2,
"barrel_edge": -1.8444,
"hard_hit_edge": -1.6571,
"whiff_edge": -0.2,
"bb_edge": -1.05,
"pitch_design_score": 0.0176
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "690928",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 79,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 79,
"pitch_usage": 0.0,
"release_speed": 90.02784810126582,
"release_spin_rate": 2366.3670886075947,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 79,
"pitch_usage": 0.0,
"release_speed": 90.02784810126582,
"release_spin_rate": 2366.3670886075947,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0278,
"release_spin_rate": 2366.3671,
"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.0176,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1256,
"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.3465,
"sample_weight": 0.45,
"run_prevention_factor": 1.0295,
"strikeout_factor": 1.0059,
"walk_factor": 1.0378,
"homer_factor": 1.1124,
"woba_minus_xwoba": -0.059,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "690928",
"espn_id": 4415836,
"player_name": "Hunter Dobbins",
"team": "STL",
"role": "pitcher",
"espn_rank": 258,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 258,
"gp_value": 3.0,
"gp_rank": 529,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.7692,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 13.0,
"ip_rank": 441,
"h_value": 10.0,
"h_rank": 470,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 7.0,
"bb_rank": 371,
"k_value": 14.0,
"k_rank": 408,
"k_per_9_value": 9.692307,
"k_per_9_rank": 24,
"whip_value": 1.3076,
"whip_rank": null,
"war_value": 0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 0.9999,
"home_runs_vs_away_pitcher": 1.0133,
"home_pitcher_quality_edge": 0.3494
},
"score_before": {
"away_runs": 1.0,
"home_runs": 2.0
},
"score_after": {
"away_runs": 0.9999,
"home_runs": 2.0266,
"home_win_probability": 0.5936
},
"reason": "Baseball Savant xwOBA, barrel, hard-hit, sweet-spot, whiff, K%, and BB% adjusted starter run prevention"
}| Team | Last-10 W-L | Win % | R/G | RA/G | Run Diff | Streak | Offense | Defense |
|---|---|---|---|---|---|---|---|---|
| Away STL | 9-47 | 0.161 | 1.10 | 2.80 | -93 | cold | strong | |
| Home NYM | 20-38 | 0.345 | 1.10 | 3.20 | -122 | cold | strong |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away STL | 37-28 | 0.569 | 12 | 0.185 | True |
| Home NYM | 29-38 | 0.433 | -19 | -0.284 | True |
| Signal | - | - | -0.468 | -0.673 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target STL | - | - | 1 | - | - | - | - |
| Game target NYM | - | - | 2 | - | - | - | - |
| Player finalized STL | 56 | 15 | 7 | 0 | 9 | 7 | 13 |
| Player finalized NYM | 50 | 11 | 7 | 0 | 6 | 2 | 13 |
| Player model fractional STL | 55.02 | 13.87 | 7.82 | 1.92 | 7.74 | 5.88 | 12.79 |
| Player model fractional NYM | 50.13 | 11.34 | 5.82 | 1.64 | 5.52 | 4.54 | 12.30 |
| Simulation box STL | 33 | 6 | 1 | 0 | 1 | 3 | 4 |
| Simulation box NYM | 29 | 5 | 2 | 2 | 2 | 1 | 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 STL | Starter | Hunter Dobbins | 4.10 | 0 | 4 | 1 | 1 | 3.77 | 1.32 | True |
| Away STL | Middle Reliever | George Soriano | 1.20 | 1 | 1 | 1 | 0 | 3.42 | 1.27 | True |
| Away STL | Middle Reliever | JoJo Romero | 1 | 1 | 0 | 3 | 0 | 4.74 | 1.33 | True |
| Away STL | Middle Reliever | Riley O'Brien | 1 | 0 | 0 | 0 | 0 | 5.14 | 1.51 | True |
| Home NYM | Starter | Christian Scott | 5.10 | 0 | 4 | 3 | 1 | 3.08 | 1.34 | True |
| Home NYM | Middle Reliever | Brooks Raley | 1.10 | 0 | 0 | 1 | 0 | 3.20 | 1.33 | True |
| Home NYM | Middle Reliever | Devin Williams | 1 | 1 | 0 | 1 | 1 | 5.70 | 1.48 | True |
| Home NYM | Middle Reliever | Luke Weaver | 1.10 | 0 | 0 | 1 | 1 | 2.30 | 0.97 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| home | NYM | batter | CF | A.J. Ewing | worse | 10 | 2 | 8 | 3 | 7 | predicted_AB | -1.5900 | deboost | worse |
| away | STL | batter | 1B | Alec Burleson | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_AB | -1.4000 | deboost | worse |
| away | STL | batter | RF | Jordan Walker | worse | 11 | 4 | 7 | 5 | 6 | predicted_AB | -1.2400 | deboost | worse |
| away | STL | batter | 3B | Nolan Gorman | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -1.2270 | deboost | better |
| away | STL | batter | CF | Nathan Church | boosted | 10 | 6 | 4 | 5 | 5 | predicted_SO | 1.2080 | boost | worse |
| away | STL | batter | C | Jimmy Crooks | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_SO | -1.1670 | deboost | better |
| away | STL | batter | 2B | JJ Wetherholt | worse | 10 | 3 | 7 | 2 | 8 | predicted_H | -1.0800 | deboost | worse |
| home | NYM | batter | LF | MJ Melendez | worse | 10 | 2 | 8 | 3 | 7 | predicted_SO | -1.0740 | deboost | better |
| home | NYM | batter | DH | Juan Soto | worse | 11 | 6 | 5 | 5 | 6 | predicted_H | 1.0600 | boost | better |
| away | STL | batter | DH | Iván Herrera | worse | 11 | 1 | 10 | 2 | 9 | predicted_H | -1.0400 | deboost | worse |
| home | NYM | batter | SS | Bo Bichette | worse | 11 | 1 | 10 | 0 | 11 | predicted_H | -1.0400 | deboost | worse |
| away | STL | pitcher | Starter | Hunter Dobbins | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.9000 | deboost | worse |
| home | NYM | batter | 2B | Marcus Semien | worse | 11 | 0 | 11 | 1 | 10 | predicted_H | -0.8800 | deboost | worse |
| home | NYM | batter | C | Francisco Alvarez | deboosted | 10 | 4 | 6 | 5 | 5 | predicted_HR | 0.8700 | boost | better |
| away | STL | batter | SS | Masyn Winn | worse | 11 | 3 | 8 | 4 | 7 | predicted_SO | -0.8610 | deboost | better |
| away | STL | batter | LF | Lars Nootbaar | worse | 9 | 3 | 6 | 3 | 6 | predicted_BB | -0.8000 | deboost | worse |
| home | NYM | batter | 3B | Brett Baty | worse | 11 | 0 | 11 | 1 | 10 | predicted_H | -0.7900 | deboost | worse |
| home | NYM | batter | RF | Carson Benge | worse | 11 | 2 | 9 | 1 | 10 | predicted_R | -0.5830 | deboost | worse |
| home | NYM | batter | 1B | Jared Young | worse | 11 | 1 | 10 | 0 | 11 | predicted_R | -0.3610 | deboost | worse |
| away | STL | pitcher | Middle Reliever | George Soriano | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.2000 | boost | better |
| home | NYM | pitcher | Middle Reliever | Brooks Raley | better | 1 | 1 | 0 | 1 | 0 | predicted_IP | 0.1000 | boost | better |
| home | NYM | pitcher | Middle Reliever | Luke Weaver | 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 | Hunter Dobbins |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.3465 |
| ESPN Rank | 258 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0176 |
| Avg Velo | 90.0278 |
| Avg Spin | 2366.3671 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 4.1000 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 4 |
| Season ERA | 2.7692 |
| Season WHIP | 1.3077 |
| Role Avg IP | 4.3330 |
| Recent Avg IP | 4.3330 |
| Last Start IP | 4.1000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"opponent": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"edges": {
"quality_edge": 0.2953,
"offense_edge": -0.0391,
"opponent_offense_edge": -0.1442,
"defense_strength": 0.1289,
"opponent_defense_weakness": -0.0883,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0214,
"run_prevention": 0.9493,
"strikeout": 1.0204
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "690928",
"profile": {
"available": true,
"pitcher_id": "690928",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 19.0,
"k_percent": 26.4,
"bb_percent": 13.2,
"woba": 0.298,
"xwoba": 0.357,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 15.6,
"hard_hit_percent": 50.0,
"avg_best_speed": 81.3389,
"avg_hyper_speed": 95.1892,
"whiff_percent": 24.2,
"swing_percent": 45.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.0571,
"command_and_miss": -0.0421,
"regression_edge": -1.6857,
"xwoba_edge": -1.2,
"barrel_edge": -1.8444,
"hard_hit_edge": -1.6571,
"whiff_edge": -0.2,
"bb_edge": -1.05,
"pitch_design_score": 0.0176
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "690928",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 79,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 79,
"pitch_usage": 0.0,
"release_speed": 90.02784810126582,
"release_spin_rate": 2366.3670886075947,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 79,
"pitch_usage": 0.0,
"release_speed": 90.02784810126582,
"release_spin_rate": 2366.3670886075947,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0278,
"release_spin_rate": 2366.3671,
"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.0176,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1256,
"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.3465,
"sample_weight": 0.45,
"run_prevention_factor": 1.0295,
"strikeout_factor": 1.0059,
"walk_factor": 1.0378,
"homer_factor": 1.1124,
"woba_minus_xwoba": -0.059,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "690928",
"espn_id": 4415836,
"player_name": "Hunter Dobbins",
"team": "STL",
"role": "pitcher",
"espn_rank": 258,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 258,
"gp_value": 3.0,
"gp_rank": 529,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.7692,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 13.0,
"ip_rank": 441,
"h_value": 10.0,
"h_rank": 470,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 7.0,
"bb_rank": 371,
"k_value": 14.0,
"k_rank": 408,
"k_per_9_value": 9.692307,
"k_per_9_rank": 24,
"whip_value": 1.3076,
"whip_rank": null,
"war_value": 0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0133,
"adjusted": 2
},
"predicted_H": {
"original": 2.0,
"factor": 1.0133,
"adjusted": 2
},
"predicted_BB": {
"original": 6.0,
"factor": 1.017,
"adjusted": 6
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0506,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0027,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "insufficient_data"
},
"pitching": {
"IP": 13.0,
"ER": 4,
"H": 10,
"BB": 7,
"SO": 14,
"HR": 1,
"ERA": 2.769230769230769,
"WHIP": 1.3076923076923077,
"K9": 9.692307692307692,
"HR9": 0.6923076923076923,
"games_pitched": 3,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 3,
"error_prone": false
},
"games_count": 3,
"latest_game_date": "2026-06-05T00:00:00"
}{
"available": true,
"pitcher_id": "690928",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 79,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 79,
"pitch_usage": 0.0,
"release_speed": 90.02784810126582,
"release_spin_rate": 2366.3670886075947,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 79,
"pitch_usage": 0.0,
"release_speed": 90.02784810126582,
"release_spin_rate": 2366.3670886075947,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0278,
"release_spin_rate": 2366.3671,
"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.0176,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.1256,
"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": 3.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.375,
"prior_weight": 0.625
},
"role": "pitcher",
"player_id": "690928",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 3,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 3,
"totals": {
"IP": 13.0,
"ER": 4.0,
"R": 4.0,
"H": 10.0,
"BB": 7.0,
"SO": 14.0,
"HR": 1.0,
"BF": 53.0,
"Pitches": 218.0
},
"per_game": {
"IP": 4.1,
"ER": 1.3333,
"R": 1.3333,
"H": 3.3333,
"BB": 2.3333,
"SO": 4.6667,
"HR": 0.3333,
"BF": 17.6667,
"Pitches": 72.6667
},
"rates": {
"ERA": 2.7692,
"WHIP": 1.3077,
"ER_per_IP": 0.30769,
"H_per_IP": 0.76923,
"BB_per_IP": 0.53846,
"SO_per_IP": 1.07692,
"HR_per_IP": 0.07692
}
},
"last_10": {
"games": 3,
"totals": {
"IP": 13.0,
"ER": 4.0,
"R": 4.0,
"H": 10.0,
"BB": 7.0,
"SO": 14.0,
"HR": 1.0,
"BF": 53.0,
"Pitches": 218.0
},
"per_game": {
"IP": 4.1,
"ER": 1.3333,
"R": 1.3333,
"H": 3.3333,
"BB": 2.3333,
"SO": 4.6667,
"HR": 0.3333,
"BF": 17.6667,
"Pitches": 72.6667
},
"rates": {
"ERA": 2.7692,
"WHIP": 1.3077,
"ER_per_IP": 0.30769,
"H_per_IP": 0.76923,
"BB_per_IP": 0.53846,
"SO_per_IP": 1.07692,
"HR_per_IP": 0.07692
}
},
"season": {
"games": 3,
"totals": {
"IP": 13.0,
"ER": 4.0,
"R": 4.0,
"H": 10.0,
"BB": 7.0,
"SO": 14.0,
"HR": 1.0,
"BF": 53.0,
"Pitches": 218.0
},
"per_game": {
"IP": 4.1,
"ER": 1.3333,
"R": 1.3333,
"H": 3.3333,
"BB": 2.3333,
"SO": 4.6667,
"HR": 0.3333,
"BF": 17.6667,
"Pitches": 72.6667
},
"rates": {
"ERA": 2.7692,
"WHIP": 1.3077,
"ER_per_IP": 0.30769,
"H_per_IP": 0.76923,
"BB_per_IP": 0.53846,
"SO_per_IP": 1.07692,
"HR_per_IP": 0.07692
}
}
},
"weighted_prediction": {
"predicted_IP": 4.2,
"predicted_ER": 1.991,
"predicted_H": 4.22,
"predicted_BB": 2.043,
"predicted_SO": 4.696,
"predicted_HR": 0.555,
"predicted_ERA": 3.7724,
"predicted_WHIP": 1.3184
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.6141,
"form_weight": 0.3859,
"form_reliability": 0.375,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 3.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.375,
"prior_weight": 0.625
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 4.2,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 1.991,
"final": 0.7684,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 4.22,
"final": 2.2427,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.043,
"final": 1.4025,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 4.696,
"final": 4.2686,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.555,
"final": 0.2142,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.7724,
"final": 3.7724,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3184,
"final": 1.3184,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | George Soriano |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.0516 |
| ESPN Rank | 192 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0969 |
| Avg Velo | 91.4445 |
| Avg Spin | 2190.6739 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1.2000 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 1 |
| Season ERA | 3.0759 |
| Season WHIP | 1.1772 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"opponent": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"edges": {
"quality_edge": 0.2953,
"offense_edge": -0.0391,
"opponent_offense_edge": -0.1442,
"defense_strength": 0.1289,
"opponent_defense_weakness": -0.0883,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0214,
"run_prevention": 0.9493,
"strikeout": 1.0204
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "666277",
"profile": {
"available": true,
"pitcher_id": "666277",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 89.0,
"k_percent": 20.9,
"bb_percent": 9.1,
"woba": 0.294,
"xwoba": 0.328,
"sweet_spot_percent": 25.0,
"barrel_batted_rate": 10.5,
"hard_hit_percent": 36.8,
"avg_best_speed": 79.0681,
"avg_hyper_speed": 94.4944,
"whiff_percent": 31.3,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.1213,
"command_and_miss": 0.1643,
"regression_edge": -0.9714,
"xwoba_edge": -0.3714,
"barrel_edge": -0.7111,
"hard_hit_edge": 0.2286,
"whiff_edge": 0.8143,
"bb_edge": -0.025,
"pitch_design_score": 0.0969
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "666277",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 8,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 8,
"pitch_usage": 0.0,
"release_speed": 91.4444791751177,
"release_spin_rate": 2190.673944986214,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 8,
"pitch_usage": 0.0,
"release_speed": 91.4444791751177,
"release_spin_rate": 2190.673944986214,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4445,
"release_spin_rate": 2190.6739,
"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.0969,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6923,
"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.0516,
"sample_weight": 0.45,
"run_prevention_factor": 1.0044,
"strikeout_factor": 1.01,
"walk_factor": 1.0009,
"homer_factor": 1.0265,
"woba_minus_xwoba": -0.034,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "666277",
"espn_id": 4917836,
"player_name": "George Soriano",
"team": "STL",
"role": "pitcher",
"espn_rank": 192,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 192,
"gp_value": 28.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.0759,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 9.0,
"hld_rank": 24,
"ip_value": 26.1,
"ip_rank": 277,
"h_value": 21.0,
"h_rank": 284,
"er_value": 9.0,
"er_rank": 329,
"hr_value": 4.0,
"hr_rank": 173,
"bb_value": 10.0,
"bb_rank": 282,
"k_value": 23.0,
"k_rank": 297,
"k_per_9_value": 7.8607593,
"k_per_9_rank": 28,
"whip_value": 1.1772,
"whip_rank": null,
"war_value": 0.43,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.002,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.002,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0004,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0119,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0045,
"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": 11,
"BB": 0,
"SO": 8,
"HR": 3,
"ERA": 2.8928571428571432,
"WHIP": 1.1785714285714288,
"K9": 7.714285714285715,
"HR9": 2.8928571428571432,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-07T00:00:00"
}{
"available": true,
"pitcher_id": "666277",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 8,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 8,
"pitch_usage": 0.0,
"release_speed": 91.4444791751177,
"release_spin_rate": 2190.673944986214,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 8,
"pitch_usage": 0.0,
"release_speed": 91.4444791751177,
"release_spin_rate": 2190.673944986214,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.4445,
"release_spin_rate": 2190.6739,
"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.0969,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.6923,
"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.202,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5099,
"prior_weight": 0.4901
},
"role": "pitcher",
"player_id": "666277",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 6.0,
"BB": 0.0,
"SO": 6.0,
"HR": 1.0,
"BF": 20.0,
"Pitches": 68.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 1.2,
"BB": 0.0,
"SO": 1.2,
"HR": 0.2,
"BF": 4.0,
"Pitches": 13.6
},
"rates": {
"ERA": 1.9286,
"WHIP": 1.2857,
"ER_per_IP": 0.21429,
"H_per_IP": 1.28571,
"BB_per_IP": 0.0,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.21429
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 3.0,
"R": 3.0,
"H": 11.0,
"BB": 0.0,
"SO": 8.0,
"HR": 3.0,
"BF": 38.0,
"Pitches": 129.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3,
"R": 0.3,
"H": 1.1,
"BB": 0.0,
"SO": 0.8,
"HR": 0.3,
"BF": 3.8,
"Pitches": 12.9
},
"rates": {
"ERA": 2.8929,
"WHIP": 1.1786,
"ER_per_IP": 0.32143,
"H_per_IP": 1.17857,
"BB_per_IP": 0.0,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.32143
}
},
"season": {
"games": 28,
"totals": {
"IP": 26.1,
"ER": 9.0,
"R": 10.0,
"H": 21.0,
"BB": 10.0,
"SO": 23.0,
"HR": 4.0,
"BF": 110.0,
"Pitches": 418.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3214,
"R": 0.3571,
"H": 0.75,
"BB": 0.3571,
"SO": 0.8214,
"HR": 0.1429,
"BF": 3.9286,
"Pitches": 14.9286
},
"rates": {
"ERA": 3.0759,
"WHIP": 1.1772,
"ER_per_IP": 0.34177,
"H_per_IP": 0.79747,
"BB_per_IP": 0.37975,
"SO_per_IP": 0.87342,
"HR_per_IP": 0.1519
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.38,
"predicted_H": 1.057,
"predicted_BB": 0.218,
"predicted_SO": 0.996,
"predicted_HR": 0.191,
"predicted_ERA": 3.4164,
"predicted_WHIP": 1.2747
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5571,
"form_weight": 0.4429,
"form_reliability": 0.5099,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.202,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5099,
"prior_weight": 0.4901
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.38,
"final": 0.7254,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.057,
"final": 1.0252,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.218,
"final": 0.0966,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.996,
"final": 0.9982,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.191,
"final": 0.6417,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.4164,
"final": 3.4164,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.2747,
"final": 1.2747,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | JoJo Romero |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1950 |
| ESPN Rank | 161 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0546 |
| Avg Velo | 88.7380 |
| Avg Spin | 2254.8760 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 3 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 3.3371 |
| Season WHIP | 1.2135 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"opponent": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"edges": {
"quality_edge": 0.2953,
"offense_edge": -0.0391,
"opponent_offense_edge": -0.1442,
"defense_strength": 0.1289,
"opponent_defense_weakness": -0.0883,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0214,
"run_prevention": 0.9493,
"strikeout": 1.0204
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668941",
"profile": {
"available": true,
"pitcher_id": "668941",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 103.0,
"k_percent": 24.0,
"bb_percent": 8.8,
"woba": 0.306,
"xwoba": 0.341,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 46.9,
"avg_best_speed": 82.0639,
"avg_hyper_speed": 96.1653,
"whiff_percent": 23.5,
"swing_percent": 39.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.5823,
"command_and_miss": -0.0114,
"regression_edge": -1.0,
"xwoba_edge": -0.7429,
"barrel_edge": 0.2222,
"hard_hit_edge": -1.2143,
"whiff_edge": -0.3,
"bb_edge": 0.05,
"pitch_design_score": -0.0546
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "668941",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.73803402679215,
"release_spin_rate": 2254.8759678714523,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.73803402679215,
"release_spin_rate": 2254.8759678714523,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.738,
"release_spin_rate": 2254.876,
"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.0546,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3903,
"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.195,
"sample_weight": 0.45,
"run_prevention_factor": 1.0166,
"strikeout_factor": 0.9979,
"walk_factor": 0.9982,
"homer_factor": 1.0239,
"woba_minus_xwoba": -0.035,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "668941",
"espn_id": 40456,
"player_name": "JoJo Romero",
"team": "STL",
"role": "pitcher",
"espn_rank": 161,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 161,
"gp_value": 30.0,
"gp_rank": 24,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.337,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 16.0,
"hld_rank": 2,
"ip_value": 29.2,
"ip_rank": 220,
"h_value": 25.0,
"h_rank": 246,
"er_value": 11.0,
"er_rank": 265,
"hr_value": 3.0,
"hr_rank": 232,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 30.0,
"k_rank": 220,
"k_per_9_value": 9.101124,
"k_per_9_rank": 26,
"whip_value": 1.2134,
"whip_rank": null,
"war_value": 0.58,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0075,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0075,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9992,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0108,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9991,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 4,
"H": 10,
"BB": 4,
"SO": 12,
"HR": 0,
"ERA": 3.8571428571428577,
"WHIP": 1.5000000000000002,
"K9": 11.571428571428573,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "668941",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 15,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.73803402679215,
"release_spin_rate": 2254.8759678714523,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 15,
"pitch_usage": 0.0,
"release_speed": 88.73803402679215,
"release_spin_rate": 2254.8759678714523,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.738,
"release_spin_rate": 2254.876,
"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.0546,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.3903,
"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.861,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5396,
"prior_weight": 0.4604
},
"role": "pitcher",
"player_id": "668941",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 30,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 3.0,
"R": 3.0,
"H": 4.0,
"BB": 1.0,
"SO": 7.0,
"HR": 0.0,
"BF": 19.0,
"Pitches": 71.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 0.8,
"BB": 0.2,
"SO": 1.4,
"HR": 0.0,
"BF": 3.8,
"Pitches": 14.2
},
"rates": {
"ERA": 6.75,
"WHIP": 1.25,
"ER_per_IP": 0.75,
"H_per_IP": 1.0,
"BB_per_IP": 0.25,
"SO_per_IP": 1.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 4.0,
"R": 4.0,
"H": 10.0,
"BB": 4.0,
"SO": 12.0,
"HR": 0.0,
"BF": 44.0,
"Pitches": 165.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.0,
"BB": 0.4,
"SO": 1.2,
"HR": 0.0,
"BF": 4.4,
"Pitches": 16.5
},
"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": 1.28571,
"HR_per_IP": 0.0
}
},
"season": {
"games": 30,
"totals": {
"IP": 29.2,
"ER": 11.0,
"R": 11.0,
"H": 25.0,
"BB": 11.0,
"SO": 30.0,
"HR": 3.0,
"BF": 125.0,
"Pitches": 501.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3667,
"R": 0.3667,
"H": 0.8333,
"BB": 0.3667,
"SO": 1.0,
"HR": 0.1,
"BF": 4.1667,
"Pitches": 16.7
},
"rates": {
"ERA": 3.3371,
"WHIP": 1.2135,
"ER_per_IP": 0.37079,
"H_per_IP": 0.8427,
"BB_per_IP": 0.37079,
"SO_per_IP": 1.01124,
"HR_per_IP": 0.10112
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.484,
"predicted_H": 0.899,
"predicted_BB": 0.321,
"predicted_SO": 1.11,
"predicted_HR": 0.07,
"predicted_ERA": 4.7416,
"predicted_WHIP": 1.3277
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5445,
"form_weight": 0.4555,
"form_reliability": 0.5396,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.861,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5396,
"prior_weight": 0.4604
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.484,
"final": 0.765,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 0.899,
"final": 2.043,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.321,
"final": 0.1462,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.11,
"final": 0.5056,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.07,
"final": 0.5764,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.7416,
"final": 4.7416,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3277,
"final": 1.3277,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Riley O'Brien |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.0972 |
| ESPN Rank | 256 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.2018 |
| Avg Velo | 93.3179 |
| Avg Spin | 2284.8853 |
| 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.6818 |
| Season WHIP | 1.1591 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"opponent": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"edges": {
"quality_edge": 0.2953,
"offense_edge": -0.0391,
"opponent_offense_edge": -0.1442,
"defense_strength": 0.1289,
"opponent_defense_weakness": -0.0883,
"recent_win_pct_edge": 0.2
},
"player_factors": {
"ip": 1.0214,
"run_prevention": 0.9493,
"strikeout": 1.0204
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "676617",
"profile": {
"available": true,
"pitcher_id": "676617",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 96.0,
"k_percent": 25.2,
"bb_percent": 5.7,
"woba": 0.287,
"xwoba": 0.312,
"sweet_spot_percent": 32.5,
"barrel_batted_rate": 5.1,
"hard_hit_percent": 38.8,
"avg_best_speed": 75.3984,
"avg_hyper_speed": 94.1284,
"whiff_percent": 28.4,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.2681,
"command_and_miss": 0.4657,
"regression_edge": -0.7143,
"xwoba_edge": 0.0857,
"barrel_edge": 0.4889,
"hard_hit_edge": -0.0571,
"whiff_edge": 0.4,
"bb_edge": 0.825,
"pitch_design_score": 0.2018
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "676617",
"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": 93.31785135949741,
"release_spin_rate": 2284.8852776424596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 93.31785135949741,
"release_spin_rate": 2284.8852776424596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3179,
"release_spin_rate": 2284.8853,
"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.2018,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.4416,
"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.0972,
"sample_weight": 0.45,
"run_prevention_factor": 0.9917,
"strikeout_factor": 1.0136,
"walk_factor": 0.9703,
"homer_factor": 0.9823,
"woba_minus_xwoba": -0.025,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "676617",
"espn_id": 41509,
"player_name": "Riley O'Brien",
"team": "STL",
"role": "pitcher",
"espn_rank": 256,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 256,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.6818,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 17.0,
"sv_rank": 4,
"hld_value": 1.0,
"hld_rank": 192,
"ip_value": 29.1,
"ip_rank": 227,
"h_value": 27.0,
"h_rank": 213,
"er_value": 12.0,
"er_rank": 244,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 7.0,
"bb_rank": 371,
"k_value": 31.0,
"k_rank": 206,
"k_per_9_value": 9.511364,
"k_per_9_rank": 24,
"whip_value": 1.159,
"whip_rank": null,
"war_value": 0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9963,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9963,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9866,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.992,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0061,
"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": 6,
"H": 10,
"BB": 6,
"SO": 8,
"HR": 0,
"ERA": 5.225806451612904,
"WHIP": 1.5483870967741937,
"K9": 6.967741935483872,
"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-07T00:00:00"
}{
"available": true,
"pitcher_id": "676617",
"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": 93.31785135949741,
"release_spin_rate": 2284.8852776424596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 93.31785135949741,
"release_spin_rate": 2284.8852776424596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.3179,
"release_spin_rate": 2284.8853,
"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.2018,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 1.4416,
"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.795,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5368,
"prior_weight": 0.4632
},
"role": "pitcher",
"player_id": "676617",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 3.0,
"SO": 4.0,
"HR": 0.0,
"BF": 25.0,
"Pitches": 97.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.8,
"H": 1.4,
"BB": 0.6,
"SO": 0.8,
"HR": 0.0,
"BF": 5.0,
"Pitches": 19.4
},
"rates": {
"ERA": 7.2,
"WHIP": 2.0,
"ER_per_IP": 0.8,
"H_per_IP": 1.4,
"BB_per_IP": 0.6,
"SO_per_IP": 0.8,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 10.1,
"ER": 6.0,
"R": 7.0,
"H": 10.0,
"BB": 6.0,
"SO": 8.0,
"HR": 0.0,
"BF": 48.0,
"Pitches": 178.0
},
"per_game": {
"IP": 1.0,
"ER": 0.6,
"R": 0.7,
"H": 1.0,
"BB": 0.6,
"SO": 0.8,
"HR": 0.0,
"BF": 4.8,
"Pitches": 17.8
},
"rates": {
"ERA": 5.2258,
"WHIP": 1.5484,
"ER_per_IP": 0.58065,
"H_per_IP": 0.96774,
"BB_per_IP": 0.58065,
"SO_per_IP": 0.77419,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 29.1,
"ER": 12.0,
"R": 14.0,
"H": 27.0,
"BB": 7.0,
"SO": 31.0,
"HR": 1.0,
"BF": 123.0,
"Pitches": 476.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4138,
"R": 0.4828,
"H": 0.931,
"BB": 0.2414,
"SO": 1.069,
"HR": 0.0345,
"BF": 4.2414,
"Pitches": 16.4138
},
"rates": {
"ERA": 3.6818,
"WHIP": 1.1591,
"ER_per_IP": 0.40909,
"H_per_IP": 0.92045,
"BB_per_IP": 0.23864,
"SO_per_IP": 1.05682,
"HR_per_IP": 0.03409
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.571,
"predicted_H": 1.063,
"predicted_BB": 0.449,
"predicted_SO": 0.886,
"predicted_HR": 0.069,
"predicted_ERA": 5.1425,
"predicted_WHIP": 1.5121
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5457,
"form_weight": 0.4543,
"form_reliability": 0.5368,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.795,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5368,
"prior_weight": 0.4632
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.571,
"final": 0.2594,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.063,
"final": 0.4829,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.449,
"final": 0.204,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.886,
"final": 0.4025,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.069,
"final": 0.0313,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.1425,
"final": 5.1425,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5121,
"final": 1.5121,
"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.124 | 0.000 | 0.000 | Hitting_2B | 0.124 | 0.000 | -0.124 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.520 | 5.000 | 8.000 | Hitting_AB | 3.928 | 5.000 | 1.072 | 0.000 |
| predicted_AVG | 0.239 | 0.000 | 0.250 | Hitting_AVG | 0.239 | 0.600 | -0.239 | -0.600 |
| predicted_BB | 0.566 | 0.000 | 1.000 | Hitting_BB | 0.566 | 0.000 | -0.566 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.080 | 0.000 | 2.000 | Hitting_H | 0.940 | 3.000 | -0.940 | -3.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.167 | 0.000 | -0.167 | 0.000 |
| predicted_OBP | 0.339 | 0.000 | 0.333 | Hitting_OBP | 0.360 | 0.600 | -0.360 | -0.600 |
| predicted_R | 0.709 | 0.000 | 1.000 | Hitting_R | 0.709 | 2.000 | -0.709 | -2.000 |
| predicted_RBI | 0.450 | 0.000 | 1.000 | Hitting_RBI | 0.474 | 0.000 | -0.474 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.112 | 0.000 | -0.112 | 0.000 |
| predicted_SLG | 0.389 | 0.000 | 0.250 | Hitting_SLG | 0.399 | 0.600 | -0.399 | -0.600 |
| predicted_SO | 0.829 | 1.000 | 1.000 | Hitting_SO | 0.829 | 0.000 | 0.171 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 4.5200 -> 5.0000 (boost 0.4800, better) |
| Biggest Deboost | predicted_H: 1.0800 -> 0.0000 (deboost -1.0800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 11 | 10 | 1 | 9 | 2 | predicted_AB: 4.5200 -> 7.7199 (boost 3.1999, better) | predicted_SLG: 0.3890 -> 0.3832 (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 | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2496 -> 0.2569 (boost 0.0073, better) | predicted_SLG: 0.3832 -> 0.3680 (deboost -0.0152, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 3 | 4 | 4 | 3 | predicted_AB: 7.7199 -> 8.0000 (boost 0.2801, better) | predicted_HBP: 0.3590 -> 0.0000 (deboost -0.3590, worse) | AB rounded to 8 (raw=7.72), rates preserved: AVG=0.257 HR/AB=0.027 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.3427 -> 1.0000 (deboost -0.3427, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3680 -> 0.2500 (deboost -0.1180, 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 -> 5.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.2500 -> 0.3680 (boost 0.1180, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "802139",
"player_name": "JJ Wetherholt",
"position": "2B",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.124,
"predicted_3B": 0.0,
"predicted_AB": 4.52,
"predicted_AVG": 0.239,
"predicted_BB": 0.566,
"predicted_H": 1.08,
"predicted_HR": 0.12,
"predicted_OBP": 0.339,
"predicted_R": 0.709,
"predicted_RBI": 0.45,
"predicted_SLG": 0.389,
"predicted_SO": 0.829
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2369,
"predicted_3B": 0.0004,
"predicted_AB": 7.7199,
"predicted_AVG": 0.2496,
"predicted_BB": 0.9397,
"predicted_H": 1.97,
"predicted_HBP": 0.359,
"predicted_HR": 0.2063,
"predicted_OBP": 0.3472,
"predicted_R": 1.3205,
"predicted_RBI": 0.7874,
"predicted_SLG": 0.3832,
"predicted_SO": 1.2483
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.124,
"after": 0.2369,
"delta": 0.1129,
"percent_delta": 0.9105,
"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.52,
"after": 7.7199,
"delta": 3.1999,
"percent_delta": 0.7079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2496,
"delta": 0.0106,
"percent_delta": 0.0444,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.566,
"after": 0.9397,
"delta": 0.3737,
"percent_delta": 0.6602,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.08,
"after": 1.97,
"delta": 0.89,
"percent_delta": 0.8241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.2063,
"delta": 0.0863,
"percent_delta": 0.7192,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3472,
"delta": 0.0082,
"percent_delta": 0.0242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.709,
"after": 1.3205,
"delta": 0.6115,
"percent_delta": 0.8625,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.7874,
"delta": 0.3374,
"percent_delta": 0.7498,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3832,
"delta": -0.0058,
"percent_delta": -0.0149,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.829,
"after": 1.2483,
"delta": 0.4193,
"percent_delta": 0.5058,
"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_AB",
"before": 4.52,
"after": 7.7199,
"delta": 3.1999,
"percent_delta": 0.7079,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3832,
"delta": -0.0058,
"percent_delta": -0.0149,
"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": 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.2369,
"predicted_3B": 0.0004,
"predicted_AB": 7.7199,
"predicted_AVG": 0.2569,
"predicted_BB": 0.9466,
"predicted_H": 1.9834,
"predicted_HBP": 0.359,
"predicted_HR": 0.2065,
"predicted_OBP": 0.3381,
"predicted_R": 1.3427,
"predicted_RBI": 0.8006,
"predicted_SLG": 0.368,
"predicted_SO": 1.2392
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2369,
"after": 0.2369,
"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.7199,
"after": 7.7199,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2496,
"after": 0.2569,
"delta": 0.0073,
"percent_delta": 0.0292,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9397,
"after": 0.9466,
"delta": 0.0069,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.97,
"after": 1.9834,
"delta": 0.0134,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.359,
"after": 0.359,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2063,
"after": 0.2065,
"delta": 0.0002,
"percent_delta": 0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3472,
"after": 0.3381,
"delta": -0.0091,
"percent_delta": -0.0262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.3205,
"after": 1.3427,
"delta": 0.0222,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7874,
"after": 0.8006,
"delta": 0.0132,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3832,
"after": 0.368,
"delta": -0.0152,
"percent_delta": -0.0397,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2483,
"after": 1.2392,
"delta": -0.0091,
"percent_delta": -0.0073,
"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.2496,
"after": 0.2569,
"delta": 0.0073,
"percent_delta": 0.0292,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3832,
"after": 0.368,
"delta": -0.0152,
"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 8 (raw=7.72), rates preserved: AVG=0.257 HR/AB=0.027",
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2369,
"after": 0.0,
"delta": -0.2369,
"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.7199,
"after": 8.0,
"delta": 0.2801,
"percent_delta": 0.0363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9466,
"after": 1.0,
"delta": 0.0534,
"percent_delta": 0.0564,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.9834,
"after": 2.0,
"delta": 0.0166,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.359,
"after": 0.0,
"delta": -0.359,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2065,
"after": 0.0,
"delta": -0.2065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8006,
"after": 1.0,
"delta": 0.1994,
"percent_delta": 0.2491,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2392,
"after": 1.0,
"delta": -0.2392,
"percent_delta": -0.193,
"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": 7.7199,
"after": 8.0,
"delta": 0.2801,
"percent_delta": 0.0363,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"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": 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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.3427,
"after": 1.0,
"delta": -0.3427,
"percent_delta": -0.2552,
"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.3427,
"after": 1.0,
"delta": -0.3427,
"percent_delta": -0.2552,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2569,
"after": 0.25,
"delta": -0.0069,
"percent_delta": -0.0269,
"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.3381,
"after": 0.333,
"delta": -0.0051,
"percent_delta": -0.0151,
"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.368,
"after": 0.25,
"delta": -0.118,
"percent_delta": -0.3207,
"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.368,
"after": 0.25,
"delta": -0.118,
"percent_delta": -0.3207,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 5.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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": 5.0,
"delta": -3.0,
"percent_delta": -0.375,
"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.2569,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3381,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.368,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.2569,
"delta": 0.0069,
"percent_delta": 0.0277,
"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.3381,
"delta": 0.0051,
"percent_delta": 0.0153,
"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.368,
"delta": 0.118,
"percent_delta": 0.4719,
"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.368,
"delta": 0.118,
"percent_delta": 0.4719,
"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": 4.52,
"after": 5.0,
"delta": 0.48,
"percent_delta": 0.1062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2569,
"delta": 0.0179,
"percent_delta": 0.0749,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.566,
"after": 0.0,
"delta": -0.566,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.08,
"after": 0.0,
"delta": -1.08,
"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.339,
"after": 0.3381,
"delta": -0.0009,
"percent_delta": -0.0027,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.709,
"after": 0.0,
"delta": -0.709,
"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.389,
"after": 0.368,
"delta": -0.021,
"percent_delta": -0.054,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.829,
"after": 1.0,
"delta": 0.171,
"percent_delta": 0.2063,
"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": 4.52,
"after": 5.0,
"delta": 0.48,
"percent_delta": 0.1062,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.08,
"after": 0.0,
"delta": -1.08,
"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 | 4.520 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.566 | - |
| predicted_H | 1.080 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.709 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.389 | - |
| predicted_SO | 0.829 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.113 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.720 | 3.200 |
| predicted_AVG | 0.250 | 0.011 |
| predicted_BB | 0.940 | 0.374 |
| predicted_H | 1.970 | 0.890 |
| predicted_HBP | 0.359 | - |
| predicted_HR | 0.206 | 0.086 |
| predicted_OBP | 0.347 | 0.008 |
| predicted_R | 1.321 | 0.612 |
| predicted_RBI | 0.787 | 0.337 |
| predicted_SLG | 0.383 | -0.006 |
| predicted_SO | 1.248 | 0.419 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 7.720 | 0.000 |
| predicted_AVG | 0.257 | 0.007 |
| predicted_BB | 0.947 | 0.007 |
| predicted_H | 1.983 | 0.013 |
| predicted_HBP | 0.359 | 0.000 |
| predicted_HR | 0.206 | 0.000 |
| predicted_OBP | 0.338 | -0.009 |
| predicted_R | 1.343 | 0.022 |
| predicted_RBI | 0.801 | 0.013 |
| predicted_SLG | 0.368 | -0.015 |
| predicted_SO | 1.239 | -0.009 |
AB rounded to 8 (raw=7.72), rates preserved: AVG=0.257 HR/AB=0.027
| 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 | 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 | 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 | 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.000 |
| predicted_AB | 8.000 | 0.280 |
| predicted_AVG | 0.250 | -0.007 |
| predicted_BB | 1.000 | 0.053 |
| predicted_H | 2.000 | 0.017 |
| predicted_HR | 0.000 | -0.206 |
| predicted_OBP | 0.333 | -0.005 |
| predicted_R | 1.000 | -0.343 |
| predicted_RBI | 1.000 | 0.199 |
| predicted_SLG | 0.250 | -0.118 |
| predicted_SO | 1.000 | -0.239 |
Attached 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 | 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 | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 22.000 | 6.000 | 0.000 | 0.000 | 0.000 | 2.000 | 4.000 | 2.000 | 1.000 | 0.2727 | 0.3333 | 0.2727 | 0.2727 | 0.0000 | 0.0909 | 0.0909 | 0.0454 |
| last_10 | 0.20 | 9 | - | 41.000 | 14.000 | 3.000 | 0.000 | 0.000 | 2.000 | 7.000 | 3.000 | 2.000 | 0.3415 | 0.3864 | 0.4146 | 0.3415 | 0.0000 | 0.0488 | 0.0732 | 0.0488 |
| season | 0.60 | 60 | - | 986.000 | 236.000 | 31.000 | 0.000 | 42.000 | 119.000 | 178.000 | 142.000 | 208.000 | 0.2394 | 0.3597 | 0.3986 | 0.2394 | 0.0426 | 0.1207 | 0.1440 | 0.2109 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3790 |
| predicted_3B | 0.0010 |
| predicted_AB | 11.7470 |
| predicted_AVG | 0.2630 |
| predicted_BB | 1.4100 |
| predicted_H | 3.0900 |
| predicted_HBP | 0.3590 |
| predicted_HR | 0.3150 |
| predicted_OBP | 0.3575 |
| predicted_R | 2.0900 |
| predicted_RBI | 1.2120 |
| predicted_SLG | 0.3759 |
| predicted_SO | 1.7760 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1240 | 0.3790 | 0.2369 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.5200 | 11.7470 | 7.7199 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2630 | 0.2496 | model_form_blend |
| predicted_BB | 0.5660 | 1.4100 | 0.9397 | model_form_blend |
| predicted_H | 1.0800 | 3.0900 | 1.9700 | model_form_blend |
| predicted_HBP | - | 0.3590 | 0.3590 | form_only |
| predicted_HR | 0.1200 | 0.3150 | 0.2063 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3575 | 0.3472 | model_form_blend |
| predicted_R | 0.7090 | 2.0900 | 1.3205 | model_form_blend |
| predicted_RBI | 0.4500 | 1.2120 | 0.7874 | model_form_blend |
| predicted_SLG | 0.3890 | 0.3759 | 0.3832 | model_form_blend |
| predicted_SO | 0.8290 | 1.7760 | 1.2483 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 251 |
| Season rows before report date | 251 |
| Report year | 2026 |
| Profile rows used | 251 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 5 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.239 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 802139 |
| playerID | 802139 |
| playerName | JJ Wetherholt |
| pos | SS |
| started | True |
| startingPosition | 2B |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 16.4 |
| sl_bb_percent | 11.0 |
| sl_woba | 0.339 |
| sl_xwoba | 0.354 |
| sl_xba | 0.25 |
| sl_xslg | 0.44 |
| sl_sweet_spot_percent | 34.5 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 47.9 |
| sl_exit_velocity_avg | 90.7 |
| sl_launch_angle_avg | 16.3 |
| sl_whiff_percent | 22.0 |
| 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.247 | 0.000 | 1.000 | Hitting_2B | 0.247 | 0.000 | -0.247 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.240 | 3.000 | 7.000 | Hitting_AB | 3.928 | 5.000 | -0.928 | -2.000 |
| predicted_AVG | 0.265 | 0.000 | 0.286 | Hitting_AVG | 0.321 | 0.400 | -0.321 | -0.400 |
| predicted_BB | 0.396 | 1.000 | 1.000 | Hitting_BB | 0.396 | 0.000 | 0.604 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.064 | 0.000 | -0.064 | 0.000 |
| predicted_H | 1.120 | 0.000 | 2.000 | Hitting_H | 1.260 | 2.000 | -1.260 | -2.000 |
| predicted_HR | 0.210 | 0.000 | 0.000 | Hitting_HR | 0.302 | 1.000 | -0.302 | -1.000 |
| predicted_OBP | 0.346 | 0.250 | 0.375 | Hitting_OBP | 0.385 | 0.400 | -0.135 | -0.150 |
| predicted_R | 0.766 | 0.000 | 1.000 | Hitting_R | 0.766 | 1.000 | -0.766 | -1.000 |
| predicted_RBI | 0.800 | 0.000 | 2.000 | Hitting_RBI | 0.885 | 4.000 | -0.885 | -4.000 |
| predicted_SLG | 0.523 | 0.000 | 0.429 | Hitting_SLG | 0.614 | 1.000 | -0.614 | -1.000 |
| predicted_SO | 1.102 | 0.000 | 2.000 | Hitting_SO | 1.102 | 1.000 | -1.102 | -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_BB: 0.3960 -> 1.0000 (boost 0.6040, better) |
| Biggest Deboost | predicted_AB: 4.2400 -> 3.0000 (deboost -1.2400, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.2400 -> 6.9864 (boost 2.7464, 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.2980 -> 0.3163 (boost 0.0183, better) | - | 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_BB: 0.5061 -> 1.0000 (boost 0.4939, better) | predicted_HR: 0.4442 -> 0.0000 (deboost -0.4442, worse) | AB rounded to 7 (raw=6.99), rates preserved: AVG=0.316 HR/AB=0.064 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2217 -> 1.0000 (deboost -0.2217, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3625 -> 0.3750 (boost 0.0125, better) | predicted_SLG: 0.5849 -> 0.4290 (deboost -0.1559, 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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.4290 -> 0.5849 (boost 0.1559, better) | predicted_OBP: 0.3750 -> 0.3625 (deboost -0.0125, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691023",
"player_name": "Jordan Walker",
"position": "RF",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.247,
"predicted_3B": 0.0,
"predicted_AB": 4.24,
"predicted_AVG": 0.265,
"predicted_BB": 0.396,
"predicted_H": 1.12,
"predicted_HR": 0.21,
"predicted_OBP": 0.346,
"predicted_R": 0.766,
"predicted_RBI": 0.8,
"predicted_SLG": 0.523,
"predicted_SO": 1.102
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.5429,
"predicted_3B": 0.0004,
"predicted_AB": 6.9864,
"predicted_AVG": 0.298,
"predicted_BB": 0.5024,
"predicted_H": 2.1951,
"predicted_HBP": 0.042,
"predicted_HR": 0.4437,
"predicted_OBP": 0.3605,
"predicted_R": 1.2015,
"predicted_RBI": 1.5694,
"predicted_SLG": 0.5745,
"predicted_SO": 1.8661
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.247,
"after": 0.5429,
"delta": 0.2959,
"percent_delta": 1.198,
"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.9864,
"delta": 2.7464,
"percent_delta": 0.6477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.298,
"delta": 0.033,
"percent_delta": 0.1245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.396,
"after": 0.5024,
"delta": 0.1064,
"percent_delta": 0.2687,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.12,
"after": 2.1951,
"delta": 1.0751,
"percent_delta": 0.9599,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.21,
"after": 0.4437,
"delta": 0.2337,
"percent_delta": 1.1129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.346,
"after": 0.3605,
"delta": 0.0145,
"percent_delta": 0.0419,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.766,
"after": 1.2015,
"delta": 0.4355,
"percent_delta": 0.5685,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8,
"after": 1.5694,
"delta": 0.7694,
"percent_delta": 0.9617,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.523,
"after": 0.5745,
"delta": 0.0515,
"percent_delta": 0.0985,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.102,
"after": 1.8661,
"delta": 0.7641,
"percent_delta": 0.6934,
"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.24,
"after": 6.9864,
"delta": 2.7464,
"percent_delta": 0.6477,
"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.5429,
"predicted_3B": 0.0004,
"predicted_AB": 6.9864,
"predicted_AVG": 0.3163,
"predicted_BB": 0.5061,
"predicted_H": 2.21,
"predicted_HBP": 0.042,
"predicted_HR": 0.4442,
"predicted_OBP": 0.3625,
"predicted_R": 1.2217,
"predicted_RBI": 1.5958,
"predicted_SLG": 0.5849,
"predicted_SO": 1.8525
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5429,
"after": 0.5429,
"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.9864,
"after": 6.9864,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.298,
"after": 0.3163,
"delta": 0.0183,
"percent_delta": 0.0614,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5024,
"after": 0.5061,
"delta": 0.0037,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.1951,
"after": 2.21,
"delta": 0.0149,
"percent_delta": 0.0068,
"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.4437,
"after": 0.4442,
"delta": 0.0005,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3605,
"after": 0.3625,
"delta": 0.002,
"percent_delta": 0.0055,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.2015,
"after": 1.2217,
"delta": 0.0202,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.5694,
"after": 1.5958,
"delta": 0.0264,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5745,
"after": 0.5849,
"delta": 0.0104,
"percent_delta": 0.0181,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8661,
"after": 1.8525,
"delta": -0.0136,
"percent_delta": -0.0073,
"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.298,
"after": 0.3163,
"delta": 0.0183,
"percent_delta": 0.0614,
"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.99), rates preserved: AVG=0.316 HR/AB=0.064",
"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": 2.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5429,
"after": 1.0,
"delta": 0.4571,
"percent_delta": 0.842,
"direction": "boost",
"projection_effect": "better",
"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.9864,
"after": 7.0,
"delta": 0.0136,
"percent_delta": 0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.5061,
"after": 1.0,
"delta": 0.4939,
"percent_delta": 0.9759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.21,
"after": 2.0,
"delta": -0.21,
"percent_delta": -0.095,
"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.4442,
"after": 0.0,
"delta": -0.4442,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.5958,
"after": 2.0,
"delta": 0.4042,
"percent_delta": 0.2533,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8525,
"after": 2.0,
"delta": 0.1475,
"percent_delta": 0.0796,
"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_BB",
"before": 0.5061,
"after": 1.0,
"delta": 0.4939,
"percent_delta": 0.9759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HR",
"before": 0.4442,
"after": 0.0,
"delta": -0.4442,
"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": 2.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.2217,
"after": 1.0,
"delta": -0.2217,
"percent_delta": -0.1815,
"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": 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.2217,
"after": 1.0,
"delta": -0.2217,
"percent_delta": -0.1815,
"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": 2.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.3163,
"after": 0.286,
"delta": -0.0303,
"percent_delta": -0.0958,
"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.3625,
"after": 0.375,
"delta": 0.0125,
"percent_delta": 0.0345,
"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.5849,
"after": 0.429,
"delta": -0.1559,
"percent_delta": -0.2665,
"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.3625,
"after": 0.375,
"delta": 0.0125,
"percent_delta": 0.0345,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5849,
"after": 0.429,
"delta": -0.1559,
"percent_delta": -0.2665,
"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": 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": 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": 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": 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": 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.3163,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3625,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5849,
"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.3163,
"delta": 0.0303,
"percent_delta": 0.1061,
"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.3625,
"delta": -0.0125,
"percent_delta": -0.0333,
"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.5849,
"delta": 0.1559,
"percent_delta": 0.3634,
"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.5849,
"delta": 0.1559,
"percent_delta": 0.3634,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3625,
"delta": -0.0125,
"percent_delta": -0.0333,
"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.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": 3.0,
"delta": -1.24,
"percent_delta": -0.2925,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.3163,
"delta": 0.0513,
"percent_delta": 0.1936,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.396,
"after": 1.0,
"delta": 0.604,
"percent_delta": 1.5253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.12,
"after": 0.0,
"delta": -1.12,
"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.346,
"after": 0.3625,
"delta": 0.0165,
"percent_delta": 0.0477,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.766,
"after": 0.0,
"delta": -0.766,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8,
"after": 0.0,
"delta": -0.8,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.523,
"after": 0.5849,
"delta": 0.0619,
"percent_delta": 0.1184,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.102,
"after": 0.0,
"delta": -1.102,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 4,
"deboosted_metrics": 7,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.396,
"after": 1.0,
"delta": 0.604,
"percent_delta": 1.5253,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.24,
"after": 3.0,
"delta": -1.24,
"percent_delta": -0.2925,
"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.000 | - |
| predicted_AB | 4.240 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.396 | - |
| predicted_H | 1.120 | - |
| predicted_HR | 0.210 | - |
| predicted_OBP | 0.346 | - |
| predicted_R | 0.766 | - |
| predicted_RBI | 0.800 | - |
| predicted_SLG | 0.523 | - |
| predicted_SO | 1.102 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.543 | 0.296 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.986 | 2.746 |
| predicted_AVG | 0.298 | 0.033 |
| predicted_BB | 0.502 | 0.106 |
| predicted_H | 2.195 | 1.075 |
| predicted_HBP | 0.042 | - |
| predicted_HR | 0.444 | 0.234 |
| predicted_OBP | 0.360 | 0.015 |
| predicted_R | 1.202 | 0.435 |
| predicted_RBI | 1.569 | 0.769 |
| predicted_SLG | 0.575 | 0.051 |
| predicted_SO | 1.866 | 0.764 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.543 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.986 | 0.000 |
| predicted_AVG | 0.316 | 0.018 |
| predicted_BB | 0.506 | 0.004 |
| predicted_H | 2.210 | 0.015 |
| predicted_HBP | 0.042 | 0.000 |
| predicted_HR | 0.444 | 0.001 |
| predicted_OBP | 0.362 | 0.002 |
| predicted_R | 1.222 | 0.020 |
| predicted_RBI | 1.596 | 0.026 |
| predicted_SLG | 0.585 | 0.010 |
| predicted_SO | 1.853 | -0.014 |
AB rounded to 7 (raw=6.99), rates preserved: AVG=0.316 HR/AB=0.064
| 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 | 2.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 | 2.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.457 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.014 |
| predicted_AVG | 0.286 | -0.030 |
| predicted_BB | 1.000 | 0.494 |
| predicted_H | 2.000 | -0.210 |
| predicted_HR | 0.000 | -0.444 |
| predicted_OBP | 0.375 | 0.013 |
| predicted_R | 1.000 | -0.222 |
| predicted_RBI | 2.000 | 0.404 |
| predicted_SLG | 0.429 | -0.156 |
| predicted_SO | 2.000 | 0.147 |
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 | 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 | -2.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 | - | 24.000 | 10.000 | 4.000 | 0.000 | 2.000 | 8.000 | 3.000 | 0.000 | 5.000 | 0.4167 | 0.4167 | 0.8333 | 0.4167 | 0.0833 | 0.3333 | 0.0000 | 0.2083 |
| last_10 | 0.20 | 10 | - | 45.000 | 15.000 | 4.000 | 0.000 | 2.000 | 10.000 | 6.000 | 0.000 | 14.000 | 0.3333 | 0.3333 | 0.5556 | 0.3333 | 0.0444 | 0.2222 | 0.0000 | 0.3111 |
| season | 0.60 | 63 | - | 923.000 | 296.000 | 58.000 | 0.000 | 71.000 | 208.000 | 180.000 | 93.000 | 259.000 | 0.3207 | 0.3846 | 0.6143 | 0.3207 | 0.0769 | 0.2253 | 0.1008 | 0.2806 |
| Metric | Value |
|---|---|
| predicted_2B | 0.9170 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.4580 |
| predicted_AVG | 0.3398 |
| predicted_BB | 0.6370 |
| predicted_H | 3.5540 |
| predicted_HBP | 0.0420 |
| predicted_HR | 0.7390 |
| predicted_OBP | 0.3788 |
| predicted_R | 1.7520 |
| predicted_RBI | 2.5420 |
| predicted_SLG | 0.6396 |
| predicted_SO | 2.8320 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2470 | 0.9170 | 0.5429 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2400 | 10.4580 | 6.9864 | model_form_blend |
| predicted_AVG | 0.2650 | 0.3398 | 0.2980 | model_form_blend |
| predicted_BB | 0.3960 | 0.6370 | 0.5024 | model_form_blend |
| predicted_H | 1.1200 | 3.5540 | 2.1951 | model_form_blend |
| predicted_HBP | - | 0.0420 | 0.0420 | form_only |
| predicted_HR | 0.2100 | 0.7390 | 0.4437 | model_form_blend |
| predicted_OBP | 0.3460 | 0.3788 | 0.3605 | model_form_blend |
| predicted_R | 0.7660 | 1.7520 | 1.2015 | model_form_blend |
| predicted_RBI | 0.8000 | 2.5420 | 1.5694 | model_form_blend |
| predicted_SLG | 0.5230 | 0.6396 | 0.5745 | model_form_blend |
| predicted_SO | 1.1020 | 2.8320 | 1.8661 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.321 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 4 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 4 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 691023 |
| playerID | 691023 |
| playerName | Jordan Walker |
| pos | RF |
| started | True |
| startingPosition | DH |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.5 |
| sl_bb_percent | 7.6 |
| sl_woba | 0.4 |
| sl_xwoba | 0.373 |
| sl_xba | 0.284 |
| sl_xslg | 0.521 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 13.7 |
| sl_hard_hit_percent | 52.2 |
| sl_exit_velocity_avg | 94.6 |
| sl_launch_angle_avg | 14.0 |
| sl_whiff_percent | 31.7 |
| 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.293 | 1.000 | 1.000 | Hitting_2B | 0.293 | 0.000 | 0.707 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.400 | 3.000 | 7.000 | Hitting_AB | 4.042 | 5.000 | -1.042 | -2.000 |
| predicted_AVG | 0.258 | 0.667 | 0.286 | Hitting_AVG | 0.282 | 0.200 | 0.385 | 0.467 |
| predicted_BB | 0.397 | 0.000 | 1.000 | Hitting_BB | 0.397 | 0.000 | -0.397 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.130 | 2.000 | 2.000 | Hitting_H | 1.138 | 1.000 | 0.862 | 1.000 |
| predicted_HR | 0.220 | 0.000 | 0.000 | Hitting_HR | 0.142 | 1.000 | -0.142 | -1.000 |
| predicted_OBP | 0.354 | 0.750 | 0.375 | Hitting_OBP | 0.346 | 0.200 | 0.404 | 0.550 |
| predicted_R | 0.531 | 0.000 | 1.000 | Hitting_R | 0.531 | 1.000 | -0.531 | -1.000 |
| predicted_RBI | 0.790 | 0.000 | 1.000 | Hitting_RBI | 0.703 | 1.000 | -0.703 | -1.000 |
| predicted_SLG | 0.516 | 1.000 | 0.429 | Hitting_SLG | 0.460 | 0.800 | 0.540 | 0.200 |
| predicted_SO | 0.736 | 0.000 | 1.000 | Hitting_SO | 0.736 | 0.000 | -0.736 | 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: 1.1300 -> 2.0000 (boost 0.8700, better) |
| Biggest Deboost | predicted_AB: 4.4000 -> 3.0000 (deboost -1.4000, 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.4000 -> 7.1716 (boost 2.7716, 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.2797 -> 0.2919 (boost 0.0122, better) | predicted_OBP: 0.3628 -> 0.3572 (deboost -0.0056, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 2 | 5 | 3 | 4 | predicted_2B: 0.5463 -> 1.0000 (boost 0.4537, better) | predicted_RBI: 1.4473 -> 1.0000 (deboost -0.4473, worse) | AB rounded to 7 (raw=7.17), rates preserved: AVG=0.292 HR/AB=0.059 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.2465 -> 1.0000 (deboost -0.2465, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3572 -> 0.3750 (boost 0.0178, better) | predicted_SLG: 0.5452 -> 0.4290 (deboost -0.1162, 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: 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.4290 -> 0.5452 (boost 0.1162, better) | predicted_OBP: 0.3750 -> 0.3572 (deboost -0.0178, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676475",
"player_name": "Alec Burleson",
"position": "1B",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.293,
"predicted_3B": 0.0,
"predicted_AB": 4.4,
"predicted_AVG": 0.258,
"predicted_BB": 0.397,
"predicted_H": 1.13,
"predicted_HR": 0.22,
"predicted_OBP": 0.354,
"predicted_R": 0.531,
"predicted_RBI": 0.79,
"predicted_SLG": 0.516,
"predicted_SO": 0.736
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.5463,
"predicted_3B": 0.0004,
"predicted_AB": 7.1716,
"predicted_AVG": 0.2797,
"predicted_BB": 0.7228,
"predicted_H": 2.0795,
"predicted_HBP": 0.035,
"predicted_HR": 0.4225,
"predicted_OBP": 0.3628,
"predicted_R": 1.2259,
"predicted_RBI": 1.4234,
"predicted_SLG": 0.5438,
"predicted_SO": 1.14
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.293,
"after": 0.5463,
"delta": 0.2533,
"percent_delta": 0.8645,
"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.4,
"after": 7.1716,
"delta": 2.7716,
"percent_delta": 0.6299,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2797,
"delta": 0.0217,
"percent_delta": 0.0841,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.397,
"after": 0.7228,
"delta": 0.3258,
"percent_delta": 0.8207,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.13,
"after": 2.0795,
"delta": 0.9495,
"percent_delta": 0.8403,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.22,
"after": 0.4225,
"delta": 0.2025,
"percent_delta": 0.9205,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.354,
"after": 0.3628,
"delta": 0.0088,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.531,
"after": 1.2259,
"delta": 0.6949,
"percent_delta": 1.3087,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.79,
"after": 1.4234,
"delta": 0.6334,
"percent_delta": 0.8018,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.516,
"after": 0.5438,
"delta": 0.0278,
"percent_delta": 0.0539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.736,
"after": 1.14,
"delta": 0.404,
"percent_delta": 0.5489,
"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.4,
"after": 7.1716,
"delta": 2.7716,
"percent_delta": 0.6299,
"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.5463,
"predicted_3B": 0.0004,
"predicted_AB": 7.1716,
"predicted_AVG": 0.2919,
"predicted_BB": 0.7281,
"predicted_H": 2.0936,
"predicted_HBP": 0.035,
"predicted_HR": 0.423,
"predicted_OBP": 0.3572,
"predicted_R": 1.2465,
"predicted_RBI": 1.4473,
"predicted_SLG": 0.5452,
"predicted_SO": 1.1317
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5463,
"after": 0.5463,
"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.1716,
"after": 7.1716,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2797,
"after": 0.2919,
"delta": 0.0122,
"percent_delta": 0.0436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7228,
"after": 0.7281,
"delta": 0.0053,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0795,
"after": 2.0936,
"delta": 0.0141,
"percent_delta": 0.0068,
"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.4225,
"after": 0.423,
"delta": 0.0005,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3628,
"after": 0.3572,
"delta": -0.0056,
"percent_delta": -0.0154,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.2259,
"after": 1.2465,
"delta": 0.0206,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.4234,
"after": 1.4473,
"delta": 0.0239,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5438,
"after": 0.5452,
"delta": 0.0014,
"percent_delta": 0.0026,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.14,
"after": 1.1317,
"delta": -0.0083,
"percent_delta": -0.0073,
"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.2797,
"after": 0.2919,
"delta": 0.0122,
"percent_delta": 0.0436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3628,
"after": 0.3572,
"delta": -0.0056,
"percent_delta": -0.0154,
"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.292 HR/AB=0.059",
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.5463,
"after": 1.0,
"delta": 0.4537,
"percent_delta": 0.8305,
"direction": "boost",
"projection_effect": "better",
"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.1716,
"after": 7.0,
"delta": -0.1716,
"percent_delta": -0.0239,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7281,
"after": 1.0,
"delta": 0.2719,
"percent_delta": 0.3734,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0936,
"after": 2.0,
"delta": -0.0936,
"percent_delta": -0.0447,
"direction": "deboost",
"projection_effect": "worse",
"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.423,
"after": 0.0,
"delta": -0.423,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.4473,
"after": 1.0,
"delta": -0.4473,
"percent_delta": -0.3091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1317,
"after": 1.0,
"delta": -0.1317,
"percent_delta": -0.1164,
"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_2B",
"before": 0.5463,
"after": 1.0,
"delta": 0.4537,
"percent_delta": 0.8305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 1.4473,
"after": 1.0,
"delta": -0.4473,
"percent_delta": -0.3091,
"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": 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": 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.2465,
"after": 1.0,
"delta": -0.2465,
"percent_delta": -0.1978,
"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.2465,
"after": 1.0,
"delta": -0.2465,
"percent_delta": -0.1978,
"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": 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": 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.2919,
"after": 0.286,
"delta": -0.0059,
"percent_delta": -0.0202,
"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.3572,
"after": 0.375,
"delta": 0.0178,
"percent_delta": 0.0498,
"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.5452,
"after": 0.429,
"delta": -0.1162,
"percent_delta": -0.2131,
"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.3572,
"after": 0.375,
"delta": 0.0178,
"percent_delta": 0.0498,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.5452,
"after": 0.429,
"delta": -0.1162,
"percent_delta": -0.2131,
"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": 2.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": 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": 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": 2.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": 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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2919,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_FB": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3572,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.5452,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2919,
"delta": 0.0059,
"percent_delta": 0.0208,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 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.3572,
"delta": -0.0178,
"percent_delta": -0.0475,
"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.5452,
"delta": 0.1162,
"percent_delta": 0.2708,
"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.5452,
"delta": 0.1162,
"percent_delta": 0.2708,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3572,
"delta": -0.0178,
"percent_delta": -0.0475,
"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.293,
"after": 1.0,
"delta": 0.707,
"percent_delta": 2.413,
"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.4,
"after": 3.0,
"delta": -1.4,
"percent_delta": -0.3182,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.258,
"after": 0.2919,
"delta": 0.0339,
"percent_delta": 0.1314,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.397,
"after": 0.0,
"delta": -0.397,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.13,
"after": 2.0,
"delta": 0.87,
"percent_delta": 0.7699,
"direction": "boost",
"projection_effect": "better",
"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.354,
"after": 0.3572,
"delta": 0.0032,
"percent_delta": 0.009,
"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.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.516,
"after": 0.5452,
"delta": 0.0292,
"percent_delta": 0.0566,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.736,
"after": 0.0,
"delta": -0.736,
"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": 1.13,
"after": 2.0,
"delta": 0.87,
"percent_delta": 0.7699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.4,
"after": 3.0,
"delta": -1.4,
"percent_delta": -0.3182,
"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.293 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.400 | - |
| predicted_AVG | 0.258 | - |
| predicted_BB | 0.397 | - |
| predicted_H | 1.130 | - |
| predicted_HR | 0.220 | - |
| predicted_OBP | 0.354 | - |
| predicted_R | 0.531 | - |
| predicted_RBI | 0.790 | - |
| predicted_SLG | 0.516 | - |
| predicted_SO | 0.736 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.546 | 0.253 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.172 | 2.772 |
| predicted_AVG | 0.280 | 0.022 |
| predicted_BB | 0.723 | 0.326 |
| predicted_H | 2.079 | 0.950 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.422 | 0.202 |
| predicted_OBP | 0.363 | 0.009 |
| predicted_R | 1.226 | 0.695 |
| predicted_RBI | 1.423 | 0.633 |
| predicted_SLG | 0.544 | 0.028 |
| predicted_SO | 1.140 | 0.404 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.546 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 7.172 | 0.000 |
| predicted_AVG | 0.292 | 0.012 |
| predicted_BB | 0.728 | 0.005 |
| predicted_H | 2.094 | 0.014 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.423 | 0.001 |
| predicted_OBP | 0.357 | -0.006 |
| predicted_R | 1.246 | 0.021 |
| predicted_RBI | 1.447 | 0.024 |
| predicted_SLG | 0.545 | 0.001 |
| predicted_SO | 1.132 | -0.008 |
AB rounded to 7 (raw=7.17), rates preserved: AVG=0.292 HR/AB=0.059
| 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 | 1.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 | 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.454 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | -0.172 |
| predicted_AVG | 0.286 | -0.006 |
| predicted_BB | 1.000 | 0.272 |
| predicted_H | 2.000 | -0.094 |
| predicted_HR | 0.000 | -0.423 |
| predicted_OBP | 0.375 | 0.018 |
| predicted_R | 1.000 | -0.246 |
| predicted_RBI | 1.000 | -0.447 |
| predicted_SLG | 0.429 | -0.116 |
| predicted_SO | 1.000 | -0.132 |
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 | 3.000 | -4.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 2.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 | - | 21.000 | 7.000 | 2.000 | 0.000 | 3.000 | 5.000 | 8.000 | 3.000 | 2.000 | 0.3333 | 0.4167 | 0.8571 | 0.3333 | 0.1429 | 0.2381 | 0.1429 | 0.0952 |
| last_10 | 0.20 | 10 | - | 41.000 | 15.000 | 4.000 | 0.000 | 3.000 | 12.000 | 9.000 | 4.000 | 5.000 | 0.3659 | 0.4222 | 0.6829 | 0.3659 | 0.0732 | 0.2927 | 0.0976 | 0.1220 |
| season | 0.60 | 63 | - | 966.000 | 272.000 | 70.000 | 0.000 | 34.000 | 168.000 | 127.000 | 95.000 | 176.000 | 0.2816 | 0.3464 | 0.4596 | 0.2816 | 0.0352 | 0.1739 | 0.0983 | 0.1822 |
| Metric | Value |
|---|---|
| predicted_2B | 0.8660 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.6700 |
| predicted_AVG | 0.3072 |
| predicted_BB | 1.1340 |
| predicted_H | 3.2780 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.6780 |
| predicted_OBP | 0.3739 |
| predicted_R | 2.1030 |
| predicted_RBI | 2.2230 |
| predicted_SLG | 0.5790 |
| predicted_SO | 1.6500 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2930 | 0.8660 | 0.5463 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.4000 | 10.6700 | 7.1716 | model_form_blend |
| predicted_AVG | 0.2580 | 0.3072 | 0.2797 | model_form_blend |
| predicted_BB | 0.3970 | 1.1340 | 0.7228 | model_form_blend |
| predicted_H | 1.1300 | 3.2780 | 2.0795 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.2200 | 0.6780 | 0.4225 | model_form_blend |
| predicted_OBP | 0.3540 | 0.3739 | 0.3628 | model_form_blend |
| predicted_R | 0.5310 | 2.1030 | 1.2259 | model_form_blend |
| predicted_RBI | 0.7900 | 2.2230 | 1.4234 | model_form_blend |
| predicted_SLG | 0.5160 | 0.5790 | 0.5438 | model_form_blend |
| predicted_SO | 0.7360 | 1.6500 | 1.1400 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 4 |
| AB | 3 |
| H | 2 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 1 |
| season_avg | 0.282 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 4 |
| Hitting_battingOrder | 3 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 676475 |
| playerID | 676475 |
| playerName | Alec Burleson |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 15.4 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.364 |
| sl_xwoba | 0.385 |
| sl_xba | 0.293 |
| sl_xslg | 0.541 |
| sl_sweet_spot_percent | 34.8 |
| sl_barrel_batted_rate | 11.0 |
| sl_hard_hit_percent | 48.1 |
| sl_exit_velocity_avg | 91.5 |
| sl_launch_angle_avg | 12.3 |
| sl_whiff_percent | 21.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.177 | 1.000 | 0.000 | Hitting_2B | 0.175 | 0.000 | 0.825 | 1.000 |
| predicted_3B | 0.038 | 0.000 | 0.000 | Hitting_3B | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_AB | 3.856 | 3.000 | 7.000 | Hitting_AB | 3.820 | 4.000 | -0.820 | -1.000 |
| predicted_AVG | 0.230 | 0.333 | 0.286 | Hitting_AVG | 0.230 | 0.250 | 0.104 | 0.083 |
| predicted_BB | 0.335 | 1.000 | 1.000 | Hitting_BB | 0.341 | 1.000 | 0.659 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 0.880 | 1.000 | 2.000 | Hitting_H | 0.877 | 1.000 | 0.123 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_OBP | 0.315 | 0.500 | 0.375 | Hitting_OBP | 0.301 | 0.400 | 0.199 | 0.100 |
| predicted_R | 0.411 | 0.000 | 1.000 | Hitting_R | 0.408 | 1.000 | -0.408 | -1.000 |
| predicted_RBI | 0.520 | 0.000 | 1.000 | Hitting_RBI | 0.450 | 1.000 | -0.450 | -1.000 |
| predicted_SLG | 0.330 | 0.667 | 0.286 | Hitting_SLG | 0.318 | 0.250 | 0.349 | 0.417 |
| predicted_SO | 0.861 | 0.000 | 2.000 | Hitting_SO | 0.853 | 0.000 | -0.853 | 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_2B: 0.1770 -> 1.0000 (boost 0.8230, better) |
| Biggest Deboost | predicted_SO: 0.8610 -> 0.0000 (deboost -0.8610, 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.8560 -> 6.5444 (boost 2.6884, better) | predicted_SLG: 0.3300 -> 0.3120 (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 | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.3144 -> 0.2993 (deboost -0.0151, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_H: 1.4575 -> 2.0000 (boost 0.5425, better) | predicted_HBP: 0.2840 -> 0.0000 (deboost -0.2840, worse) | AB rounded to 7 (raw=6.54), rates preserved: AVG=0.223 HR/AB=0.013 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6877 -> 1.0000 (boost 0.3123, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2993 -> 0.3750 (boost 0.0757, better) | predicted_SLG: 0.3104 -> 0.2860 (deboost -0.0244, 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_2B: 0.0000 -> 1.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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3104 (boost 0.0244, better) | predicted_OBP: 0.3750 -> 0.2993 (deboost -0.0757, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "691026",
"player_name": "Masyn Winn",
"position": "SS",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.177,
"predicted_3B": 0.038,
"predicted_AB": 3.856,
"predicted_AVG": 0.23,
"predicted_BB": 0.335,
"predicted_H": 0.88,
"predicted_HR": 0.07,
"predicted_OBP": 0.315,
"predicted_R": 0.411,
"predicted_RBI": 0.52,
"predicted_SLG": 0.33,
"predicted_SO": 0.861
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2228,
"predicted_3B": 0.0473,
"predicted_AB": 6.5444,
"predicted_AVG": 0.2246,
"predicted_BB": 0.7101,
"predicted_H": 1.4477,
"predicted_HBP": 0.284,
"predicted_HR": 0.0854,
"predicted_OBP": 0.3144,
"predicted_R": 0.6763,
"predicted_RBI": 0.9449,
"predicted_SLG": 0.312,
"predicted_SO": 1.4842
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.177,
"after": 0.2228,
"delta": 0.0458,
"percent_delta": 0.2588,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.038,
"after": 0.0473,
"delta": 0.0093,
"percent_delta": 0.2447,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.856,
"after": 6.5444,
"delta": 2.6884,
"percent_delta": 0.6972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.2246,
"delta": -0.0054,
"percent_delta": -0.0235,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.335,
"after": 0.7101,
"delta": 0.3751,
"percent_delta": 1.1197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 1.4477,
"delta": 0.5677,
"percent_delta": 0.6451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0854,
"delta": 0.0154,
"percent_delta": 0.22,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3144,
"delta": -0.0006,
"percent_delta": -0.0019,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.411,
"after": 0.6763,
"delta": 0.2653,
"percent_delta": 0.6455,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.9449,
"delta": 0.4249,
"percent_delta": 0.8171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.312,
"delta": -0.018,
"percent_delta": -0.0545,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.861,
"after": 1.4842,
"delta": 0.6232,
"percent_delta": 0.7238,
"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.856,
"after": 6.5444,
"delta": 2.6884,
"percent_delta": 0.6972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.312,
"delta": -0.018,
"percent_delta": -0.0545,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 56
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.2228,
"predicted_3B": 0.0473,
"predicted_AB": 6.5444,
"predicted_AVG": 0.2227,
"predicted_BB": 0.7153,
"predicted_H": 1.4575,
"predicted_HBP": 0.284,
"predicted_HR": 0.0855,
"predicted_OBP": 0.2993,
"predicted_R": 0.6877,
"predicted_RBI": 0.9608,
"predicted_SLG": 0.3104,
"predicted_SO": 1.4734
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2228,
"after": 0.2228,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0473,
"after": 0.0473,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.5444,
"after": 6.5444,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2246,
"after": 0.2227,
"delta": -0.0019,
"percent_delta": -0.0085,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7101,
"after": 0.7153,
"delta": 0.0052,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4477,
"after": 1.4575,
"delta": 0.0098,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.284,
"after": 0.284,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0854,
"after": 0.0855,
"delta": 0.0001,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3144,
"after": 0.2993,
"delta": -0.0151,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6763,
"after": 0.6877,
"delta": 0.0114,
"percent_delta": 0.0169,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.9449,
"after": 0.9608,
"delta": 0.0159,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.312,
"after": 0.3104,
"delta": -0.0016,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.4842,
"after": 1.4734,
"delta": -0.0108,
"percent_delta": -0.0073,
"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.3144,
"after": 0.2993,
"delta": -0.0151,
"percent_delta": -0.048,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.54), rates preserved: AVG=0.223 HR/AB=0.013",
"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.2228,
"after": 0.0,
"delta": -0.2228,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0473,
"after": 0.0,
"delta": -0.0473,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.5444,
"after": 7.0,
"delta": 0.4556,
"percent_delta": 0.0696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7153,
"after": 1.0,
"delta": 0.2847,
"percent_delta": 0.398,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4575,
"after": 2.0,
"delta": 0.5425,
"percent_delta": 0.3722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.284,
"after": 0.0,
"delta": -0.284,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0855,
"after": 0.0,
"delta": -0.0855,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9608,
"after": 1.0,
"delta": 0.0392,
"percent_delta": 0.0408,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.4734,
"after": 2.0,
"delta": 0.5266,
"percent_delta": 0.3574,
"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.4575,
"after": 2.0,
"delta": 0.5425,
"percent_delta": 0.3722,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.284,
"after": 0.0,
"delta": -0.284,
"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.6877,
"after": 1.0,
"delta": 0.3123,
"percent_delta": 0.4541,
"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.6877,
"after": 1.0,
"delta": 0.3123,
"percent_delta": 0.4541,
"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.2227,
"after": 0.286,
"delta": 0.0633,
"percent_delta": 0.2842,
"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.2993,
"after": 0.375,
"delta": 0.0757,
"percent_delta": 0.2529,
"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.3104,
"after": 0.286,
"delta": -0.0244,
"percent_delta": -0.0786,
"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.2993,
"after": 0.375,
"delta": 0.0757,
"percent_delta": 0.2529,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3104,
"after": 0.286,
"delta": -0.0244,
"percent_delta": -0.0786,
"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": 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": 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_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": 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": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.2227,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2993,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3104,
"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": 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.2227,
"delta": -0.0633,
"percent_delta": -0.2213,
"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.2993,
"delta": -0.0757,
"percent_delta": -0.2019,
"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.3104,
"delta": 0.0244,
"percent_delta": 0.0854,
"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.3104,
"delta": 0.0244,
"percent_delta": 0.0854,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.2993,
"delta": -0.0757,
"percent_delta": -0.2019,
"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.177,
"after": 1.0,
"delta": 0.823,
"percent_delta": 4.6497,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.038,
"after": 0.0,
"delta": -0.038,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.856,
"after": 3.0,
"delta": -0.856,
"percent_delta": -0.222,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.335,
"after": 1.0,
"delta": 0.665,
"percent_delta": 1.9851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 1.0,
"delta": 0.12,
"percent_delta": 0.1364,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.2993,
"delta": -0.0157,
"percent_delta": -0.0498,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.411,
"after": 0.0,
"delta": -0.411,
"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.33,
"after": 0.3104,
"delta": -0.0196,
"percent_delta": -0.0594,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.861,
"after": 0.0,
"delta": -0.861,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 3,
"deboosted_metrics": 8,
"better_metrics": 4,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_2B",
"before": 0.177,
"after": 1.0,
"delta": 0.823,
"percent_delta": 4.6497,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.861,
"after": 0.0,
"delta": -0.861,
"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.177 | - |
| predicted_3B | 0.038 | - |
| predicted_AB | 3.856 | - |
| predicted_AVG | 0.230 | - |
| predicted_BB | 0.335 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.411 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.330 | - |
| predicted_SO | 0.861 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.223 | 0.046 |
| predicted_3B | 0.047 | 0.009 |
| predicted_AB | 6.544 | 2.688 |
| predicted_AVG | 0.225 | -0.005 |
| predicted_BB | 0.710 | 0.375 |
| predicted_H | 1.448 | 0.568 |
| predicted_HBP | 0.284 | - |
| predicted_HR | 0.085 | 0.015 |
| predicted_OBP | 0.314 | -0.001 |
| predicted_R | 0.676 | 0.265 |
| predicted_RBI | 0.945 | 0.425 |
| predicted_SLG | 0.312 | -0.018 |
| predicted_SO | 1.484 | 0.623 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.223 | 0.000 |
| predicted_3B | 0.047 | 0.000 |
| predicted_AB | 6.544 | 0.000 |
| predicted_AVG | 0.223 | -0.002 |
| predicted_BB | 0.715 | 0.005 |
| predicted_H | 1.458 | 0.010 |
| predicted_HBP | 0.284 | 0.000 |
| predicted_HR | 0.086 | 0.000 |
| predicted_OBP | 0.299 | -0.015 |
| predicted_R | 0.688 | 0.011 |
| predicted_RBI | 0.961 | 0.016 |
| predicted_SLG | 0.310 | -0.002 |
| predicted_SO | 1.473 | -0.011 |
AB rounded to 7 (raw=6.54), rates preserved: AVG=0.223 HR/AB=0.013
| 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.223 |
| predicted_3B | 0.000 | -0.047 |
| predicted_AB | 7.000 | 0.456 |
| predicted_AVG | 0.286 | 0.063 |
| predicted_BB | 1.000 | 0.285 |
| predicted_H | 2.000 | 0.542 |
| predicted_HR | 0.000 | -0.086 |
| predicted_OBP | 0.375 | 0.076 |
| predicted_R | 1.000 | 0.312 |
| predicted_RBI | 1.000 | 0.039 |
| predicted_SLG | 0.286 | -0.024 |
| predicted_SO | 2.000 | 0.527 |
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 | -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 | 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 | - | 19.000 | 3.000 | 0.000 | 0.000 | 0.000 | 4.000 | 2.000 | 4.000 | 4.000 | 0.1579 | 0.3333 | 0.1579 | 0.1579 | 0.0000 | 0.2105 | 0.2105 | 0.2105 |
| last_10 | 0.20 | 10 | - | 38.000 | 9.000 | 0.000 | 0.000 | 1.000 | 7.000 | 3.000 | 5.000 | 10.000 | 0.2368 | 0.3409 | 0.3158 | 0.2368 | 0.0263 | 0.1842 | 0.1316 | 0.2632 |
| season | 0.60 | 56 | - | 806.000 | 185.000 | 37.000 | 8.000 | 6.000 | 95.000 | 86.000 | 70.000 | 180.000 | 0.2295 | 0.2980 | 0.3176 | 0.2295 | 0.0074 | 0.1179 | 0.0868 | 0.2233 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2810 |
| predicted_3B | 0.0590 |
| predicted_AB | 9.9560 |
| predicted_AVG | 0.2177 |
| predicted_BB | 1.1860 |
| predicted_H | 2.1680 |
| predicted_HBP | 0.2840 |
| predicted_HR | 0.1050 |
| predicted_OBP | 0.3136 |
| predicted_R | 1.0130 |
| predicted_RBI | 1.4840 |
| predicted_SLG | 0.2892 |
| predicted_SO | 2.2750 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1770 | 0.2810 | 0.2228 | model_form_blend |
| predicted_3B | 0.0380 | 0.0590 | 0.0473 | model_form_blend |
| predicted_AB | 3.8560 | 9.9560 | 6.5444 | model_form_blend |
| predicted_AVG | 0.2300 | 0.2177 | 0.2246 | model_form_blend |
| predicted_BB | 0.3350 | 1.1860 | 0.7101 | model_form_blend |
| predicted_H | 0.8800 | 2.1680 | 1.4477 | model_form_blend |
| predicted_HBP | - | 0.2840 | 0.2840 | form_only |
| predicted_HR | 0.0700 | 0.1050 | 0.0854 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3136 | 0.3144 | model_form_blend |
| predicted_R | 0.4110 | 1.0130 | 0.6763 | model_form_blend |
| predicted_RBI | 0.5200 | 1.4840 | 0.9449 | model_form_blend |
| predicted_SLG | 0.3300 | 0.2892 | 0.3120 | model_form_blend |
| predicted_SO | 0.8610 | 2.2750 | 1.4842 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 211 |
| Season rows before report date | 211 |
| Report year | 2026 |
| Profile rows used | 209 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | SS |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 691026 |
| playerID | 691026 |
| playerName | Masyn Winn |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.0 |
| sl_bb_percent | 8.9 |
| sl_woba | 0.288 |
| sl_xwoba | 0.301 |
| sl_xba | 0.252 |
| sl_xslg | 0.322 |
| sl_sweet_spot_percent | 31.5 |
| sl_barrel_batted_rate | 3.0 |
| sl_hard_hit_percent | 32.7 |
| sl_exit_velocity_avg | 87.0 |
| sl_launch_angle_avg | 11.9 |
| sl_whiff_percent | 23.1 |
| 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.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 | 4.240 | 4.000 | 7.000 | Hitting_AB | 3.799 | 3.000 | 0.201 | 1.000 |
| predicted_AVG | 0.245 | 0.000 | 0.286 | Hitting_AVG | 0.260 | 0.333 | -0.260 | -0.333 |
| predicted_BB | 0.579 | 0.000 | 1.000 | Hitting_BB | 0.579 | 2.000 | -0.579 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.040 | 0.000 | 2.000 | Hitting_H | 0.988 | 1.000 | -0.988 | -1.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.110 | 0.000 | -0.110 | 0.000 |
| predicted_OBP | 0.373 | 0.000 | 0.375 | Hitting_OBP | 0.387 | 0.600 | -0.387 | -0.600 |
| predicted_R | 0.614 | 0.000 | 1.000 | Hitting_R | 0.614 | 2.000 | -0.614 | -2.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.461 | 0.000 | -0.461 | 0.000 |
| predicted_SLG | 0.390 | 0.000 | 0.286 | Hitting_SLG | 0.403 | 0.333 | -0.403 | -0.333 |
| predicted_SO | 0.815 | 0.000 | 1.000 | Hitting_SO | 0.815 | 1.000 | -0.815 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AVG: 0.2450 -> 0.2665 (boost 0.0215, better) |
| Biggest Deboost | predicted_H: 1.0400 -> 0.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 | 9 | 1 | 8 | 2 | predicted_AB: 4.2400 -> 6.9505 (boost 2.7105, better) | predicted_SLG: 0.3900 -> 0.3848 (deboost -0.0052, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2581 -> 0.2665 (boost 0.0084, better) | predicted_OBP: 0.3885 -> 0.3580 (deboost -0.0305, 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.6528 -> 1.0000 (boost 0.3472, better) | predicted_HBP: 0.9230 -> 0.0000 (deboost -0.9230, worse) | AB rounded to 7 (raw=6.95), rates preserved: AVG=0.267 HR/AB=0.020 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 1.3973 -> 1.0000 (deboost -0.3973, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2665 -> 0.2860 (boost 0.0195, better) | predicted_SLG: 0.3761 -> 0.2860 (deboost -0.0901, 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.3761 (boost 0.0901, better) | predicted_AVG: 0.2860 -> 0.2665 (deboost -0.0195, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "671056",
"player_name": "Iván Herrera",
"position": "DH",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.213,
"predicted_3B": 0.0,
"predicted_AB": 4.24,
"predicted_AVG": 0.245,
"predicted_BB": 0.579,
"predicted_H": 1.04,
"predicted_HR": 0.1,
"predicted_OBP": 0.373,
"predicted_R": 0.614,
"predicted_RBI": 0.41,
"predicted_SLG": 0.39,
"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.3476,
"predicted_3B": 0.0004,
"predicted_AB": 6.9505,
"predicted_AVG": 0.2581,
"predicted_BB": 0.9837,
"predicted_H": 1.84,
"predicted_HBP": 0.923,
"predicted_HR": 0.1376,
"predicted_OBP": 0.3885,
"predicted_R": 1.3742,
"predicted_RBI": 0.642,
"predicted_SLG": 0.3848,
"predicted_SO": 1.3454
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.213,
"after": 0.3476,
"delta": 0.1346,
"percent_delta": 0.6319,
"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.9505,
"delta": 2.7105,
"percent_delta": 0.6393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2581,
"delta": 0.0131,
"percent_delta": 0.0535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.579,
"after": 0.9837,
"delta": 0.4047,
"percent_delta": 0.699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.84,
"delta": 0.8,
"percent_delta": 0.7692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1376,
"delta": 0.0376,
"percent_delta": 0.376,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.373,
"after": 0.3885,
"delta": 0.0155,
"percent_delta": 0.0416,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.614,
"after": 1.3742,
"delta": 0.7602,
"percent_delta": 1.2381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.642,
"delta": 0.232,
"percent_delta": 0.5659,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.3848,
"delta": -0.0052,
"percent_delta": -0.0133,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.815,
"after": 1.3454,
"delta": 0.5304,
"percent_delta": 0.6508,
"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.24,
"after": 6.9505,
"delta": 2.7105,
"percent_delta": 0.6393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.3848,
"delta": -0.0052,
"percent_delta": -0.0133,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 64
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3476,
"predicted_3B": 0.0004,
"predicted_AB": 6.9505,
"predicted_AVG": 0.2665,
"predicted_BB": 0.9909,
"predicted_H": 1.8525,
"predicted_HBP": 0.923,
"predicted_HR": 0.1378,
"predicted_OBP": 0.358,
"predicted_R": 1.3973,
"predicted_RBI": 0.6528,
"predicted_SLG": 0.3761,
"predicted_SO": 1.3356
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3476,
"after": 0.3476,
"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.9505,
"after": 6.9505,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2581,
"after": 0.2665,
"delta": 0.0084,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9837,
"after": 0.9909,
"delta": 0.0072,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.84,
"after": 1.8525,
"delta": 0.0125,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.923,
"after": 0.923,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1376,
"after": 0.1378,
"delta": 0.0002,
"percent_delta": 0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3885,
"after": 0.358,
"delta": -0.0305,
"percent_delta": -0.0785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.3742,
"after": 1.3973,
"delta": 0.0231,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.642,
"after": 0.6528,
"delta": 0.0108,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3848,
"after": 0.3761,
"delta": -0.0087,
"percent_delta": -0.0226,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3454,
"after": 1.3356,
"delta": -0.0098,
"percent_delta": -0.0073,
"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.2581,
"after": 0.2665,
"delta": 0.0084,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3885,
"after": 0.358,
"delta": -0.0305,
"percent_delta": -0.0785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.95), rates preserved: AVG=0.267 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.3476,
"after": 0.0,
"delta": -0.3476,
"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.9505,
"after": 7.0,
"delta": 0.0495,
"percent_delta": 0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.9909,
"after": 1.0,
"delta": 0.0091,
"percent_delta": 0.0092,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8525,
"after": 2.0,
"delta": 0.1475,
"percent_delta": 0.0796,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.923,
"after": 0.0,
"delta": -0.923,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1378,
"after": 0.0,
"delta": -0.1378,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6528,
"after": 1.0,
"delta": 0.3472,
"percent_delta": 0.5319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3356,
"after": 1.0,
"delta": -0.3356,
"percent_delta": -0.2513,
"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.6528,
"after": 1.0,
"delta": 0.3472,
"percent_delta": 0.5319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_HBP",
"before": 0.923,
"after": 0.0,
"delta": -0.923,
"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.3973,
"after": 1.0,
"delta": -0.3973,
"percent_delta": -0.2843,
"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.3973,
"after": 1.0,
"delta": -0.3973,
"percent_delta": -0.2843,
"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.2665,
"after": 0.286,
"delta": 0.0195,
"percent_delta": 0.0732,
"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.358,
"after": 0.375,
"delta": 0.017,
"percent_delta": 0.0475,
"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.3761,
"after": 0.286,
"delta": -0.0901,
"percent_delta": -0.2396,
"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.2665,
"after": 0.286,
"delta": 0.0195,
"percent_delta": 0.0732,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3761,
"after": 0.286,
"delta": -0.0901,
"percent_delta": -0.2396,
"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.2665,
"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.358,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3761,
"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.2665,
"delta": -0.0195,
"percent_delta": -0.0681,
"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.358,
"delta": -0.017,
"percent_delta": -0.0452,
"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.3761,
"delta": 0.0901,
"percent_delta": 0.3151,
"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.3761,
"delta": 0.0901,
"percent_delta": 0.3151,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2665,
"delta": -0.0195,
"percent_delta": -0.0681,
"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": 4.24,
"after": 4.0,
"delta": -0.24,
"percent_delta": -0.0566,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2665,
"delta": 0.0215,
"percent_delta": 0.0878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"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": 1.04,
"after": 0.0,
"delta": -1.04,
"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.373,
"after": 0.358,
"delta": -0.015,
"percent_delta": -0.0402,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.614,
"after": 0.0,
"delta": -0.614,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.3761,
"delta": -0.0139,
"percent_delta": -0.0356,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.815,
"after": 0.0,
"delta": -0.815,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.245,
"after": 0.2665,
"delta": 0.0215,
"percent_delta": 0.0878,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.04,
"after": 0.0,
"delta": -1.04,
"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 | 4.240 | - |
| predicted_AVG | 0.245 | - |
| predicted_BB | 0.579 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.373 | - |
| predicted_R | 0.614 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.390 | - |
| 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.348 | 0.135 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.950 | 2.710 |
| predicted_AVG | 0.258 | 0.013 |
| predicted_BB | 0.984 | 0.405 |
| predicted_H | 1.840 | 0.800 |
| predicted_HBP | 0.923 | - |
| predicted_HR | 0.138 | 0.038 |
| predicted_OBP | 0.389 | 0.016 |
| predicted_R | 1.374 | 0.760 |
| predicted_RBI | 0.642 | 0.232 |
| predicted_SLG | 0.385 | -0.005 |
| predicted_SO | 1.345 | 0.530 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.348 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.950 | 0.000 |
| predicted_AVG | 0.267 | 0.008 |
| predicted_BB | 0.991 | 0.007 |
| predicted_H | 1.853 | 0.012 |
| predicted_HBP | 0.923 | 0.000 |
| predicted_HR | 0.138 | 0.000 |
| predicted_OBP | 0.358 | -0.031 |
| predicted_R | 1.397 | 0.023 |
| predicted_RBI | 0.653 | 0.011 |
| predicted_SLG | 0.376 | -0.009 |
| predicted_SO | 1.336 | -0.010 |
AB rounded to 7 (raw=6.95), rates preserved: AVG=0.267 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.348 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.050 |
| predicted_AVG | 0.286 | 0.019 |
| predicted_BB | 1.000 | 0.009 |
| predicted_H | 2.000 | 0.147 |
| predicted_HR | 0.000 | -0.138 |
| predicted_OBP | 0.375 | 0.017 |
| predicted_R | 1.000 | -0.397 |
| predicted_RBI | 1.000 | 0.347 |
| predicted_SLG | 0.286 | -0.090 |
| predicted_SO | 1.000 | -0.336 |
Attached 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 | - | 18.000 | 6.000 | 1.000 | 0.000 | 0.000 | 1.000 | 7.000 | 3.000 | 3.000 | 0.3333 | 0.5000 | 0.3889 | 0.3333 | 0.0000 | 0.0556 | 0.1667 | 0.1667 |
| last_10 | 0.20 | 10 | - | 38.000 | 10.000 | 1.000 | 0.000 | 0.000 | 1.000 | 10.000 | 4.000 | 6.000 | 0.2632 | 0.3913 | 0.2895 | 0.2632 | 0.0000 | 0.0263 | 0.1053 | 0.1579 |
| season | 0.60 | 64 | - | 965.000 | 251.000 | 54.000 | 0.000 | 28.000 | 117.000 | 156.000 | 147.000 | 207.000 | 0.2601 | 0.3870 | 0.4031 | 0.2601 | 0.0290 | 0.1212 | 0.1523 | 0.2145 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5170 |
| predicted_3B | 0.0010 |
| predicted_AB | 10.3620 |
| predicted_AVG | 0.2747 |
| predicted_BB | 1.4930 |
| predicted_H | 2.8470 |
| predicted_HBP | 0.9230 |
| predicted_HR | 0.1850 |
| predicted_OBP | 0.4081 |
| predicted_R | 2.3310 |
| predicted_RBI | 0.9340 |
| predicted_SLG | 0.3783 |
| predicted_SO | 2.0130 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2130 | 0.5170 | 0.3476 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.2400 | 10.3620 | 6.9505 | model_form_blend |
| predicted_AVG | 0.2450 | 0.2747 | 0.2581 | model_form_blend |
| predicted_BB | 0.5790 | 1.4930 | 0.9837 | model_form_blend |
| predicted_H | 1.0400 | 2.8470 | 1.8400 | model_form_blend |
| predicted_HBP | - | 0.9230 | 0.9230 | form_only |
| predicted_HR | 0.1000 | 0.1850 | 0.1376 | model_form_blend |
| predicted_OBP | 0.3730 | 0.4081 | 0.3885 | model_form_blend |
| predicted_R | 0.6140 | 2.3310 | 1.3742 | model_form_blend |
| predicted_RBI | 0.4100 | 0.9340 | 0.6420 | model_form_blend |
| predicted_SLG | 0.3900 | 0.3783 | 0.3848 | model_form_blend |
| predicted_SO | 0.8150 | 2.0130 | 1.3454 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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.26 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| 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 | 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 | C |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 671056 |
| playerID | 671056 |
| playerName | Iván Herrera |
| pos | DH |
| started | True |
| startingPosition | C |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 16.6 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.361 |
| sl_xwoba | 0.363 |
| sl_xba | 0.269 |
| sl_xslg | 0.415 |
| sl_sweet_spot_percent | 31.3 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 41.0 |
| sl_exit_velocity_avg | 89.5 |
| sl_launch_angle_avg | 5.8 |
| sl_whiff_percent | 20.0 |
| 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.200 | 0.000 | 0.000 | Hitting_2B | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.840 | 4.000 | 4.000 | Hitting_AB | 3.600 | 4.000 | 0.400 | 0.000 |
| predicted_AVG | 0.224 | 0.250 | 0.250 | Hitting_AVG | 0.167 | 0.000 | 0.083 | 0.250 |
| predicted_BB | 0.800 | 0.000 | 1.000 | Hitting_BB | 0.800 | 1.000 | -0.800 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.860 | 1.000 | 1.000 | Hitting_H | 0.600 | 0.000 | 0.400 | 1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.200 | 0.000 | -0.200 | 0.000 |
| predicted_OBP | 0.314 | 0.250 | 0.400 | Hitting_OBP | 0.318 | 0.200 | -0.068 | 0.050 |
| predicted_R | 0.400 | 0.000 | 0.000 | Hitting_R | 0.400 | 0.000 | -0.400 | 0.000 |
| predicted_RBI | 0.580 | 0.000 | 1.000 | Hitting_RBI | 0.800 | 0.000 | -0.800 | 0.000 |
| predicted_SLG | 0.403 | 0.250 | 0.250 | Hitting_SLG | 0.389 | 0.000 | -0.139 | 0.250 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Hitting_SO | 1.000 | 2.000 | 0.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 3.8400 -> 4.0000 (boost 0.1600, better) |
| Biggest Deboost | predicted_BB: 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 | 1 | 0 | 1 | 0 | 1 | - | predicted_BB: 0.8000 -> 0.7212 (deboost -0.0788, 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.3144 -> 0.3473 (boost 0.0329, better) | predicted_SLG: 0.4023 -> 0.3969 (deboost -0.0054, 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 | 4 | 2 | predicted_RBI: 0.6060 -> 1.0000 (boost 0.3940, better) | predicted_2B: 0.1983 -> 0.0000 (deboost -0.1983, worse) | AB rounded to 4 (raw=3.84), rates preserved: AVG=0.222 HR/AB=0.040 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4230 -> 0.0000 (deboost -0.4230, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3473 -> 0.4000 (boost 0.0527, better) | predicted_SLG: 0.3969 -> 0.2500 (deboost -0.1469, 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_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.3969 (boost 0.1469, better) | predicted_OBP: 0.4000 -> 0.3473 (deboost -0.0527, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "663457",
"player_name": "Lars Nootbaar",
"position": "LF",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.2,
"predicted_3B": 0.0,
"predicted_AB": 3.84,
"predicted_AVG": 0.224,
"predicted_BB": 0.8,
"predicted_H": 0.86,
"predicted_HR": 0.15,
"predicted_OBP": 0.314,
"predicted_R": 0.4,
"predicted_RBI": 0.58,
"predicted_SLG": 0.403,
"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.1983,
"predicted_3B": 0.0023,
"predicted_AB": 3.8158,
"predicted_AVG": 0.2215,
"predicted_BB": 0.7212,
"predicted_H": 0.8451,
"predicted_HBP": 0.02,
"predicted_HR": 0.1534,
"predicted_OBP": 0.3144,
"predicted_R": 0.416,
"predicted_RBI": 0.596,
"predicted_SLG": 0.4023,
"predicted_SO": 0.9772
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.1983,
"delta": -0.0017,
"percent_delta": -0.0085,
"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.84,
"after": 3.8158,
"delta": -0.0242,
"percent_delta": -0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.2215,
"delta": -0.0025,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8,
"after": 0.7212,
"delta": -0.0788,
"percent_delta": -0.0985,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 0.8451,
"delta": -0.0149,
"percent_delta": -0.0173,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.1534,
"delta": 0.0034,
"percent_delta": 0.0227,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3144,
"delta": 0.0004,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.4,
"after": 0.416,
"delta": 0.016,
"percent_delta": 0.04,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.58,
"after": 0.596,
"delta": 0.016,
"percent_delta": 0.0276,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.403,
"after": 0.4023,
"delta": -0.0007,
"percent_delta": -0.0017,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.9772,
"delta": -0.0228,
"percent_delta": -0.0228,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.8,
"after": 0.7212,
"delta": -0.0788,
"percent_delta": -0.0985,
"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.1983,
"predicted_3B": 0.0023,
"predicted_AB": 3.8158,
"predicted_AVG": 0.223,
"predicted_BB": 0.7265,
"predicted_H": 0.8508,
"predicted_HBP": 0.02,
"predicted_HR": 0.1536,
"predicted_OBP": 0.3473,
"predicted_R": 0.423,
"predicted_RBI": 0.606,
"predicted_SLG": 0.3969,
"predicted_SO": 0.9701
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1983,
"after": 0.1983,
"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": 3.8158,
"after": 3.8158,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2215,
"after": 0.223,
"delta": 0.0015,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.7212,
"after": 0.7265,
"delta": 0.0053,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8451,
"after": 0.8508,
"delta": 0.0057,
"percent_delta": 0.0067,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.02,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1534,
"after": 0.1536,
"delta": 0.0002,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3144,
"after": 0.3473,
"delta": 0.0329,
"percent_delta": 0.1046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.416,
"after": 0.423,
"delta": 0.007,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.596,
"after": 0.606,
"delta": 0.01,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4023,
"after": 0.3969,
"delta": -0.0054,
"percent_delta": -0.0134,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9772,
"after": 0.9701,
"delta": -0.0071,
"percent_delta": -0.0073,
"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.3144,
"after": 0.3473,
"delta": 0.0329,
"percent_delta": 0.1046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4023,
"after": 0.3969,
"delta": -0.0054,
"percent_delta": -0.0134,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.84), rates preserved: AVG=0.222 HR/AB=0.040",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1983,
"after": 0.0,
"delta": -0.1983,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 3.8158,
"after": 4.0,
"delta": 0.1842,
"percent_delta": 0.0483,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7265,
"after": 1.0,
"delta": 0.2735,
"percent_delta": 0.3765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8508,
"after": 1.0,
"delta": 0.1492,
"percent_delta": 0.1754,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.02,
"after": 0.0,
"delta": -0.02,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1536,
"after": 0.0,
"delta": -0.1536,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.606,
"after": 1.0,
"delta": 0.394,
"percent_delta": 0.6502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9701,
"after": 1.0,
"delta": 0.0299,
"percent_delta": 0.0308,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 4,
"deboosted_metrics": 2,
"better_metrics": 4,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.606,
"after": 1.0,
"delta": 0.394,
"percent_delta": 0.6502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.1983,
"after": 0.0,
"delta": -0.1983,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 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.423,
"after": 0.0,
"delta": -0.423,
"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.423,
"after": 0.0,
"delta": -0.423,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 0.0,
"predicted_RBI": 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.223,
"after": 0.25,
"delta": 0.027,
"percent_delta": 0.1211,
"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.3473,
"after": 0.4,
"delta": 0.0527,
"percent_delta": 0.1517,
"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.3969,
"after": 0.25,
"delta": -0.1469,
"percent_delta": -0.3701,
"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.3473,
"after": 0.4,
"delta": 0.0527,
"percent_delta": 0.1517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3969,
"after": 0.25,
"delta": -0.1469,
"percent_delta": -0.3701,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 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": 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_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.223,
"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.3473,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3969,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.223,
"delta": -0.027,
"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.4,
"after": 0.3473,
"delta": -0.0527,
"percent_delta": -0.1319,
"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.3969,
"delta": 0.1469,
"percent_delta": 0.5876,
"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.3969,
"delta": 0.1469,
"percent_delta": 0.5876,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3473,
"delta": -0.0527,
"percent_delta": -0.1319,
"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.84,
"after": 4.0,
"delta": 0.16,
"percent_delta": 0.0417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.223,
"delta": -0.001,
"percent_delta": -0.0045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.8,
"after": 0.0,
"delta": -0.8,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 1.0,
"delta": 0.14,
"percent_delta": 0.1628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.314,
"after": 0.3473,
"delta": 0.0333,
"percent_delta": 0.1061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4,
"after": 0.0,
"delta": -0.4,
"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.403,
"after": 0.3969,
"delta": -0.0061,
"percent_delta": -0.0151,
"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": 9,
"boosted_metrics": 3,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.84,
"after": 4.0,
"delta": 0.16,
"percent_delta": 0.0417,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"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.200 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.840 | - |
| predicted_AVG | 0.224 | - |
| predicted_BB | 0.800 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.314 | - |
| predicted_R | 0.400 | - |
| predicted_RBI | 0.580 | - |
| predicted_SLG | 0.403 | - |
| 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.198 | -0.002 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.816 | -0.024 |
| predicted_AVG | 0.222 | -0.003 |
| predicted_BB | 0.721 | -0.079 |
| predicted_H | 0.845 | -0.015 |
| predicted_HBP | 0.020 | - |
| predicted_HR | 0.153 | 0.003 |
| predicted_OBP | 0.314 | 0.000 |
| predicted_R | 0.416 | 0.016 |
| predicted_RBI | 0.596 | 0.016 |
| predicted_SLG | 0.402 | -0.001 |
| 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.198 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.816 | 0.000 |
| predicted_AVG | 0.223 | 0.002 |
| predicted_BB | 0.727 | 0.005 |
| predicted_H | 0.851 | 0.006 |
| predicted_HBP | 0.020 | 0.000 |
| predicted_HR | 0.154 | 0.000 |
| predicted_OBP | 0.347 | 0.033 |
| predicted_R | 0.423 | 0.007 |
| predicted_RBI | 0.606 | 0.010 |
| predicted_SLG | 0.397 | -0.005 |
| predicted_SO | 0.970 | -0.007 |
AB rounded to 4 (raw=3.84), rates preserved: AVG=0.222 HR/AB=0.040
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.198 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.184 |
| predicted_AVG | 0.250 | 0.027 |
| predicted_BB | 1.000 | 0.273 |
| predicted_H | 1.000 | 0.149 |
| predicted_HR | 0.000 | -0.154 |
| predicted_OBP | 0.400 | 0.053 |
| predicted_R | 0.000 | -0.423 |
| predicted_RBI | 1.000 | 0.394 |
| predicted_SLG | 0.250 | -0.147 |
| predicted_SO | 1.000 | 0.030 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 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 | 3.000 | 1.000 | 0.000 | 1.000 | 4.000 | 2.000 | 4.000 | 5.000 | 0.1667 | 0.3182 | 0.3889 | 0.1667 | 0.0556 | 0.2222 | 0.2222 | 0.2778 |
| last_10 | 0.20 | 5 | - | 18.000 | 3.000 | 1.000 | 0.000 | 1.000 | 4.000 | 2.000 | 4.000 | 5.000 | 0.1667 | 0.3182 | 0.3889 | 0.1667 | 0.0556 | 0.2222 | 0.2222 | 0.2778 |
| season | 0.60 | 5 | - | 18.000 | 3.000 | 1.000 | 0.000 | 1.000 | 4.000 | 2.000 | 4.000 | 5.000 | 0.1667 | 0.3182 | 0.3889 | 0.1667 | 0.0556 | 0.2222 | 0.2222 | 0.2778 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1940 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.7540 |
| predicted_AVG | 0.2150 |
| predicted_BB | 0.5200 |
| predicted_H | 0.8070 |
| predicted_HBP | 0.0200 |
| predicted_HR | 0.1620 |
| predicted_OBP | 0.3155 |
| predicted_R | 0.4570 |
| predicted_RBI | 0.6370 |
| predicted_SLG | 0.4004 |
| predicted_SO | 0.9190 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2000 | 0.1940 | 0.1983 | model_form_blend |
| predicted_3B | 0.0000 | 0.0080 | 0.0023 | model_form_blend |
| predicted_AB | 3.8400 | 3.7540 | 3.8158 | model_form_blend |
| predicted_AVG | 0.2240 | 0.2150 | 0.2215 | model_form_blend |
| predicted_BB | 0.8000 | 0.5200 | 0.7212 | model_form_blend |
| predicted_H | 0.8600 | 0.8070 | 0.8451 | model_form_blend |
| predicted_HBP | - | 0.0200 | 0.0200 | form_only |
| predicted_HR | 0.1500 | 0.1620 | 0.1534 | model_form_blend |
| predicted_OBP | 0.3140 | 0.3155 | 0.3144 | model_form_blend |
| predicted_R | 0.4000 | 0.4570 | 0.4160 | model_form_blend |
| predicted_RBI | 0.5800 | 0.6370 | 0.5960 | model_form_blend |
| predicted_SLG | 0.4030 | 0.4004 | 0.4023 | model_form_blend |
| predicted_SO | 1.0000 | 0.9190 | 0.9772 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.167 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 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 | RF |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 663457 |
| playerID | 663457 |
| playerName | Lars Nootbaar |
| pos | LF |
| started | True |
| startingPosition | RF |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.7 |
| sl_bb_percent | 18.2 |
| sl_woba | 0.302 |
| sl_xwoba | 0.371 |
| sl_xba | 0.232 |
| sl_xslg | 0.529 |
| sl_sweet_spot_percent | 30.8 |
| sl_barrel_batted_rate | 15.4 |
| sl_hard_hit_percent | 61.5 |
| sl_exit_velocity_avg | 95.3 |
| sl_launch_angle_avg | 9.3 |
| sl_whiff_percent | 10.7 |
| sl_swing_percent | 29.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.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.000 | 4.000 | 3.000 | Hitting_AB | 3.000 | 4.000 | 1.000 | 0.000 |
| predicted_AVG | 0.246 | 0.250 | 0.333 | Hitting_AVG | 0.167 | 0.000 | 0.083 | 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.730 | 1.000 | 1.000 | Hitting_H | 0.500 | 0.000 | 0.500 | 1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.304 | 0.250 | 0.333 | Hitting_OBP | 0.250 | 0.000 | 0.000 | 0.250 |
| predicted_R | 0.000 | 0.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 0.000 | Hitting_RBI | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_SLG | 0.364 | 0.250 | 0.333 | Hitting_SLG | 0.222 | 0.000 | 0.028 | 0.250 |
| predicted_SO | 1.167 | 0.000 | 1.000 | Hitting_SO | 1.167 | 2.000 | -1.167 | -2.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: 3.0000 -> 4.0000 (boost 1.0000, better) |
| Biggest Deboost | predicted_SO: 1.1670 -> 0.0000 (deboost -1.1670, 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.0000 -> 3.1427 (boost 0.1427, 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.3599 -> 0.3716 (boost 0.0117, better) | - | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_H: 0.7551 -> 1.0000 (boost 0.2449, better) | predicted_RBI: 0.4308 -> 0.0000 (deboost -0.4308, worse) | AB rounded to 3 (raw=3.14), rates preserved: AVG=0.240 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.0762 -> 0.0000 (deboost -0.0762, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2403 -> 0.3330 (boost 0.0927, better) | predicted_SLG: 0.3716 -> 0.3330 (deboost -0.0386, 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_AB: 3.0000 -> 4.0000 (boost 1.0000, better) | predicted_SO: 1.0000 -> 0.0000 (deboost -1.0000, better) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.3716 (boost 0.0386, better) | predicted_AVG: 0.3330 -> 0.2403 (deboost -0.0927, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "699625",
"player_name": "Jimmy Crooks",
"position": "C",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.167,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.246,
"predicted_BB": 0.333,
"predicted_H": 0.73,
"predicted_HR": 0.08,
"predicted_OBP": 0.304,
"predicted_R": 0.0,
"predicted_RBI": 0.41,
"predicted_SLG": 0.364,
"predicted_SO": 1.167
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1747,
"predicted_3B": 0.0022,
"predicted_AB": 3.1427,
"predicted_AVG": 0.2411,
"predicted_BB": 0.3363,
"predicted_H": 0.75,
"predicted_HBP": 0.019,
"predicted_HR": 0.0778,
"predicted_OBP": 0.3037,
"predicted_R": 0.0749,
"predicted_RBI": 0.4237,
"predicted_SLG": 0.3599,
"predicted_SO": 1.1286
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.167,
"after": 0.1747,
"delta": 0.0077,
"percent_delta": 0.0461,
"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.1427,
"delta": 0.1427,
"percent_delta": 0.0476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.246,
"after": 0.2411,
"delta": -0.0049,
"percent_delta": -0.0199,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.333,
"after": 0.3363,
"delta": 0.0033,
"percent_delta": 0.0099,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.73,
"after": 0.75,
"delta": 0.02,
"percent_delta": 0.0274,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0778,
"delta": -0.0022,
"percent_delta": -0.0275,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3037,
"delta": -0.0003,
"percent_delta": -0.001,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0749,
"delta": 0.0749,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.4237,
"delta": 0.0137,
"percent_delta": 0.0334,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3599,
"delta": -0.0041,
"percent_delta": -0.0113,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 1.1286,
"delta": -0.0384,
"percent_delta": -0.0329,
"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.0,
"after": 3.1427,
"delta": 0.1427,
"percent_delta": 0.0476,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 6,
"season": 6
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1747,
"predicted_3B": 0.0022,
"predicted_AB": 3.1427,
"predicted_AVG": 0.2403,
"predicted_BB": 0.3388,
"predicted_H": 0.7551,
"predicted_HBP": 0.019,
"predicted_HR": 0.0779,
"predicted_OBP": 0.3142,
"predicted_R": 0.0762,
"predicted_RBI": 0.4308,
"predicted_SLG": 0.3716,
"predicted_SO": 1.1204
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1747,
"after": 0.1747,
"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.1427,
"after": 3.1427,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2411,
"after": 0.2403,
"delta": -0.0008,
"percent_delta": -0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.3363,
"after": 0.3388,
"delta": 0.0025,
"percent_delta": 0.0074,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.75,
"after": 0.7551,
"delta": 0.0051,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.019,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0778,
"after": 0.0779,
"delta": 0.0001,
"percent_delta": 0.0013,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3037,
"after": 0.3142,
"delta": 0.0105,
"percent_delta": 0.0346,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0749,
"after": 0.0762,
"delta": 0.0013,
"percent_delta": 0.0174,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4237,
"after": 0.4308,
"delta": 0.0071,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3599,
"after": 0.3716,
"delta": 0.0117,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1286,
"after": 1.1204,
"delta": -0.0082,
"percent_delta": -0.0073,
"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.3599,
"after": 0.3716,
"delta": 0.0117,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.14), rates preserved: AVG=0.240 HR/AB=0.025",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1747,
"after": 0.0,
"delta": -0.1747,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0022,
"after": 0.0,
"delta": -0.0022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.1427,
"after": 3.0,
"delta": -0.1427,
"percent_delta": -0.0454,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3388,
"after": 0.0,
"delta": -0.3388,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7551,
"after": 1.0,
"delta": 0.2449,
"percent_delta": 0.3243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.019,
"after": 0.0,
"delta": -0.019,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0779,
"after": 0.0,
"delta": -0.0779,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4308,
"after": 0.0,
"delta": -0.4308,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.1204,
"after": 1.0,
"delta": -0.1204,
"percent_delta": -0.1075,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.7551,
"after": 1.0,
"delta": 0.2449,
"percent_delta": 0.3243,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4308,
"after": 0.0,
"delta": -0.4308,
"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.0762,
"after": 0.0,
"delta": -0.0762,
"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.0762,
"after": 0.0,
"delta": -0.0762,
"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.2403,
"after": 0.333,
"delta": 0.0927,
"percent_delta": 0.3858,
"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.3142,
"after": 0.333,
"delta": 0.0188,
"percent_delta": 0.0598,
"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.3716,
"after": 0.333,
"delta": -0.0386,
"percent_delta": -0.1039,
"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.2403,
"after": 0.333,
"delta": 0.0927,
"percent_delta": 0.3858,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3716,
"after": 0.333,
"delta": -0.0386,
"percent_delta": -0.1039,
"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": 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.2403,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3142,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3716,
"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.2403,
"delta": -0.0927,
"percent_delta": -0.2785,
"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.3142,
"delta": -0.0188,
"percent_delta": -0.0565,
"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.3716,
"delta": 0.0386,
"percent_delta": 0.116,
"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.3716,
"delta": 0.0386,
"percent_delta": 0.116,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2403,
"delta": -0.0927,
"percent_delta": -0.2785,
"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.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.2403,
"delta": -0.0057,
"percent_delta": -0.0232,
"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.73,
"after": 1.0,
"delta": 0.27,
"percent_delta": 0.3699,
"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.304,
"after": 0.3142,
"delta": 0.0102,
"percent_delta": 0.0336,
"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.41,
"after": 0.0,
"delta": -0.41,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.364,
"after": 0.3716,
"delta": 0.0076,
"percent_delta": 0.0209,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.167,
"after": 0.0,
"delta": -1.167,
"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_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.167,
"after": 0.0,
"delta": -1.167,
"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.167 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.000 | - |
| predicted_AVG | 0.246 | - |
| predicted_BB | 0.333 | - |
| predicted_H | 0.730 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.000 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.364 | - |
| predicted_SO | 1.167 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | 0.008 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.143 | 0.143 |
| predicted_AVG | 0.241 | -0.005 |
| predicted_BB | 0.336 | 0.003 |
| predicted_H | 0.750 | 0.020 |
| predicted_HBP | 0.019 | - |
| predicted_HR | 0.078 | -0.002 |
| predicted_OBP | 0.304 | -0.000 |
| predicted_R | 0.075 | 0.075 |
| predicted_RBI | 0.424 | 0.014 |
| predicted_SLG | 0.360 | -0.004 |
| predicted_SO | 1.129 | -0.038 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.175 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.143 | 0.000 |
| predicted_AVG | 0.240 | -0.001 |
| predicted_BB | 0.339 | 0.003 |
| predicted_H | 0.755 | 0.005 |
| predicted_HBP | 0.019 | 0.000 |
| predicted_HR | 0.078 | 0.000 |
| predicted_OBP | 0.314 | 0.010 |
| predicted_R | 0.076 | 0.001 |
| predicted_RBI | 0.431 | 0.007 |
| predicted_SLG | 0.372 | 0.012 |
| predicted_SO | 1.120 | -0.008 |
AB rounded to 3 (raw=3.14), rates preserved: AVG=0.240 HR/AB=0.025
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.175 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.143 |
| predicted_AVG | 0.333 | 0.093 |
| predicted_BB | 0.000 | -0.339 |
| predicted_H | 1.000 | 0.245 |
| predicted_HR | 0.000 | -0.078 |
| predicted_OBP | 0.333 | 0.019 |
| predicted_R | 0.000 | -0.076 |
| predicted_RBI | 0.000 | -0.431 |
| predicted_SLG | 0.333 | -0.039 |
| predicted_SO | 1.000 | -0.120 |
Attached 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 | 5 | - | 15.000 | 3.000 | 1.000 | 0.000 | 0.000 | 2.000 | 0.000 | 2.000 | 6.000 | 0.2000 | 0.2941 | 0.2667 | 0.2000 | 0.0000 | 0.1333 | 0.1333 | 0.4000 |
| last_10 | 0.20 | 6 | - | 18.000 | 3.000 | 1.000 | 0.000 | 0.000 | 2.000 | 0.000 | 2.000 | 7.000 | 0.1667 | 0.2500 | 0.2222 | 0.1667 | 0.0000 | 0.1111 | 0.1111 | 0.3889 |
| season | 0.60 | 6 | - | 18.000 | 3.000 | 1.000 | 0.000 | 0.000 | 2.000 | 0.000 | 2.000 | 7.000 | 0.1667 | 0.2500 | 0.2222 | 0.1667 | 0.0000 | 0.1111 | 0.1111 | 0.3889 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1950 |
| predicted_3B | 0.0080 |
| predicted_AB | 3.5200 |
| predicted_AVG | 0.2280 |
| predicted_BB | 0.3450 |
| predicted_H | 0.8030 |
| predicted_HBP | 0.0190 |
| predicted_HR | 0.0720 |
| predicted_OBP | 0.3028 |
| predicted_R | 0.2730 |
| predicted_RBI | 0.4600 |
| predicted_SLG | 0.3490 |
| predicted_SO | 1.0270 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1670 | 0.1950 | 0.1747 | model_form_blend |
| predicted_3B | 0.0000 | 0.0080 | 0.0022 | model_form_blend |
| predicted_AB | 3.0000 | 3.5200 | 3.1427 | model_form_blend |
| predicted_AVG | 0.2460 | 0.2280 | 0.2411 | model_form_blend |
| predicted_BB | 0.3330 | 0.3450 | 0.3363 | model_form_blend |
| predicted_H | 0.7300 | 0.8030 | 0.7500 | model_form_blend |
| predicted_HBP | - | 0.0190 | 0.0190 | form_only |
| predicted_HR | 0.0800 | 0.0720 | 0.0778 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3028 | 0.3037 | model_form_blend |
| predicted_R | 0.0000 | 0.2730 | 0.0749 | model_form_blend |
| predicted_RBI | 0.4100 | 0.4600 | 0.4237 | model_form_blend |
| predicted_SLG | 0.3640 | 0.3490 | 0.3599 | model_form_blend |
| predicted_SO | 1.1670 | 1.0270 | 1.1286 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 6 |
| Season rows before report date | 6 |
| Report year | 2026 |
| Profile rows used | 6 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 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.167 |
| 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 | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260609_STL@NYM |
| game_type | full |
| mlbID | 699625 |
| playerID | 699625 |
| playerName | Jimmy Crooks |
| pos | C |
| started | True |
| startingPosition | C |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-09 |
| sl_k_percent | 35.0 |
| sl_bb_percent | 10.0 |
| sl_woba | 0.223 |
| sl_xwoba | 0.328 |
| sl_xba | 0.268 |
| sl_xslg | 0.397 |
| sl_sweet_spot_percent | 45.5 |
| sl_barrel_batted_rate | 9.1 |
| sl_hard_hit_percent | 36.4 |
| sl_exit_velocity_avg | 88.4 |
| sl_launch_angle_avg | 9.0 |
| sl_whiff_percent | 31.4 |
| sl_swing_percent | 43.2 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.162 | 1.000 | 0.000 | Hitting_2B | 0.158 | 0.000 | 0.842 | 1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.747 | 4.000 | 7.000 | Hitting_AB | 3.652 | 4.000 | 0.348 | 0.000 |
| predicted_AVG | 0.247 | 0.250 | 0.286 | Hitting_AVG | 0.255 | 0.000 | -0.005 | 0.250 |
| predicted_BB | 0.156 | 0.000 | 0.000 | Hitting_BB | 0.152 | 0.000 | -0.152 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.051 | 0.000 | -0.051 | 0.000 |
| predicted_H | 0.730 | 1.000 | 2.000 | Hitting_H | 0.930 | 0.000 | 0.070 | 1.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | -0.127 | 0.000 |
| predicted_OBP | 0.288 | 0.250 | 0.286 | Hitting_OBP | 0.285 | 0.000 | -0.035 | 0.250 |
| predicted_R | 0.461 | 1.000 | 1.000 | Hitting_R | 0.449 | 1.000 | 0.551 | 0.000 |
| predicted_RBI | 0.300 | 1.000 | 1.000 | Hitting_RBI | 0.449 | 0.000 | 0.551 | 1.000 |
| predicted_SLG | 0.376 | 0.500 | 0.286 | Hitting_SLG | 0.402 | 0.000 | 0.098 | 0.500 |
| predicted_SO | 0.792 | 2.000 | 2.000 | Hitting_SO | 0.772 | 1.000 | 1.228 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | boosted |
| Changed Metrics | 10 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 4 |
| Better Metrics | 5 |
| Worse Metrics | 5 |
| Biggest Boost | predicted_SO: 0.7920 -> 2.0000 (boost 1.2080, worse) |
| Biggest Deboost | predicted_BB: 0.1560 -> 0.0000 (deboost -0.1560, 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.7470 -> 6.9578 (boost 3.2108, 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.3795 -> 0.3609 (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 | 6 | 3 | 3 | 2 | 4 | predicted_SO: 1.5064 -> 2.0000 (boost 0.4936, worse) | predicted_2B: 0.3047 -> 0.0000 (deboost -0.3047, worse) | AB rounded to 7 (raw=6.96), rates preserved: AVG=0.242 HR/AB=0.025 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8334 -> 1.0000 (boost 0.1666, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2422 -> 0.2860 (boost 0.0438, better) | predicted_SLG: 0.3609 -> 0.2860 (deboost -0.0749, 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: 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.3609 (boost 0.0749, better) | predicted_AVG: 0.2860 -> 0.2422 (deboost -0.0438, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701675",
"player_name": "Nathan Church",
"position": "CF",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.162,
"predicted_3B": 0.0,
"predicted_AB": 3.747,
"predicted_AVG": 0.247,
"predicted_BB": 0.156,
"predicted_H": 0.73,
"predicted_HR": 0.08,
"predicted_OBP": 0.288,
"predicted_R": 0.461,
"predicted_RBI": 0.3,
"predicted_SLG": 0.376,
"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.3047,
"predicted_3B": 0.0009,
"predicted_AB": 6.9578,
"predicted_AVG": 0.2529,
"predicted_BB": 0.2494,
"predicted_H": 1.6741,
"predicted_HBP": 0.032,
"predicted_HR": 0.1729,
"predicted_OBP": 0.2866,
"predicted_R": 0.8196,
"predicted_RBI": 0.6193,
"predicted_SLG": 0.3795,
"predicted_SO": 1.5175
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.162,
"after": 0.3047,
"delta": 0.1427,
"percent_delta": 0.8809,
"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.747,
"after": 6.9578,
"delta": 3.2108,
"percent_delta": 0.8569,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2529,
"delta": 0.0059,
"percent_delta": 0.0239,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.156,
"after": 0.2494,
"delta": 0.0934,
"percent_delta": 0.5987,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.73,
"after": 1.6741,
"delta": 0.9441,
"percent_delta": 1.2933,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.1729,
"delta": 0.0929,
"percent_delta": 1.1612,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2866,
"delta": -0.0014,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 0.8196,
"delta": 0.3586,
"percent_delta": 0.7779,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 0.6193,
"delta": 0.3193,
"percent_delta": 1.0643,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.376,
"after": 0.3795,
"delta": 0.0035,
"percent_delta": 0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.792,
"after": 1.5175,
"delta": 0.7255,
"percent_delta": 0.916,
"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.747,
"after": 6.9578,
"delta": 3.2108,
"percent_delta": 0.8569,
"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": 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.3047,
"predicted_3B": 0.0009,
"predicted_AB": 6.9578,
"predicted_AVG": 0.2422,
"predicted_BB": 0.2512,
"predicted_H": 1.6855,
"predicted_HBP": 0.032,
"predicted_HR": 0.1731,
"predicted_OBP": 0.2687,
"predicted_R": 0.8334,
"predicted_RBI": 0.6297,
"predicted_SLG": 0.3609,
"predicted_SO": 1.5064
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3047,
"after": 0.3047,
"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.9578,
"after": 6.9578,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2529,
"after": 0.2422,
"delta": -0.0107,
"percent_delta": -0.0423,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2494,
"after": 0.2512,
"delta": 0.0018,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6741,
"after": 1.6855,
"delta": 0.0114,
"percent_delta": 0.0068,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.032,
"after": 0.032,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1729,
"after": 0.1731,
"delta": 0.0002,
"percent_delta": 0.0012,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2866,
"after": 0.2687,
"delta": -0.0179,
"percent_delta": -0.0625,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8196,
"after": 0.8334,
"delta": 0.0138,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6193,
"after": 0.6297,
"delta": 0.0104,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3795,
"after": 0.3609,
"delta": -0.0186,
"percent_delta": -0.049,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5175,
"after": 1.5064,
"delta": -0.0111,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3795,
"after": 0.3609,
"delta": -0.0186,
"percent_delta": -0.049,
"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.242 HR/AB=0.025",
"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.3047,
"after": 0.0,
"delta": -0.3047,
"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.9578,
"after": 7.0,
"delta": 0.0422,
"percent_delta": 0.0061,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.2512,
"after": 0.0,
"delta": -0.2512,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6855,
"after": 2.0,
"delta": 0.3145,
"percent_delta": 0.1866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1731,
"after": 0.0,
"delta": -0.1731,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6297,
"after": 1.0,
"delta": 0.3703,
"percent_delta": 0.5881,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5064,
"after": 2.0,
"delta": 0.4936,
"percent_delta": 0.3277,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 6,
"boosted_metrics": 3,
"deboosted_metrics": 3,
"better_metrics": 2,
"worse_metrics": 4,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.5064,
"after": 2.0,
"delta": 0.4936,
"percent_delta": 0.3277,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3047,
"after": 0.0,
"delta": -0.3047,
"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.8334,
"after": 1.0,
"delta": 0.1666,
"percent_delta": 0.1999,
"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.8334,
"after": 1.0,
"delta": 0.1666,
"percent_delta": 0.1999,
"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.2422,
"after": 0.286,
"delta": 0.0438,
"percent_delta": 0.1808,
"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.2687,
"after": 0.286,
"delta": 0.0173,
"percent_delta": 0.0644,
"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.3609,
"after": 0.286,
"delta": -0.0749,
"percent_delta": -0.2075,
"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.2422,
"after": 0.286,
"delta": 0.0438,
"percent_delta": 0.1808,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3609,
"after": 0.286,
"delta": -0.0749,
"percent_delta": -0.2075,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 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": 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_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.2422,
"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.2687,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3609,
"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.286,
"after": 0.2422,
"delta": -0.0438,
"percent_delta": -0.153,
"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.2687,
"delta": -0.0173,
"percent_delta": -0.0607,
"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.3609,
"delta": 0.0749,
"percent_delta": 0.262,
"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.3609,
"delta": 0.0749,
"percent_delta": 0.262,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2422,
"delta": -0.0438,
"percent_delta": -0.153,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.162,
"after": 1.0,
"delta": 0.838,
"percent_delta": 5.1728,
"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.747,
"after": 4.0,
"delta": 0.253,
"percent_delta": 0.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2422,
"delta": -0.0048,
"percent_delta": -0.0194,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.156,
"after": 0.0,
"delta": -0.156,
"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.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2687,
"delta": -0.0193,
"percent_delta": -0.067,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.461,
"after": 1.0,
"delta": 0.539,
"percent_delta": 1.1692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3,
"after": 1.0,
"delta": 0.7,
"percent_delta": 2.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.376,
"after": 0.3609,
"delta": -0.0151,
"percent_delta": -0.0402,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.792,
"after": 2.0,
"delta": 1.208,
"percent_delta": 1.5253,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 6,
"deboosted_metrics": 4,
"better_metrics": 5,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.792,
"after": 2.0,
"delta": 1.208,
"percent_delta": 1.5253,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.156,
"after": 0.0,
"delta": -0.156,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "boosted"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.162 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.747 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.156 | - |
| predicted_H | 0.730 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.461 | - |
| predicted_RBI | 0.300 | - |
| predicted_SLG | 0.376 | - |
| 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.305 | 0.143 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 6.958 | 3.211 |
| predicted_AVG | 0.253 | 0.006 |
| predicted_BB | 0.249 | 0.093 |
| predicted_H | 1.674 | 0.944 |
| predicted_HBP | 0.032 | - |
| predicted_HR | 0.173 | 0.093 |
| predicted_OBP | 0.287 | -0.001 |
| predicted_R | 0.820 | 0.359 |
| predicted_RBI | 0.619 | 0.319 |
| predicted_SLG | 0.380 | 0.004 |
| predicted_SO | 1.518 | 0.726 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.305 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 6.958 | 0.000 |
| predicted_AVG | 0.242 | -0.011 |
| predicted_BB | 0.251 | 0.002 |
| predicted_H | 1.685 | 0.011 |
| predicted_HBP | 0.032 | 0.000 |
| predicted_HR | 0.173 | 0.000 |
| predicted_OBP | 0.269 | -0.018 |
| predicted_R | 0.833 | 0.014 |
| predicted_RBI | 0.630 | 0.010 |
| predicted_SLG | 0.361 | -0.019 |
| predicted_SO | 1.506 | -0.011 |
AB rounded to 7 (raw=6.96), rates preserved: AVG=0.242 HR/AB=0.025
| 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.305 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 7.000 | 0.042 |
| predicted_AVG | 0.286 | 0.044 |
| predicted_BB | 0.000 | -0.251 |
| predicted_H | 2.000 | 0.315 |
| predicted_HR | 0.000 | -0.173 |
| predicted_OBP | 0.286 | 0.017 |
| predicted_R | 1.000 | 0.167 |
| predicted_RBI | 1.000 | 0.370 |
| predicted_SLG | 0.286 | -0.075 |
| predicted_SO | 2.000 | 0.494 |
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 | 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 | 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 | 4 | - | 20.000 | 6.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.000 | 5.000 | 0.3000 | 0.3000 | 0.3500 | 0.3000 | 0.0000 | 0.0000 | 0.0000 | 0.2500 |
| last_10 | 0.20 | 5 | - | 40.000 | 8.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 0.000 | 10.000 | 0.2000 | 0.2000 | 0.2250 | 0.2000 | 0.0000 | 0.0000 | 0.0000 | 0.2500 |
| season | 0.60 | 43 | - | 577.000 | 147.000 | 25.000 | 0.000 | 20.000 | 70.000 | 71.000 | 24.000 | 122.000 | 0.2548 | 0.2845 | 0.4021 | 0.2548 | 0.0347 | 0.1213 | 0.0416 | 0.2114 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4890 |
| predicted_3B | 0.0020 |
| predicted_AB | 11.1070 |
| predicted_AVG | 0.2606 |
| predicted_BB | 0.3700 |
| predicted_H | 2.8940 |
| predicted_HBP | 0.0320 |
| predicted_HR | 0.2930 |
| predicted_OBP | 0.2848 |
| predicted_R | 1.2830 |
| predicted_RBI | 1.0320 |
| predicted_SLG | 0.3840 |
| predicted_SO | 2.4550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1620 | 0.4890 | 0.3047 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.7470 | 11.1070 | 6.9578 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2606 | 0.2529 | model_form_blend |
| predicted_BB | 0.1560 | 0.3700 | 0.2494 | model_form_blend |
| predicted_H | 0.7300 | 2.8940 | 1.6741 | model_form_blend |
| predicted_HBP | - | 0.0320 | 0.0320 | form_only |
| predicted_HR | 0.0800 | 0.2930 | 0.1729 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2848 | 0.2866 | model_form_blend |
| predicted_R | 0.4610 | 1.2830 | 0.8196 | model_form_blend |
| predicted_RBI | 0.3000 | 1.0320 | 0.6193 | model_form_blend |
| predicted_SLG | 0.3760 | 0.3840 | 0.3795 | model_form_blend |
| predicted_SO | 0.7920 | 2.4550 | 1.5175 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 158 |
| Season rows before report date | 158 |
| Report year | 2026 |
| Profile rows used | 154 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 1 |
| 2B | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 2 |
| 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.0 |
| Hitting_BB | 0 |
| 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 | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | CF |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 701675 |
| playerID | 701675 |
| playerName | Nathan Church |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.7 |
| sl_bb_percent | 3.7 |
| sl_woba | 0.3 |
| sl_xwoba | 0.292 |
| sl_xba | 0.245 |
| sl_xslg | 0.395 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 9.0 |
| sl_hard_hit_percent | 32.8 |
| sl_exit_velocity_avg | 85.8 |
| sl_launch_angle_avg | 10.1 |
| sl_whiff_percent | 22.9 |
| sl_swing_percent | 57.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.077 | 0.000 | 0.000 | Hitting_2B | 0.077 | 0.000 | -0.077 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.618 | 3.000 | 6.000 | Hitting_AB | 3.618 | 2.000 | -0.618 | 1.000 |
| predicted_AVG | 0.211 | 0.000 | 0.167 | Hitting_AVG | 0.226 | 0.000 | -0.226 | 0.000 |
| predicted_BB | 0.420 | 1.000 | 1.000 | Hitting_BB | 0.420 | 2.000 | 0.580 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.019 | 0.000 | -0.019 | 0.000 |
| predicted_H | 0.640 | 0.000 | 1.000 | Hitting_H | 0.816 | 0.000 | -0.816 | 0.000 |
| predicted_HR | 0.120 | 0.000 | 0.000 | Hitting_HR | 0.121 | 0.000 | -0.121 | 0.000 |
| predicted_OBP | 0.268 | 0.250 | 0.286 | Hitting_OBP | 0.302 | 0.500 | -0.052 | -0.250 |
| predicted_R | 0.357 | 0.000 | 1.000 | Hitting_R | 0.357 | 1.000 | -0.357 | -1.000 |
| predicted_RBI | 0.350 | 0.000 | 1.000 | Hitting_RBI | 0.531 | 0.000 | -0.531 | 0.000 |
| predicted_SLG | 0.337 | 0.000 | 0.167 | Hitting_SLG | 0.347 | 0.000 | -0.347 | 0.000 |
| predicted_SO | 1.227 | 0.000 | 2.000 | Hitting_SO | 1.227 | 2.000 | -1.227 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_BB: 0.4200 -> 1.0000 (boost 0.5800, better) |
| Biggest Deboost | predicted_SO: 1.2270 -> 0.0000 (deboost -1.2270, 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.6180 -> 5.7350 (boost 2.1170, better) | predicted_AVG: 0.2110 -> 0.1918 (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 | 2 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.1918 -> 0.1719 (deboost -0.0199, 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_HR: 0.2211 -> 0.0000 (deboost -0.2211, worse) | AB rounded to 6 (raw=5.74), rates preserved: AVG=0.172 HR/AB=0.039 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.5939 -> 1.0000 (boost 0.4061, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.2599 -> 0.2860 (boost 0.0261, better) | predicted_SLG: 0.3043 -> 0.1670 (deboost -0.1373, 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 | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.1670 -> 0.3043 (boost 0.1373, better) | predicted_OBP: 0.2860 -> 0.2599 (deboost -0.0261, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669357",
"player_name": "Nolan Gorman",
"position": "3B",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.077,
"predicted_3B": 0.0,
"predicted_AB": 3.618,
"predicted_AVG": 0.211,
"predicted_BB": 0.42,
"predicted_H": 0.64,
"predicted_HR": 0.12,
"predicted_OBP": 0.268,
"predicted_R": 0.357,
"predicted_RBI": 0.35,
"predicted_SLG": 0.337,
"predicted_SO": 1.227
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.095,
"predicted_3B": 0.0004,
"predicted_AB": 5.735,
"predicted_AVG": 0.1918,
"predicted_BB": 0.6765,
"predicted_H": 0.9793,
"predicted_HBP": 0.003,
"predicted_HR": 0.2208,
"predicted_OBP": 0.2618,
"predicted_R": 0.5841,
"predicted_RBI": 0.6061,
"predicted_SLG": 0.3234,
"predicted_SO": 2.1757
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.077,
"after": 0.095,
"delta": 0.018,
"percent_delta": 0.2338,
"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.618,
"after": 5.735,
"delta": 2.117,
"percent_delta": 0.5851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.211,
"after": 0.1918,
"delta": -0.0192,
"percent_delta": -0.091,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.42,
"after": 0.6765,
"delta": 0.2565,
"percent_delta": 0.6107,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.64,
"after": 0.9793,
"delta": 0.3393,
"percent_delta": 0.5302,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.12,
"after": 0.2208,
"delta": 0.1008,
"percent_delta": 0.84,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.268,
"after": 0.2618,
"delta": -0.0062,
"percent_delta": -0.0231,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.357,
"after": 0.5841,
"delta": 0.2271,
"percent_delta": 0.6361,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.6061,
"delta": 0.2561,
"percent_delta": 0.7317,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.337,
"after": 0.3234,
"delta": -0.0136,
"percent_delta": -0.0404,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.227,
"after": 2.1757,
"delta": 0.9487,
"percent_delta": 0.7732,
"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.618,
"after": 5.735,
"delta": 2.117,
"percent_delta": 0.5851,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.211,
"after": 0.1918,
"delta": -0.0192,
"percent_delta": -0.091,
"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.095,
"predicted_3B": 0.0004,
"predicted_AB": 5.735,
"predicted_AVG": 0.1719,
"predicted_BB": 0.6814,
"predicted_H": 0.986,
"predicted_HBP": 0.003,
"predicted_HR": 0.2211,
"predicted_OBP": 0.2599,
"predicted_R": 0.5939,
"predicted_RBI": 0.6163,
"predicted_SLG": 0.3043,
"predicted_SO": 2.1598
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.095,
"after": 0.095,
"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.735,
"after": 5.735,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1918,
"after": 0.1719,
"delta": -0.0199,
"percent_delta": -0.1038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6765,
"after": 0.6814,
"delta": 0.0049,
"percent_delta": 0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9793,
"after": 0.986,
"delta": 0.0067,
"percent_delta": 0.0068,
"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.2208,
"after": 0.2211,
"delta": 0.0003,
"percent_delta": 0.0014,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2618,
"after": 0.2599,
"delta": -0.0019,
"percent_delta": -0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.5841,
"after": 0.5939,
"delta": 0.0098,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6061,
"after": 0.6163,
"delta": 0.0102,
"percent_delta": 0.0168,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3234,
"after": 0.3043,
"delta": -0.0191,
"percent_delta": -0.0591,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 2.1757,
"after": 2.1598,
"delta": -0.0159,
"percent_delta": -0.0073,
"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.1918,
"after": 0.1719,
"delta": -0.0199,
"percent_delta": -0.1038,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.74), rates preserved: AVG=0.172 HR/AB=0.039",
"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.095,
"after": 0.0,
"delta": -0.095,
"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.735,
"after": 6.0,
"delta": 0.265,
"percent_delta": 0.0462,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6814,
"after": 1.0,
"delta": 0.3186,
"percent_delta": 0.4676,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.986,
"after": 1.0,
"delta": 0.014,
"percent_delta": 0.0142,
"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.2211,
"after": 0.0,
"delta": -0.2211,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 2.1598,
"after": 2.0,
"delta": -0.1598,
"percent_delta": -0.074,
"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_HR",
"before": 0.2211,
"after": 0.0,
"delta": -0.2211,
"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.5939,
"after": 1.0,
"delta": 0.4061,
"percent_delta": 0.6838,
"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.5939,
"after": 1.0,
"delta": 0.4061,
"percent_delta": 0.6838,
"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.1719,
"after": 0.167,
"delta": -0.0049,
"percent_delta": -0.0285,
"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.2599,
"after": 0.286,
"delta": 0.0261,
"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.3043,
"after": 0.167,
"delta": -0.1373,
"percent_delta": -0.4512,
"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.2599,
"after": 0.286,
"delta": 0.0261,
"percent_delta": 0.1004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3043,
"after": 0.167,
"delta": -0.1373,
"percent_delta": -0.4512,
"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": 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": 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.1719,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2599,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3043,
"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.1719,
"delta": 0.0049,
"percent_delta": 0.0295,
"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": 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.2599,
"delta": -0.0261,
"percent_delta": -0.0914,
"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.3043,
"delta": 0.1373,
"percent_delta": 0.8219,
"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.3043,
"delta": 0.1373,
"percent_delta": 0.8219,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2599,
"delta": -0.0261,
"percent_delta": -0.0914,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.077,
"after": 0.0,
"delta": -0.077,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.618,
"after": 3.0,
"delta": -0.618,
"percent_delta": -0.1708,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.211,
"after": 0.1719,
"delta": -0.0391,
"percent_delta": -0.1853,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.42,
"after": 1.0,
"delta": 0.58,
"percent_delta": 1.381,
"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.12,
"after": 0.0,
"delta": -0.12,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.268,
"after": 0.2599,
"delta": -0.0081,
"percent_delta": -0.0302,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.357,
"after": 0.0,
"delta": -0.357,
"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.337,
"after": 0.3043,
"delta": -0.0327,
"percent_delta": -0.097,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.227,
"after": 0.0,
"delta": -1.227,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 2,
"worse_metrics": 9,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.42,
"after": 1.0,
"delta": 0.58,
"percent_delta": 1.381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.227,
"after": 0.0,
"delta": -1.227,
"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.077 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.618 | - |
| predicted_AVG | 0.211 | - |
| predicted_BB | 0.420 | - |
| predicted_H | 0.640 | - |
| predicted_HR | 0.120 | - |
| predicted_OBP | 0.268 | - |
| predicted_R | 0.357 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.337 | - |
| predicted_SO | 1.227 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.018 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.735 | 2.117 |
| predicted_AVG | 0.192 | -0.019 |
| predicted_BB | 0.676 | 0.257 |
| predicted_H | 0.979 | 0.339 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.221 | 0.101 |
| predicted_OBP | 0.262 | -0.006 |
| predicted_R | 0.584 | 0.227 |
| predicted_RBI | 0.606 | 0.256 |
| predicted_SLG | 0.323 | -0.014 |
| predicted_SO | 2.176 | 0.949 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 5.735 | 0.000 |
| predicted_AVG | 0.172 | -0.020 |
| predicted_BB | 0.681 | 0.005 |
| predicted_H | 0.986 | 0.007 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.221 | 0.000 |
| predicted_OBP | 0.260 | -0.002 |
| predicted_R | 0.594 | 0.010 |
| predicted_RBI | 0.616 | 0.010 |
| predicted_SLG | 0.304 | -0.019 |
| predicted_SO | 2.160 | -0.016 |
AB rounded to 6 (raw=5.74), rates preserved: AVG=0.172 HR/AB=0.039
| 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.095 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.265 |
| predicted_AVG | 0.167 | -0.005 |
| predicted_BB | 1.000 | 0.319 |
| predicted_H | 1.000 | 0.014 |
| predicted_HR | 0.000 | -0.221 |
| predicted_OBP | 0.286 | 0.026 |
| predicted_R | 1.000 | 0.406 |
| predicted_RBI | 1.000 | 0.384 |
| predicted_SLG | 0.167 | -0.137 |
| predicted_SO | 2.000 | -0.160 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -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 | 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 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 2.000 | 6.000 | 0.0714 | 0.1875 | 0.2857 | 0.0714 | 0.0714 | 0.0714 | 0.1429 | 0.4286 |
| last_10 | 0.20 | 10 | - | 27.000 | 2.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 3.000 | 16.000 | 0.0741 | 0.1667 | 0.1852 | 0.0741 | 0.0370 | 0.0370 | 0.1111 | 0.5926 |
| season | 0.60 | 60 | - | 749.000 | 169.000 | 16.000 | 0.000 | 25.000 | 110.000 | 74.000 | 87.000 | 254.000 | 0.2256 | 0.3015 | 0.3471 | 0.2256 | 0.0334 | 0.1469 | 0.1162 | 0.3391 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1180 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.4290 |
| predicted_AVG | 0.1674 |
| predicted_BB | 1.0030 |
| predicted_H | 1.4110 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.3490 |
| predicted_OBP | 0.2538 |
| predicted_R | 0.8730 |
| predicted_RBI | 0.9320 |
| predicted_SLG | 0.3061 |
| predicted_SO | 3.3830 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0770 | 0.1180 | 0.0950 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.6180 | 8.4290 | 5.7350 | model_form_blend |
| predicted_AVG | 0.2110 | 0.1674 | 0.1918 | model_form_blend |
| predicted_BB | 0.4200 | 1.0030 | 0.6765 | model_form_blend |
| predicted_H | 0.6400 | 1.4110 | 0.9793 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1200 | 0.3490 | 0.2208 | model_form_blend |
| predicted_OBP | 0.2680 | 0.2538 | 0.2618 | model_form_blend |
| predicted_R | 0.3570 | 0.8730 | 0.5841 | model_form_blend |
| predicted_RBI | 0.3500 | 0.9320 | 0.6061 | model_form_blend |
| predicted_SLG | 0.3370 | 0.3061 | 0.3234 | model_form_blend |
| predicted_SO | 1.2270 | 3.3830 | 2.1757 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 207 |
| Season rows before report date | 207 |
| Report year | 2026 |
| Profile rows used | 207 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.226 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 3B |
| gameID | 20260609_STL@NYM |
| game_type | full |
| mlbID | 669357 |
| playerID | 669357 |
| playerName | Nolan Gorman |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-09 |
| sl_k_percent | 31.9 |
| sl_bb_percent | 11.1 |
| sl_woba | 0.271 |
| sl_xwoba | 0.281 |
| sl_xba | 0.2 |
| sl_xslg | 0.354 |
| sl_sweet_spot_percent | 34.9 |
| sl_barrel_batted_rate | 9.3 |
| sl_hard_hit_percent | 43.4 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 22.2 |
| sl_whiff_percent | 38.4 |
| sl_swing_percent | 49.8 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 2.333 | 2.000 | -1.333 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.333 | 0.000 | -1.333 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 3.333 | 4.000 | -2.333 | -3.000 |
| predicted_IP | 4.100 | 4.100 | 4.100 | Pitching_InningsPitched | 4.100 | 5.000 | 0.000 | -0.900 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 4.667 | 6.000 | -0.667 | -2.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 5.0000 -> 4.1000 (deboost -0.9000, 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.1000 (deboost -0.9000, 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": "690928",
"player_name": "Hunter Dobbins",
"position": "Starter",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.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": "starter_usage_guardrail",
"description": "Starter workload capped by recent innings, season ERA/WHIP, and team-form context.",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 4.1,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 4.1,
"delta": -0.9,
"percent_delta": -0.18,
"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.0,
"after": 4.1,
"delta": -0.9,
"percent_delta": -0.18,
"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": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 4.1,
"predicted_R": 0.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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": 4.1,
"delta": -0.9,
"percent_delta": -0.18,
"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.0,
"after": 4.1,
"delta": -0.9,
"percent_delta": -0.18,
"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 | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 4.000 | - |
Starter workload capped by recent innings, season ERA/WHIP, and team-form context.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | 0.000 |
| predicted_ER | 0.000 | 0.000 |
| predicted_H | 1.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 4.100 | -0.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 | 3 | 13.000 | 4.000 | 10.000 | 7.000 | 14.000 | 1.000 | 2.7692 | 1.3077 | 0.3077 | 0.7692 | 0.5385 | 1.0769 | 0.0769 |
| last_10 | 0.35 | 3 | 13.000 | 4.000 | 10.000 | 7.000 | 14.000 | 1.000 | 2.7692 | 1.3077 | 0.3077 | 0.7692 | 0.5385 | 1.0769 | 0.0769 |
| season | 0.20 | 3 | 13.000 | 4.000 | 10.000 | 7.000 | 14.000 | 1.000 | 2.7692 | 1.3077 | 0.3077 | 0.7692 | 0.5385 | 1.0769 | 0.0769 |
| Metric | Value |
|---|---|
| predicted_BB | 2.0430 |
| predicted_ER | 1.9910 |
| predicted_ERA | 3.7724 |
| predicted_H | 4.2200 |
| predicted_HR | 0.5550 |
| predicted_IP | 4.2000 |
| predicted_SO | 4.6960 |
| predicted_WHIP | 1.3184 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.0430 | 1.4025 | model_form_blend |
| predicted_ER | 0.0000 | 1.9910 | 0.7684 | model_form_blend |
| predicted_ERA | - | 3.7724 | 3.7724 | form_only |
| predicted_H | 1.0000 | 4.2200 | 2.2427 | model_form_blend |
| predicted_HR | 0.0000 | 0.5550 | 0.2142 | model_form_blend |
| predicted_IP | 5.0000 | 4.2000 | 5.0000 | model_form_blend |
| predicted_SO | 4.0000 | 4.6960 | 4.2686 | model_form_blend |
| predicted_WHIP | - | 1.3184 | 1.3184 | 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 | 3 |
| Season rows before report date | 3 |
| Report year | 2026 |
| Profile rows used | 3 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 4.1 |
| H | 1 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 4 |
| HR | 0 |
| BF | 15 |
| Pitches | 73 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_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 | 19 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.77 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 6 |
| Pitching_H | 4 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 78 |
| Pitching_R | 0 |
| Pitching_SO | 6 |
| Pitching_Strikes | 52 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260605_CIN@STL |
| game_type | full |
| mlbID | 690928 |
| playerID | 690928 |
| playerName | Hunter Dobbins |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-05 |
| sl_k_percent | 26.4 |
| sl_bb_percent | 13.2 |
| sl_woba | 0.298 |
| sl_xwoba | 0.357 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 15.6 |
| sl_hard_hit_percent | 50.0 |
| sl_whiff_percent | 24.2 |
| sl_swing_percent | 45.4 |
| sl_avg_best_speed | 81.33891875 |
| sl_avg_hyper_speed | 95.18915625 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 0.000 | 0.000 | 0.000 | Pitching_BB | 0.357 | 0.000 | -0.357 | 0.000 |
| predicted_ER | 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.750 | 3.000 | 0.250 | -2.000 |
| predicted_IP | 1.200 | 1.200 | 1.200 | Pitching_InningsPitched | 0.807 | 0.200 | 0.393 | 1.000 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 0.821 | 1.000 | 0.179 | 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": "666277",
"player_name": "George Soriano",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 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.2,
"predicted_R": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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.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": 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.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 | 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 | 1.000 | 6.000 | 0.000 | 6.000 | 1.000 | 1.9286 | 1.2857 | 0.2143 | 1.2857 | 0.0000 | 1.2857 | 0.2143 |
| last_10 | 0.35 | 10 | 9.100 | 3.000 | 11.000 | 0.000 | 8.000 | 3.000 | 2.8929 | 1.1786 | 0.3214 | 1.1786 | 0.0000 | 0.8571 | 0.3214 |
| season | 0.20 | 28 | 26.100 | 9.000 | 21.000 | 10.000 | 23.000 | 4.000 | 3.0759 | 1.1772 | 0.3418 | 0.7975 | 0.3797 | 0.8734 | 0.1519 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2180 |
| predicted_ER | 0.3800 |
| predicted_ERA | 3.4164 |
| predicted_H | 1.0570 |
| predicted_HR | 0.1910 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.9960 |
| predicted_WHIP | 1.2747 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2180 | 0.0966 | model_form_blend |
| predicted_ER | 1.0000 | 0.3800 | 0.7254 | model_form_blend |
| predicted_ERA | - | 3.4164 | 3.4164 | form_only |
| predicted_H | 1.0000 | 1.0570 | 1.0252 | model_form_blend |
| predicted_HR | 1.0000 | 0.1910 | 0.6417 | 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.2747 | 1.2747 | 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.2 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 1 |
| HR | 1 |
| BF | 6 |
| 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 | 1 |
| Pitching_ERA | 3.08 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 17 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 13 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | BS |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 666277 |
| playerID | 666277 |
| playerName | George Soriano |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-07 |
| sl_k_percent | 20.9 |
| sl_bb_percent | 9.1 |
| sl_woba | 0.294 |
| sl_xwoba | 0.328 |
| sl_sweet_spot_percent | 25.0 |
| sl_barrel_batted_rate | 10.5 |
| sl_hard_hit_percent | 36.8 |
| sl_whiff_percent | 31.3 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 79.068119474 |
| sl_avg_hyper_speed | 94.494400921 |
| 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.367 | 0.000 | -0.367 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.367 | 0.000 | 0.633 | 1.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 0.833 | 0.000 | 2.167 | 3.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 | 1.000 | 1.000 | -1.000 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "668941",
"player_name": "JoJo Romero",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.0,
"predicted_H": 3.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": 0.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 1.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": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 3.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 | 4.000 | 3.000 | 4.000 | 1.000 | 7.000 | 0.000 | 6.7500 | 1.2500 | 0.7500 | 1.0000 | 0.2500 | 1.7500 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 4.000 | 10.000 | 4.000 | 12.000 | 0.000 | 3.8571 | 1.5000 | 0.4286 | 1.0714 | 0.4286 | 1.2857 | 0.0000 |
| season | 0.20 | 30 | 29.200 | 11.000 | 25.000 | 11.000 | 30.000 | 3.000 | 3.3371 | 1.2135 | 0.3708 | 0.8427 | 0.3708 | 1.0112 | 0.1011 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3210 |
| predicted_ER | 0.4840 |
| predicted_ERA | 4.7416 |
| predicted_H | 0.8990 |
| predicted_HR | 0.0700 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1100 |
| predicted_WHIP | 1.3277 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.3210 | 0.1462 | model_form_blend |
| predicted_ER | 1.0000 | 0.4840 | 0.7650 | model_form_blend |
| predicted_ERA | - | 4.7416 | 4.7416 | form_only |
| predicted_H | 3.0000 | 0.8990 | 2.0430 | model_form_blend |
| predicted_HR | 1.0000 | 0.0700 | 0.5764 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1100 | 0.5056 | model_form_blend |
| predicted_WHIP | - | 1.3277 | 1.3277 | 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 | 3 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 0 |
| HR | 1 |
| BF | 6 |
| 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 | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.34 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 14 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 668941 |
| playerID | 668941 |
| playerName | JoJo Romero |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.306 |
| sl_xwoba | 0.341 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 46.9 |
| sl_whiff_percent | 23.5 |
| sl_swing_percent | 39.1 |
| sl_avg_best_speed | 82.063900513 |
| sl_avg_hyper_speed | 96.165349744 |
| 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.414 | 0.000 | -0.414 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.931 | 1.000 | -0.931 | -1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.955 | 1.000 | 0.045 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.069 | 1.000 | -1.069 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "676617",
"player_name": "Riley O'Brien",
"position": "Middle Reliever",
"team": "STL",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 4.000 | 7.000 | 3.000 | 4.000 | 0.000 | 7.2000 | 2.0000 | 0.8000 | 1.4000 | 0.6000 | 0.8000 | 0.0000 |
| last_10 | 0.35 | 10 | 10.100 | 6.000 | 10.000 | 6.000 | 8.000 | 0.000 | 5.2258 | 1.5484 | 0.5806 | 0.9677 | 0.5806 | 0.7742 | 0.0000 |
| season | 0.20 | 29 | 29.100 | 12.000 | 27.000 | 7.000 | 31.000 | 1.000 | 3.6818 | 1.1591 | 0.4091 | 0.9204 | 0.2386 | 1.0568 | 0.0341 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4490 |
| predicted_ER | 0.5710 |
| predicted_ERA | 5.1425 |
| predicted_H | 1.0630 |
| predicted_HR | 0.0690 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8860 |
| predicted_WHIP | 1.5121 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4490 | 0.2040 | model_form_blend |
| predicted_ER | 0.0000 | 0.5710 | 0.2594 | model_form_blend |
| predicted_ERA | - | 5.1425 | 5.1425 | form_only |
| predicted_H | 0.0000 | 1.0630 | 0.4829 | model_form_blend |
| predicted_HR | 0.0000 | 0.0690 | 0.0313 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8860 | 0.4025 | model_form_blend |
| predicted_WHIP | - | 1.5121 | 1.5121 | 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 | 3 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 3.68 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 1 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 15 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260607_CIN@STL |
| game_type | full |
| mlbID | 676617 |
| playerID | 676617 |
| playerName | Riley O'Brien |
| pos | P |
| started | False |
| startingPosition | P |
| team | STL |
| teamID | 26 |
| game_date | 2026-06-07 |
| sl_k_percent | 25.2 |
| sl_bb_percent | 5.7 |
| sl_woba | 0.287 |
| sl_xwoba | 0.312 |
| sl_sweet_spot_percent | 32.5 |
| sl_barrel_batted_rate | 5.1 |
| sl_hard_hit_percent | 38.8 |
| sl_whiff_percent | 28.4 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 75.398399737 |
| sl_avg_hyper_speed | 94.128369211 |
| Field | Value |
|---|---|
| Pitcher | Christian Scott |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | 0.0029 |
| ESPN Rank | 83 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0735 |
| Avg Velo | 91.0255 |
| Avg Spin | 2324.4013 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5.1000 |
| Pre ER | 0 |
| Pre H | 3 |
| Pre BB | 1 |
| Pre SO | 4 |
| Season ERA | 2.5000 |
| Season WHIP | 1.3056 |
| Role Avg IP | 4.5000 |
| Recent Avg IP | 5 |
| Last Start IP | 5.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"opponent": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"edges": {
"quality_edge": -0.2953,
"offense_edge": -0.1442,
"opponent_offense_edge": -0.0391,
"defense_strength": 0.0883,
"opponent_defense_weakness": -0.1289,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9924,
"run_prevention": 0.9997,
"strikeout": 0.9943
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "681035",
"profile": {
"available": true,
"pitcher_id": "681035",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 114.0,
"k_percent": 26.3,
"bb_percent": 11.5,
"woba": 0.293,
"xwoba": 0.319,
"sweet_spot_percent": 46.7,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 31.5,
"avg_best_speed": 76.0794,
"avg_hyper_speed": 93.0759,
"whiff_percent": 22.0,
"swing_percent": 47.6
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.1677,
"command_and_miss": -0.0736,
"regression_edge": -0.7429,
"xwoba_edge": -0.1143,
"barrel_edge": 0.8889,
"hard_hit_edge": 0.9857,
"whiff_edge": -0.5143,
"bb_edge": -0.625,
"pitch_design_score": 0.0735
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "681035",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 86,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 86,
"pitch_usage": 0.0,
"release_speed": 91.02549335702402,
"release_spin_rate": 2324.4013439020473,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86,
"pitch_usage": 0.0,
"release_speed": 91.02549335702402,
"release_spin_rate": 2324.4013439020473,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0255,
"release_spin_rate": 2324.4013,
"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.0735,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5247,
"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.0029,
"sample_weight": 0.456,
"run_prevention_factor": 0.9998,
"strikeout_factor": 1.0,
"walk_factor": 1.0228,
"homer_factor": 0.9512,
"woba_minus_xwoba": -0.026,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "681035",
"espn_id": 4414215,
"player_name": "Christian Scott",
"team": "NYM",
"role": "pitcher",
"espn_rank": 83,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 83,
"gp_value": 8.0,
"gp_rank": 409,
"gs_value": 8.0,
"gs_rank": 129,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.5,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 36.0,
"ip_rank": 164,
"h_value": 29.0,
"h_rank": 194,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 18.0,
"bb_rank": 123,
"k_value": 41.0,
"k_rank": 137,
"k_per_9_value": 10.25,
"k_per_9_rank": 22,
"whip_value": 1.3055,
"whip_rank": null,
"war_value": 1.07,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9999,
"adjusted": 1
},
"predicted_H": {
"original": 4.0,
"factor": 0.9999,
"adjusted": 4
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0104,
"adjusted": 2
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9777,
"adjusted": 0
},
"predicted_SO": {
"original": 5.0,
"factor": 1.0,
"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": 36.0,
"ER": 10,
"H": 29,
"BB": 18,
"SO": 41,
"HR": 1,
"ERA": 2.5,
"WHIP": 1.3055555555555556,
"K9": 10.25,
"HR9": 0.25,
"games_pitched": 8,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": false
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 8,
"error_prone": false
},
"games_count": 8,
"latest_game_date": "2026-06-05T00:00:00"
}{
"available": true,
"pitcher_id": "681035",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 86,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 86,
"pitch_usage": 0.0,
"release_speed": 91.02549335702402,
"release_spin_rate": 2324.4013439020473,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86,
"pitch_usage": 0.0,
"release_speed": 91.02549335702402,
"release_spin_rate": 2324.4013439020473,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.0255,
"release_spin_rate": 2324.4013,
"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.0735,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.5247,
"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.6818181818181818,
"last_10": 0.3181818181818182
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6154,
"prior_weight": 0.3846
},
"role": "pitcher",
"player_id": "681035",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 8,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 25.0,
"ER": 6.0,
"R": 6.0,
"H": 23.0,
"BB": 11.0,
"SO": 26.0,
"HR": 0.0,
"BF": 108.0,
"Pitches": 458.0
},
"per_game": {
"IP": 5.0,
"ER": 1.2,
"R": 1.2,
"H": 4.6,
"BB": 2.2,
"SO": 5.2,
"HR": 0.0,
"BF": 21.6,
"Pitches": 91.6
},
"rates": {
"ERA": 2.16,
"WHIP": 1.36,
"ER_per_IP": 0.24,
"H_per_IP": 0.92,
"BB_per_IP": 0.44,
"SO_per_IP": 1.04,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 8,
"totals": {
"IP": 36.0,
"ER": 10.0,
"R": 11.0,
"H": 29.0,
"BB": 18.0,
"SO": 41.0,
"HR": 1.0,
"BF": 156.0,
"Pitches": 657.0
},
"per_game": {
"IP": 4.2,
"ER": 1.25,
"R": 1.375,
"H": 3.625,
"BB": 2.25,
"SO": 5.125,
"HR": 0.125,
"BF": 19.5,
"Pitches": 82.125
},
"rates": {
"ERA": 2.5,
"WHIP": 1.3056,
"ER_per_IP": 0.27778,
"H_per_IP": 0.80556,
"BB_per_IP": 0.5,
"SO_per_IP": 1.13889,
"HR_per_IP": 0.02778
}
},
"season": {
"games": 8,
"totals": {
"IP": 36.0,
"ER": 10.0,
"R": 11.0,
"H": 29.0,
"BB": 18.0,
"SO": 41.0,
"HR": 1.0,
"BF": 156.0,
"Pitches": 657.0
},
"per_game": {
"IP": 4.2,
"ER": 1.25,
"R": 1.375,
"H": 3.625,
"BB": 2.25,
"SO": 5.125,
"HR": 0.125,
"BF": 19.5,
"Pitches": 82.125
},
"rates": {
"ERA": 2.5,
"WHIP": 1.3056,
"ER_per_IP": 0.27778,
"H_per_IP": 0.80556,
"BB_per_IP": 0.5,
"SO_per_IP": 1.13889,
"HR_per_IP": 0.02778
}
}
},
"weighted_prediction": {
"predicted_IP": 5.0,
"predicted_ER": 1.688,
"predicted_H": 4.505,
"predicted_BB": 2.087,
"predicted_SO": 5.03,
"predicted_HR": 0.294,
"predicted_ERA": 3.0782,
"predicted_WHIP": 1.3358
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5125,
"form_weight": 0.4875,
"form_reliability": 0.6154,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 8.0,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.6154,
"prior_weight": 0.3846
},
"applied_metrics": {
"predicted_IP": {
"model": 5.0,
"form": 5.0,
"final": 5.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 1.688,
"final": 0.8229,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 4.505,
"final": 3.7337,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.087,
"final": 1.5299,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 4.0,
"form": 5.03,
"final": 4.5021,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.294,
"final": 0.1433,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0782,
"final": 3.0782,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3358,
"final": 1.3358,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Brooks Raley |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1437 |
| ESPN Rank | 90 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2800 |
| Avg Velo | 84.2931 |
| Avg Spin | 2613.9990 |
| 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.4795 |
| Season WHIP | 1.1918 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"opponent": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"edges": {
"quality_edge": -0.2953,
"offense_edge": -0.1442,
"opponent_offense_edge": -0.0391,
"defense_strength": 0.0883,
"opponent_defense_weakness": -0.1289,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9924,
"run_prevention": 0.9997,
"strikeout": 0.9943
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "548384",
"profile": {
"available": true,
"pitcher_id": "548384",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 89.0,
"k_percent": 28.2,
"bb_percent": 10.7,
"woba": 0.278,
"xwoba": 0.292,
"sweet_spot_percent": 39.3,
"barrel_batted_rate": 6.6,
"hard_hit_percent": 29.5,
"avg_best_speed": 76.2786,
"avg_hyper_speed": 92.975,
"whiff_percent": 26.4,
"swing_percent": 44.4
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.5384,
"command_and_miss": 0.3086,
"regression_edge": -0.4,
"xwoba_edge": 0.6571,
"barrel_edge": 0.1556,
"hard_hit_edge": 1.2714,
"whiff_edge": 0.1143,
"bb_edge": -0.425,
"pitch_design_score": -0.28
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "548384",
"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": 84.29312753140702,
"release_spin_rate": 2613.99902757283,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 84.29312753140702,
"release_spin_rate": 2613.99902757283,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2931,
"release_spin_rate": 2613.999,
"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.1437,
"sample_weight": 0.45,
"run_prevention_factor": 0.9878,
"strikeout_factor": 1.0162,
"walk_factor": 1.0153,
"homer_factor": 0.9626,
"woba_minus_xwoba": -0.014,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "548384",
"espn_id": 32005,
"player_name": "Brooks Raley",
"team": "NYM",
"role": "pitcher",
"espn_rank": 90,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 90,
"gp_value": 27.0,
"gp_rank": 75,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.4794,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 10.0,
"hld_rank": 18,
"ip_value": 24.1,
"ip_rank": 306,
"h_value": 18.0,
"h_rank": 339,
"er_value": 4.0,
"er_rank": 509,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 11.0,
"bb_rank": 250,
"k_value": 29.0,
"k_rank": 236,
"k_per_9_value": 10.7260275,
"k_per_9_rank": 20,
"whip_value": 1.1917,
"whip_rank": null,
"war_value": 0.98,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9945,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9945,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0069,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9832,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0073,
"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": 8,
"BB": 6,
"SO": 10,
"HR": 1,
"ERA": 2.16,
"WHIP": 1.6800000000000002,
"K9": 10.8,
"HR9": 1.08,
"games_pitched": 10,
"quality_starts": 0,
"dominant_form": false,
"struggling_form": true
},
"fielding": {
"errors": 0,
"assists": 0,
"games_fielded": 10,
"error_prone": false
},
"games_count": 10,
"latest_game_date": "2026-06-07T00:00:00"
}{
"available": true,
"pitcher_id": "548384",
"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": 84.29312753140702,
"release_spin_rate": 2613.99902757283,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 84.29312753140702,
"release_spin_rate": 2613.99902757283,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.2931,
"release_spin_rate": 2613.999,
"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.807,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4902,
"prior_weight": 0.5098
},
"role": "pitcher",
"player_id": "548384",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 2.0,
"SO": 6.0,
"HR": 1.0,
"BF": 19.0,
"Pitches": 78.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.4,
"SO": 1.2,
"HR": 0.2,
"BF": 3.8,
"Pitches": 15.6
},
"rates": {
"ERA": 2.0769,
"WHIP": 1.1538,
"ER_per_IP": 0.23077,
"H_per_IP": 0.69231,
"BB_per_IP": 0.46154,
"SO_per_IP": 1.38462,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.1,
"ER": 2.0,
"R": 3.0,
"H": 8.0,
"BB": 6.0,
"SO": 10.0,
"HR": 1.0,
"BF": 41.0,
"Pitches": 163.0
},
"per_game": {
"IP": 0.2,
"ER": 0.2,
"R": 0.3,
"H": 0.8,
"BB": 0.6,
"SO": 1.0,
"HR": 0.1,
"BF": 4.1,
"Pitches": 16.3
},
"rates": {
"ERA": 2.16,
"WHIP": 1.68,
"ER_per_IP": 0.24,
"H_per_IP": 0.96,
"BB_per_IP": 0.72,
"SO_per_IP": 1.2,
"HR_per_IP": 0.12
}
},
"season": {
"games": 27,
"totals": {
"IP": 24.1,
"ER": 4.0,
"R": 5.0,
"H": 18.0,
"BB": 11.0,
"SO": 29.0,
"HR": 2.0,
"BF": 103.0,
"Pitches": 392.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1481,
"R": 0.1852,
"H": 0.6667,
"BB": 0.4074,
"SO": 1.0741,
"HR": 0.0741,
"BF": 3.8148,
"Pitches": 14.5185
},
"rates": {
"ERA": 1.4795,
"WHIP": 1.1918,
"ER_per_IP": 0.16438,
"H_per_IP": 0.73973,
"BB_per_IP": 0.45205,
"SO_per_IP": 1.19178,
"HR_per_IP": 0.08219
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.336,
"predicted_H": 0.829,
"predicted_BB": 0.43,
"predicted_SO": 1.042,
"predicted_HR": 0.143,
"predicted_ERA": 3.2038,
"predicted_WHIP": 1.335
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5654,
"form_weight": 0.4346,
"form_reliability": 0.4902,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.807,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4902,
"prior_weight": 0.5098
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.336,
"final": 0.146,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.829,
"final": 0.9257,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.43,
"final": 0.1869,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.042,
"final": 0.4529,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.143,
"final": 0.0621,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2038,
"final": 3.2038,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.335,
"final": 1.335,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Devin Williams |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3039 |
| ESPN Rank | 584 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0340 |
| Avg Velo | 89.1068 |
| Avg Spin | 2442.9373 |
| 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 | 4.7143 |
| Season WHIP | 1.3810 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"opponent": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"edges": {
"quality_edge": -0.2953,
"offense_edge": -0.1442,
"opponent_offense_edge": -0.0391,
"defense_strength": 0.0883,
"opponent_defense_weakness": -0.1289,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9924,
"run_prevention": 0.9997,
"strikeout": 0.9943
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "642207",
"profile": {
"available": true,
"pitcher_id": "642207",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 80.0,
"k_percent": 35.1,
"bb_percent": 14.9,
"woba": 0.338,
"xwoba": 0.28,
"sweet_spot_percent": 34.0,
"barrel_batted_rate": 8.5,
"hard_hit_percent": 27.7,
"avg_best_speed": 80.1626,
"avg_hyper_speed": 93.2971,
"whiff_percent": 41.1,
"swing_percent": 48.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.322,
"command_and_miss": 1.2771,
"regression_edge": 1.6571,
"xwoba_edge": 1.0,
"barrel_edge": -0.2667,
"hard_hit_edge": 1.5286,
"whiff_edge": 2.2143,
"bb_edge": -1.475,
"pitch_design_score": -0.034
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "642207",
"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.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 21,
"pitch_usage": 0.0,
"release_speed": 89.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.1068,
"release_spin_rate": 2442.9373,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.034,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2428,
"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.3039,
"sample_weight": 0.45,
"run_prevention_factor": 0.9742,
"strikeout_factor": 1.0717,
"walk_factor": 1.0531,
"homer_factor": 0.9686,
"woba_minus_xwoba": 0.058,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "642207",
"espn_id": 33224,
"player_name": "Devin Williams",
"team": "NYM",
"role": "pitcher",
"espn_rank": 584,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 584,
"gp_value": 24.0,
"gp_rank": 119,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 5.5714,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 2.0,
"l_rank": 172,
"sv_value": 8.0,
"sv_rank": 16,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 21.0,
"ip_rank": 346,
"h_value": 19.0,
"h_rank": 317,
"er_value": 13.0,
"er_rank": 224,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 14.0,
"bb_rank": 189,
"k_value": 33.0,
"k_rank": 190,
"k_per_9_value": 14.142858,
"k_per_9_rank": 14,
"whip_value": 1.5714,
"whip_rank": null,
"war_value": -0.32,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 0.9884,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 0.9884,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0239,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9859,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0323,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 9.1,
"ER": 5,
"H": 4,
"BB": 8,
"SO": 13,
"HR": 1,
"ERA": 4.821428571428572,
"WHIP": 1.2857142857142858,
"K9": 12.535714285714286,
"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": "642207",
"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.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 21,
"pitch_usage": 0.0,
"release_speed": 89.10680032150675,
"release_spin_rate": 2442.9373156663596,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 89.1068,
"release_spin_rate": 2442.9373,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.034,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.2428,
"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.149,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4535,
"prior_weight": 0.5465
},
"role": "pitcher",
"player_id": "642207",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 5.0,
"R": 5.0,
"H": 3.0,
"BB": 6.0,
"SO": 8.0,
"HR": 1.0,
"BF": 22.0,
"Pitches": 94.0
},
"per_game": {
"IP": 1.0,
"ER": 1.0,
"R": 1.0,
"H": 0.6,
"BB": 1.2,
"SO": 1.6,
"HR": 0.2,
"BF": 4.4,
"Pitches": 18.8
},
"rates": {
"ERA": 10.3846,
"WHIP": 2.0769,
"ER_per_IP": 1.15385,
"H_per_IP": 0.69231,
"BB_per_IP": 1.38462,
"SO_per_IP": 1.84615,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 5.0,
"R": 5.0,
"H": 4.0,
"BB": 8.0,
"SO": 13.0,
"HR": 1.0,
"BF": 39.0,
"Pitches": 153.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5,
"R": 0.5,
"H": 0.4,
"BB": 0.8,
"SO": 1.3,
"HR": 0.1,
"BF": 3.9,
"Pitches": 15.3
},
"rates": {
"ERA": 4.8214,
"WHIP": 1.2857,
"ER_per_IP": 0.53571,
"H_per_IP": 0.42857,
"BB_per_IP": 0.85714,
"SO_per_IP": 1.39286,
"HR_per_IP": 0.10714
}
},
"season": {
"games": 23,
"totals": {
"IP": 21.0,
"ER": 11.0,
"R": 11.0,
"H": 18.0,
"BB": 11.0,
"SO": 33.0,
"HR": 2.0,
"BF": 89.0,
"Pitches": 359.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4783,
"R": 0.4783,
"H": 0.7826,
"BB": 0.4783,
"SO": 1.4348,
"HR": 0.087,
"BF": 3.8696,
"Pitches": 15.6087
},
"rates": {
"ERA": 4.7143,
"WHIP": 1.381,
"ER_per_IP": 0.52381,
"H_per_IP": 0.85714,
"BB_per_IP": 0.52381,
"SO_per_IP": 1.57143,
"HR_per_IP": 0.09524
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.634,
"predicted_H": 0.812,
"predicted_BB": 0.666,
"predicted_SO": 1.252,
"predicted_HR": 0.15,
"predicted_ERA": 5.7027,
"predicted_WHIP": 1.4772
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5809,
"form_weight": 0.4191,
"form_reliability": 0.4535,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.149,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4535,
"prior_weight": 0.5465
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.634,
"final": 0.8466,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.812,
"final": 0.9212,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.666,
"final": 0.86,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.252,
"final": 0.5247,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.15,
"final": 0.0629,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.7027,
"final": 5.7027,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.4772,
"final": 1.4772,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Luke Weaver |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1568 |
| ESPN Rank | 95 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1169 |
| Avg Velo | 91.8004 |
| Avg Spin | 2250.8882 |
| 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 | 2.4828 |
| Season WHIP | 0.9655 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "NYM",
"games": 74,
"wins": 30,
"losses": 44,
"win_pct": 0.4054,
"runs_scored": 285.0,
"runs_allowed": 306.0,
"run_differential": -21.0,
"run_differential_per_game": -0.2838,
"avg_runs_scored": 3.8514,
"avg_runs_allowed": 4.1351,
"offense_index": 0.8558,
"defense_index": 1.0883,
"current_streak": "L2",
"recent": {
"games": 10,
"wins": 5,
"losses": 5,
"win_pct": 0.5,
"avg_runs_scored": 4.4,
"avg_runs_allowed": 3.6,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1151
},
"opponent": {
"team": "STL",
"games": 74,
"wins": 43,
"losses": 31,
"win_pct": 0.5811,
"runs_scored": 320.0,
"runs_allowed": 295.0,
"run_differential": 25.0,
"run_differential_per_game": 0.3378,
"avg_runs_scored": 4.3243,
"avg_runs_allowed": 3.9865,
"offense_index": 0.9609,
"defense_index": 1.1289,
"current_streak": "W6",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 5.3,
"avg_runs_allowed": 3.2,
"run_differential": 21.0
},
"available": true,
"quality_score": 0.1802
},
"edges": {
"quality_edge": -0.2953,
"offense_edge": -0.1442,
"opponent_offense_edge": -0.0391,
"defense_strength": 0.0883,
"opponent_defense_weakness": -0.1289,
"recent_win_pct_edge": -0.2
},
"player_factors": {
"ip": 0.9924,
"run_prevention": 0.9997,
"strikeout": 0.9943
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "596133",
"profile": {
"available": true,
"pitcher_id": "596133",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 95.0,
"k_percent": 23.3,
"bb_percent": 6.9,
"woba": 0.241,
"xwoba": 0.285,
"sweet_spot_percent": 28.7,
"barrel_batted_rate": 8.8,
"hard_hit_percent": 31.3,
"avg_best_speed": 79.0484,
"avg_hyper_speed": 93.0804,
"whiff_percent": 26.9,
"swing_percent": 51.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.7333,
"command_and_miss": 0.2086,
"regression_edge": -1.2571,
"xwoba_edge": 0.8571,
"barrel_edge": -0.3333,
"hard_hit_edge": 1.0143,
"whiff_edge": 0.1857,
"bb_edge": 0.525,
"pitch_design_score": 0.1169
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "596133",
"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.80042932776298,
"release_spin_rate": 2250.888190520952,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.80042932776298,
"release_spin_rate": 2250.888190520952,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8004,
"release_spin_rate": 2250.8882,
"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.1169,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8347,
"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.1568,
"sample_weight": 0.45,
"run_prevention_factor": 0.9867,
"strikeout_factor": 1.0049,
"walk_factor": 0.9811,
"homer_factor": 0.9822,
"woba_minus_xwoba": -0.044,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "596133",
"espn_id": 33770,
"player_name": "Luke Weaver",
"team": "NYM",
"role": "pitcher",
"espn_rank": 95,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 95,
"gp_value": 27.0,
"gp_rank": 75,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 2.4827,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 7.0,
"hld_rank": 49,
"ip_value": 29.0,
"ip_rank": 238,
"h_value": 20.0,
"h_rank": 299,
"er_value": 8.0,
"er_rank": 367,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 27.0,
"k_rank": 255,
"k_per_9_value": 8.37931,
"k_per_9_rank": 28,
"whip_value": 0.9655,
"whip_rank": null,
"war_value": 0.95,
"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.9915,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.992,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0022,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 11.2,
"ER": 0,
"H": 6,
"BB": 1,
"SO": 10,
"HR": 0,
"ERA": 0.0,
"WHIP": 0.6,
"K9": 7.714285714285714,
"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": "596133",
"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.80042932776298,
"release_spin_rate": 2250.888190520952,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.80042932776298,
"release_spin_rate": 2250.888190520952,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8004,
"release_spin_rate": 2250.8882,
"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.1169,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.8347,
"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.729,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.534,
"prior_weight": 0.466
},
"role": "pitcher",
"player_id": "596133",
"report_date": "20260611_S",
"season_year": 2026,
"rows_used": 27,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.1,
"ER": 0.0,
"R": 0.0,
"H": 3.0,
"BB": 0.0,
"SO": 3.0,
"HR": 0.0,
"BF": 20.0,
"Pitches": 64.0
},
"per_game": {
"IP": 1.0,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.0,
"SO": 0.6,
"HR": 0.0,
"BF": 4.0,
"Pitches": 12.8
},
"rates": {
"ERA": 0.0,
"WHIP": 0.5625,
"ER_per_IP": 0.0,
"H_per_IP": 0.5625,
"BB_per_IP": 0.0,
"SO_per_IP": 0.5625,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 11.2,
"ER": 0.0,
"R": 0.0,
"H": 6.0,
"BB": 1.0,
"SO": 10.0,
"HR": 0.0,
"BF": 43.0,
"Pitches": 145.0
},
"per_game": {
"IP": 1.1,
"ER": 0.0,
"R": 0.0,
"H": 0.6,
"BB": 0.1,
"SO": 1.0,
"HR": 0.0,
"BF": 4.3,
"Pitches": 14.5
},
"rates": {
"ERA": 0.0,
"WHIP": 0.6,
"ER_per_IP": 0.0,
"H_per_IP": 0.51429,
"BB_per_IP": 0.08571,
"SO_per_IP": 0.85714,
"HR_per_IP": 0.0
}
},
"season": {
"games": 27,
"totals": {
"IP": 29.0,
"ER": 8.0,
"R": 8.0,
"H": 20.0,
"BB": 8.0,
"SO": 27.0,
"HR": 2.0,
"BF": 116.0,
"Pitches": 437.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2963,
"R": 0.2963,
"H": 0.7407,
"BB": 0.2963,
"SO": 1.0,
"HR": 0.0741,
"BF": 4.2963,
"Pitches": 16.1852
},
"rates": {
"ERA": 2.4828,
"WHIP": 0.9655,
"ER_per_IP": 0.27586,
"H_per_IP": 0.68966,
"BB_per_IP": 0.27586,
"SO_per_IP": 0.93103,
"HR_per_IP": 0.06897
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.272,
"predicted_H": 0.799,
"predicted_BB": 0.229,
"predicted_SO": 0.883,
"predicted_HR": 0.078,
"predicted_ERA": 2.3036,
"predicted_WHIP": 0.9678
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5469,
"form_weight": 0.4531,
"form_reliability": 0.534,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.729,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.534,
"prior_weight": 0.466
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.272,
"final": 0.1232,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.799,
"final": 0.9089,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.229,
"final": 0.6506,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.883,
"final": 0.4001,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.078,
"final": 0.0353,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.3036,
"final": 2.3036,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 0.9678,
"final": 0.9678,
"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.123 | 0.000 | 0.000 | Hitting_2B | 0.123 | 0.000 | -0.123 | 0.000 |
| predicted_3B | 0.004 | 0.000 | 0.000 | Hitting_3B | 0.004 | 0.000 | -0.004 | 0.000 |
| predicted_AB | 4.570 | 4.000 | 7.000 | Hitting_AB | 4.134 | 4.000 | -0.134 | 0.000 |
| predicted_AVG | 0.228 | 0.000 | 0.286 | Hitting_AVG | 0.228 | 0.000 | -0.228 | 0.000 |
| predicted_BB | 0.281 | 0.000 | 0.000 | Hitting_BB | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.040 | 0.000 | 2.000 | Hitting_H | 0.945 | 0.000 | -0.945 | 0.000 |
| predicted_HR | 0.100 | 0.000 | 0.000 | Hitting_HR | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_OBP | 0.284 | 0.000 | 0.286 | Hitting_OBP | 0.276 | 0.000 | -0.276 | 0.000 |
| predicted_R | 0.462 | 0.000 | 1.000 | Hitting_R | 0.462 | 0.000 | -0.462 | 0.000 |
| predicted_RBI | 0.490 | 0.000 | 1.000 | Hitting_RBI | 0.538 | 0.000 | -0.538 | 0.000 |
| predicted_SLG | 0.375 | 0.000 | 0.286 | Hitting_SLG | 0.329 | 0.000 | -0.329 | 0.000 |
| predicted_SO | 0.787 | 1.000 | 2.000 | Hitting_SO | 0.787 | 2.000 | 0.213 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 0 |
| Worse Metrics | 11 |
| Biggest Boost | predicted_SO: 0.7870 -> 1.0000 (boost 0.2130, worse) |
| Biggest Deboost | predicted_H: 1.0400 -> 0.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 | 8 | 2 | 7 | 3 | predicted_AB: 4.5700 -> 7.3803 (boost 2.8103, better) | predicted_SLG: 0.3750 -> 0.3653 (deboost -0.0097, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 6 | 0 | 6 | 0 | 6 | - | predicted_H: 1.7036 -> 1.6312 (deboost -0.0724, 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_H: 1.6312 -> 2.0000 (boost 0.3688, better) | predicted_BB: 0.4016 -> 0.0000 (deboost -0.4016, worse) | AB rounded to 7 (raw=7.38), rates preserved: AVG=0.221 HR/AB=0.016 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6577 -> 1.0000 (boost 0.3423, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2210 -> 0.2860 (boost 0.0650, better) | predicted_SLG: 0.3302 -> 0.2860 (deboost -0.0442, 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.3302 (boost 0.0442, better) | predicted_AVG: 0.2860 -> 0.2210 (deboost -0.0650, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "666182",
"player_name": "Bo Bichette",
"position": "SS",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.123,
"predicted_3B": 0.004,
"predicted_AB": 4.57,
"predicted_AVG": 0.228,
"predicted_BB": 0.281,
"predicted_H": 1.04,
"predicted_HR": 0.1,
"predicted_OBP": 0.284,
"predicted_R": 0.462,
"predicted_RBI": 0.49,
"predicted_SLG": 0.375,
"predicted_SO": 0.787
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2978,
"predicted_3B": 0.0752,
"predicted_AB": 7.3803,
"predicted_AVG": 0.23,
"predicted_BB": 0.4075,
"predicted_H": 1.7036,
"predicted_HBP": 0.065,
"predicted_HR": 0.1248,
"predicted_OBP": 0.2784,
"predicted_R": 0.7089,
"predicted_RBI": 0.8254,
"predicted_SLG": 0.3653,
"predicted_SO": 1.6099
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.123,
"after": 0.2978,
"delta": 0.1748,
"percent_delta": 1.4211,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.004,
"after": 0.0752,
"delta": 0.0712,
"percent_delta": 17.8,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.57,
"after": 7.3803,
"delta": 2.8103,
"percent_delta": 0.6149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.23,
"delta": 0.002,
"percent_delta": 0.0088,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.281,
"after": 0.4075,
"delta": 0.1265,
"percent_delta": 0.4502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 1.7036,
"delta": 0.6636,
"percent_delta": 0.6381,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1,
"after": 0.1248,
"delta": 0.0248,
"percent_delta": 0.248,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.284,
"after": 0.2784,
"delta": -0.0056,
"percent_delta": -0.0197,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.462,
"after": 0.7089,
"delta": 0.2469,
"percent_delta": 0.5344,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.8254,
"delta": 0.3354,
"percent_delta": 0.6845,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3653,
"delta": -0.0097,
"percent_delta": -0.0259,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.787,
"after": 1.6099,
"delta": 0.8229,
"percent_delta": 1.0456,
"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.57,
"after": 7.3803,
"delta": 2.8103,
"percent_delta": 0.6149,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3653,
"delta": -0.0097,
"percent_delta": -0.0259,
"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.2978,
"predicted_3B": 0.0752,
"predicted_AB": 7.3803,
"predicted_AVG": 0.221,
"predicted_BB": 0.4016,
"predicted_H": 1.6312,
"predicted_HBP": 0.065,
"predicted_HR": 0.1192,
"predicted_OBP": 0.2612,
"predicted_R": 0.6577,
"predicted_RBI": 0.7658,
"predicted_SLG": 0.3302,
"predicted_SO": 1.6334
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2978,
"after": 0.2978,
"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": 7.3803,
"after": 7.3803,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.23,
"after": 0.221,
"delta": -0.009,
"percent_delta": -0.0391,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4075,
"after": 0.4016,
"delta": -0.0059,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7036,
"after": 1.6312,
"delta": -0.0724,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.065,
"after": 0.065,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1248,
"after": 0.1192,
"delta": -0.0056,
"percent_delta": -0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2784,
"after": 0.2612,
"delta": -0.0172,
"percent_delta": -0.0618,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7089,
"after": 0.6577,
"delta": -0.0512,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8254,
"after": 0.7658,
"delta": -0.0596,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3653,
"after": 0.3302,
"delta": -0.0351,
"percent_delta": -0.0961,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6099,
"after": 1.6334,
"delta": 0.0235,
"percent_delta": 0.0146,
"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.7036,
"after": 1.6312,
"delta": -0.0724,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.38), rates preserved: AVG=0.221 HR/AB=0.016",
"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.2978,
"after": 0.0,
"delta": -0.2978,
"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": 7.3803,
"after": 7.0,
"delta": -0.3803,
"percent_delta": -0.0515,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4016,
"after": 0.0,
"delta": -0.4016,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6312,
"after": 2.0,
"delta": 0.3688,
"percent_delta": 0.2261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.065,
"after": 0.0,
"delta": -0.065,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1192,
"after": 0.0,
"delta": -0.1192,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7658,
"after": 1.0,
"delta": 0.2342,
"percent_delta": 0.3058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6334,
"after": 2.0,
"delta": 0.3666,
"percent_delta": 0.2244,
"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_H",
"before": 1.6312,
"after": 2.0,
"delta": 0.3688,
"percent_delta": 0.2261,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"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": "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.6577,
"after": 1.0,
"delta": 0.3423,
"percent_delta": 0.5205,
"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.6577,
"after": 1.0,
"delta": 0.3423,
"percent_delta": 0.5205,
"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.221,
"after": 0.286,
"delta": 0.065,
"percent_delta": 0.2941,
"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.2612,
"after": 0.286,
"delta": 0.0248,
"percent_delta": 0.0949,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3302,
"after": 0.286,
"delta": -0.0442,
"percent_delta": -0.1339,
"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.221,
"after": 0.286,
"delta": 0.065,
"percent_delta": 0.2941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3302,
"after": 0.286,
"delta": -0.0442,
"percent_delta": -0.1339,
"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": 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.221,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2612,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3302,
"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.221,
"delta": -0.065,
"percent_delta": -0.2272,
"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.2612,
"delta": -0.0248,
"percent_delta": -0.0867,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 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.3302,
"delta": 0.0442,
"percent_delta": 0.1545,
"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.3302,
"delta": 0.0442,
"percent_delta": 0.1545,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.221,
"delta": -0.065,
"percent_delta": -0.2272,
"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.004,
"after": 0.0,
"delta": -0.004,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.57,
"after": 4.0,
"delta": -0.57,
"percent_delta": -0.1247,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.228,
"after": 0.221,
"delta": -0.007,
"percent_delta": -0.0307,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.281,
"after": 0.0,
"delta": -0.281,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.04,
"after": 0.0,
"delta": -1.04,
"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.284,
"after": 0.2612,
"delta": -0.0228,
"percent_delta": -0.0803,
"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.49,
"after": 0.0,
"delta": -0.49,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.375,
"after": 0.3302,
"delta": -0.0448,
"percent_delta": -0.1195,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.787,
"after": 1.0,
"delta": 0.213,
"percent_delta": 0.2706,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 0,
"worse_metrics": 11,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.787,
"after": 1.0,
"delta": 0.213,
"percent_delta": 0.2706,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.04,
"after": 0.0,
"delta": -1.04,
"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.123 | - |
| predicted_3B | 0.004 | - |
| predicted_AB | 4.570 | - |
| predicted_AVG | 0.228 | - |
| predicted_BB | 0.281 | - |
| predicted_H | 1.040 | - |
| predicted_HR | 0.100 | - |
| predicted_OBP | 0.284 | - |
| predicted_R | 0.462 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.375 | - |
| predicted_SO | 0.787 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.175 |
| predicted_3B | 0.075 | 0.071 |
| predicted_AB | 7.380 | 2.810 |
| predicted_AVG | 0.230 | 0.002 |
| predicted_BB | 0.407 | 0.126 |
| predicted_H | 1.704 | 0.664 |
| predicted_HBP | 0.065 | - |
| predicted_HR | 0.125 | 0.025 |
| predicted_OBP | 0.278 | -0.006 |
| predicted_R | 0.709 | 0.247 |
| predicted_RBI | 0.825 | 0.335 |
| predicted_SLG | 0.365 | -0.010 |
| predicted_SO | 1.610 | 0.823 |
Step 3: 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.075 | 0.000 |
| predicted_AB | 7.380 | 0.000 |
| predicted_AVG | 0.221 | -0.009 |
| predicted_BB | 0.402 | -0.006 |
| predicted_H | 1.631 | -0.072 |
| predicted_HBP | 0.065 | 0.000 |
| predicted_HR | 0.119 | -0.006 |
| predicted_OBP | 0.261 | -0.017 |
| predicted_R | 0.658 | -0.051 |
| predicted_RBI | 0.766 | -0.060 |
| predicted_SLG | 0.330 | -0.035 |
| predicted_SO | 1.633 | 0.023 |
AB rounded to 7 (raw=7.38), rates preserved: AVG=0.221 HR/AB=0.016
| 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.298 |
| predicted_3B | 0.000 | -0.075 |
| predicted_AB | 7.000 | -0.380 |
| predicted_AVG | 0.286 | 0.065 |
| predicted_BB | 0.000 | -0.402 |
| predicted_H | 2.000 | 0.369 |
| predicted_HR | 0.000 | -0.119 |
| predicted_OBP | 0.286 | 0.025 |
| predicted_R | 1.000 | 0.342 |
| predicted_RBI | 1.000 | 0.234 |
| predicted_SLG | 0.286 | -0.044 |
| predicted_SO | 2.000 | 0.367 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -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 | -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 | 5.000 | 2.000 | 1.000 | 0.000 | 1.000 | 1.000 | 0.000 | 8.000 | 0.2381 | 0.2381 | 0.4286 | 0.2381 | 0.0000 | 0.0476 | 0.0000 | 0.3810 |
| last_10 | 0.20 | 10 | - | 38.000 | 9.000 | 2.000 | 1.000 | 0.000 | 5.000 | 3.000 | 2.000 | 10.000 | 0.2368 | 0.2857 | 0.3421 | 0.2368 | 0.0000 | 0.1316 | 0.0526 | 0.2632 |
| season | 0.60 | 66 | - | 1046.000 | 239.000 | 31.000 | 1.000 | 24.000 | 136.000 | 117.000 | 71.000 | 199.000 | 0.2285 | 0.2757 | 0.3289 | 0.2285 | 0.0229 | 0.1300 | 0.0679 | 0.1903 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5180 |
| predicted_3B | 0.1650 |
| predicted_AB | 10.9220 |
| predicted_AVG | 0.2326 |
| predicted_BB | 0.5670 |
| predicted_H | 2.5400 |
| predicted_HBP | 0.0650 |
| predicted_HR | 0.1560 |
| predicted_OBP | 0.2713 |
| predicted_R | 1.0200 |
| predicted_RBI | 1.2480 |
| predicted_SLG | 0.3530 |
| predicted_SO | 2.6470 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1230 | 0.5180 | 0.2978 | model_form_blend |
| predicted_3B | 0.0040 | 0.1650 | 0.0752 | model_form_blend |
| predicted_AB | 4.5700 | 10.9220 | 7.3803 | model_form_blend |
| predicted_AVG | 0.2280 | 0.2326 | 0.2300 | model_form_blend |
| predicted_BB | 0.2810 | 0.5670 | 0.4075 | model_form_blend |
| predicted_H | 1.0400 | 2.5400 | 1.7036 | model_form_blend |
| predicted_HBP | - | 0.0650 | 0.0650 | form_only |
| predicted_HR | 0.1000 | 0.1560 | 0.1248 | model_form_blend |
| predicted_OBP | 0.2840 | 0.2713 | 0.2784 | model_form_blend |
| predicted_R | 0.4620 | 1.0200 | 0.7089 | model_form_blend |
| predicted_RBI | 0.4900 | 1.2480 | 0.8254 | model_form_blend |
| predicted_SLG | 0.3750 | 0.3530 | 0.3653 | model_form_blend |
| predicted_SO | 0.7870 | 2.6470 | 1.6099 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 253 |
| Season rows before report date | 253 |
| Report year | 2026 |
| Profile rows used | 253 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.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 | 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 | 20260610_STL@NYM |
| game_type | full |
| mlbID | 666182 |
| playerID | 666182 |
| playerName | Bo Bichette |
| pos | 3B |
| started | True |
| startingPosition | SS |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.8 |
| sl_bb_percent | 6.5 |
| sl_woba | 0.268 |
| sl_xwoba | 0.325 |
| sl_xba | 0.277 |
| sl_xslg | 0.419 |
| sl_sweet_spot_percent | 31.8 |
| sl_barrel_batted_rate | 7.3 |
| sl_hard_hit_percent | 46.4 |
| sl_exit_velocity_avg | 91.2 |
| sl_launch_angle_avg | 7.6 |
| sl_whiff_percent | 17.5 |
| sl_swing_percent | 53.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.103 | 0.000 | 0.000 | Hitting_2B | 0.103 | 0.000 | -0.103 | 0.000 |
| predicted_3B | 0.023 | 0.000 | 0.000 | Hitting_3B | 0.023 | 0.000 | -0.023 | 0.000 |
| predicted_AB | 4.150 | 4.000 | 6.000 | Hitting_AB | 3.777 | 3.000 | 0.223 | 1.000 |
| predicted_AVG | 0.226 | 0.500 | 0.167 | Hitting_AVG | 0.295 | 0.000 | 0.205 | 0.500 |
| predicted_BB | 0.629 | 0.000 | 1.000 | Hitting_BB | 0.629 | 1.000 | -0.629 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.046 | 0.000 | -0.046 | 0.000 |
| predicted_H | 0.940 | 2.000 | 1.000 | Hitting_H | 1.114 | 0.000 | 0.886 | 2.000 |
| predicted_HR | 0.180 | 1.000 | 0.000 | Hitting_HR | 0.263 | 0.000 | 0.737 | 1.000 |
| predicted_OBP | 0.317 | 0.500 | 0.286 | Hitting_OBP | 0.393 | 0.250 | 0.107 | 0.250 |
| predicted_R | 0.594 | 1.000 | 1.000 | Hitting_R | 0.594 | 0.000 | 0.406 | 1.000 |
| predicted_RBI | 0.560 | 1.000 | 1.000 | Hitting_RBI | 0.623 | 0.000 | 0.377 | 1.000 |
| predicted_SLG | 0.408 | 1.250 | 0.167 | Hitting_SLG | 0.543 | 0.000 | 0.707 | 1.250 |
| predicted_SO | 0.669 | 1.000 | 1.000 | Hitting_SO | 0.669 | 0.000 | 0.331 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 5 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_H: 0.9400 -> 2.0000 (boost 1.0600, better) |
| Biggest Deboost | predicted_BB: 0.6290 -> 0.0000 (deboost -0.6290, 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 | 8 | 1 | 7 | 2 | predicted_AB: 4.1500 -> 6.4132 (boost 2.2632, better) | predicted_SLG: 0.4080 -> 0.3988 (deboost -0.0092, 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_RBI: 0.8972 -> 0.8324 (deboost -0.0648, 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.8324 -> 1.0000 (boost 0.1676, better) | predicted_AB: 6.4132 -> 6.0000 (deboost -0.4132, worse) | AB rounded to 6 (raw=6.41), rates preserved: AVG=0.214 HR/AB=0.043 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7312 -> 1.0000 (boost 0.2688, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3733 -> 0.1670 (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 | 2 | 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 |
| 8 | current_json_final | 3 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3733 (boost 0.2063, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "665742",
"player_name": "Juan Soto",
"position": "DH",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.103,
"predicted_3B": 0.023,
"predicted_AB": 4.15,
"predicted_AVG": 0.226,
"predicted_BB": 0.629,
"predicted_H": 0.94,
"predicted_HR": 0.18,
"predicted_OBP": 0.317,
"predicted_R": 0.594,
"predicted_RBI": 0.56,
"predicted_SLG": 0.408,
"predicted_SO": 0.669
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1293,
"predicted_3B": 0.0278,
"predicted_AB": 6.4132,
"predicted_AVG": 0.2244,
"predicted_BB": 1.0488,
"predicted_H": 1.4353,
"predicted_HBP": 0.003,
"predicted_HR": 0.2915,
"predicted_OBP": 0.3249,
"predicted_R": 0.7881,
"predicted_RBI": 0.8972,
"predicted_SLG": 0.3988,
"predicted_SO": 1.0256
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.103,
"after": 0.1293,
"delta": 0.0263,
"percent_delta": 0.2553,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0278,
"delta": 0.0048,
"percent_delta": 0.2087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.15,
"after": 6.4132,
"delta": 2.2632,
"percent_delta": 0.5453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2244,
"delta": -0.0016,
"percent_delta": -0.0071,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.629,
"after": 1.0488,
"delta": 0.4198,
"percent_delta": 0.6674,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 1.4353,
"delta": 0.4953,
"percent_delta": 0.5269,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 0.2915,
"delta": 0.1115,
"percent_delta": 0.6194,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3249,
"delta": 0.0079,
"percent_delta": 0.0249,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.594,
"after": 0.7881,
"delta": 0.1941,
"percent_delta": 0.3268,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.56,
"after": 0.8972,
"delta": 0.3372,
"percent_delta": 0.6021,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.3988,
"delta": -0.0092,
"percent_delta": -0.0225,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.669,
"after": 1.0256,
"delta": 0.3566,
"percent_delta": 0.533,
"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.15,
"after": 6.4132,
"delta": 2.2632,
"percent_delta": 0.5453,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.3988,
"delta": -0.0092,
"percent_delta": -0.0225,
"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": 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.1293,
"predicted_3B": 0.0278,
"predicted_AB": 6.4132,
"predicted_AVG": 0.2143,
"predicted_BB": 1.0335,
"predicted_H": 1.3743,
"predicted_HBP": 0.003,
"predicted_HR": 0.2784,
"predicted_OBP": 0.3233,
"predicted_R": 0.7312,
"predicted_RBI": 0.8324,
"predicted_SLG": 0.3733,
"predicted_SO": 1.0406
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1293,
"after": 0.1293,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0278,
"after": 0.0278,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4132,
"after": 6.4132,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2244,
"after": 0.2143,
"delta": -0.0101,
"percent_delta": -0.045,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0488,
"after": 1.0335,
"delta": -0.0153,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4353,
"after": 1.3743,
"delta": -0.061,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.003,
"after": 0.003,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2915,
"after": 0.2784,
"delta": -0.0131,
"percent_delta": -0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3249,
"after": 0.3233,
"delta": -0.0016,
"percent_delta": -0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7881,
"after": 0.7312,
"delta": -0.0569,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8972,
"after": 0.8324,
"delta": -0.0648,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3988,
"after": 0.3733,
"delta": -0.0255,
"percent_delta": -0.0639,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0256,
"after": 1.0406,
"delta": 0.015,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.8972,
"after": 0.8324,
"delta": -0.0648,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.41), rates preserved: AVG=0.214 HR/AB=0.043",
"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.1293,
"after": 0.0,
"delta": -0.1293,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0278,
"after": 0.0,
"delta": -0.0278,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.4132,
"after": 6.0,
"delta": -0.4132,
"percent_delta": -0.0644,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0335,
"after": 1.0,
"delta": -0.0335,
"percent_delta": -0.0324,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3743,
"after": 1.0,
"delta": -0.3743,
"percent_delta": -0.2724,
"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.2784,
"after": 0.0,
"delta": -0.2784,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8324,
"after": 1.0,
"delta": 0.1676,
"percent_delta": 0.2013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0406,
"after": 1.0,
"delta": -0.0406,
"percent_delta": -0.039,
"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.8324,
"after": 1.0,
"delta": 0.1676,
"percent_delta": 0.2013,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.4132,
"after": 6.0,
"delta": -0.4132,
"percent_delta": -0.0644,
"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.7312,
"after": 1.0,
"delta": 0.2688,
"percent_delta": 0.3676,
"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.7312,
"after": 1.0,
"delta": 0.2688,
"percent_delta": 0.3676,
"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.2143,
"after": 0.167,
"delta": -0.0473,
"percent_delta": -0.2207,
"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.3233,
"after": 0.286,
"delta": -0.0373,
"percent_delta": -0.1154,
"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.3733,
"after": 0.167,
"delta": -0.2063,
"percent_delta": -0.5526,
"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.3733,
"after": 0.167,
"delta": -0.2063,
"percent_delta": -0.5526,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 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": 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": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 2,
"deboosted_metrics": 2,
"better_metrics": 2,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_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.2143,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_DH": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.3233,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3733,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2143,
"delta": 0.0473,
"percent_delta": 0.2832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.3233,
"delta": 0.0373,
"percent_delta": 0.1305,
"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.3733,
"delta": 0.2063,
"percent_delta": 1.2356,
"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.3733,
"delta": 0.2063,
"percent_delta": 1.2356,
"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.103,
"after": 0.0,
"delta": -0.103,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.023,
"after": 0.0,
"delta": -0.023,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.15,
"after": 4.0,
"delta": -0.15,
"percent_delta": -0.0361,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2143,
"delta": -0.0117,
"percent_delta": -0.0518,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.629,
"after": 0.0,
"delta": -0.629,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.94,
"after": 2.0,
"delta": 1.06,
"percent_delta": 1.1277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.18,
"after": 1.0,
"delta": 0.82,
"percent_delta": 4.5556,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3233,
"delta": 0.0063,
"percent_delta": 0.0199,
"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.56,
"after": 1.0,
"delta": 0.44,
"percent_delta": 0.7857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.408,
"after": 0.3733,
"delta": -0.0347,
"percent_delta": -0.085,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.669,
"after": 1.0,
"delta": 0.331,
"percent_delta": 0.4948,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 6,
"deboosted_metrics": 5,
"better_metrics": 5,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.94,
"after": 2.0,
"delta": 1.06,
"percent_delta": 1.1277,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.629,
"after": 0.0,
"delta": -0.629,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.103 | - |
| predicted_3B | 0.023 | - |
| predicted_AB | 4.150 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.629 | - |
| predicted_H | 0.940 | - |
| predicted_HR | 0.180 | - |
| predicted_OBP | 0.317 | - |
| predicted_R | 0.594 | - |
| predicted_RBI | 0.560 | - |
| predicted_SLG | 0.408 | - |
| predicted_SO | 0.669 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | 0.026 |
| predicted_3B | 0.028 | 0.005 |
| predicted_AB | 6.413 | 2.263 |
| predicted_AVG | 0.224 | -0.002 |
| predicted_BB | 1.049 | 0.420 |
| predicted_H | 1.435 | 0.495 |
| predicted_HBP | 0.003 | - |
| predicted_HR | 0.291 | 0.111 |
| predicted_OBP | 0.325 | 0.008 |
| predicted_R | 0.788 | 0.194 |
| predicted_RBI | 0.897 | 0.337 |
| predicted_SLG | 0.399 | -0.009 |
| predicted_SO | 1.026 | 0.357 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.129 | 0.000 |
| predicted_3B | 0.028 | 0.000 |
| predicted_AB | 6.413 | 0.000 |
| predicted_AVG | 0.214 | -0.010 |
| predicted_BB | 1.034 | -0.015 |
| predicted_H | 1.374 | -0.061 |
| predicted_HBP | 0.003 | 0.000 |
| predicted_HR | 0.278 | -0.013 |
| predicted_OBP | 0.323 | -0.002 |
| predicted_R | 0.731 | -0.057 |
| predicted_RBI | 0.832 | -0.065 |
| predicted_SLG | 0.373 | -0.025 |
| predicted_SO | 1.041 | 0.015 |
AB rounded to 6 (raw=6.41), rates preserved: AVG=0.214 HR/AB=0.043
| 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.129 |
| predicted_3B | 0.000 | -0.028 |
| predicted_AB | 6.000 | -0.413 |
| predicted_AVG | 0.167 | -0.047 |
| predicted_BB | 1.000 | -0.034 |
| predicted_H | 1.000 | -0.374 |
| predicted_HR | 0.000 | -0.278 |
| predicted_OBP | 0.286 | -0.037 |
| predicted_R | 1.000 | 0.269 |
| predicted_RBI | 1.000 | 0.168 |
| predicted_SLG | 0.167 | -0.206 |
| predicted_SO | 1.000 | -0.041 |
Attached 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 | 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 | 1.000 | 0.000 | 0.000 | 0.000 | 1.000 | 0.000 | 4.000 | 2.000 | 0.0588 | 0.2381 | 0.0588 | 0.0588 | 0.0000 | 0.0588 | 0.2353 | 0.1177 |
| last_10 | 0.20 | 10 | - | 37.000 | 6.000 | 0.000 | 0.000 | 1.000 | 6.000 | 3.000 | 5.000 | 5.000 | 0.1622 | 0.2619 | 0.2432 | 0.1622 | 0.0270 | 0.1622 | 0.1351 | 0.1351 |
| season | 0.60 | 49 | - | 661.000 | 195.000 | 18.000 | 4.000 | 46.000 | 109.000 | 104.000 | 110.000 | 117.000 | 0.2950 | 0.3930 | 0.5431 | 0.2950 | 0.0696 | 0.1649 | 0.1664 | 0.1770 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1630 |
| predicted_3B | 0.0340 |
| predicted_AB | 9.3040 |
| predicted_AVG | 0.2223 |
| predicted_BB | 1.5850 |
| predicted_H | 2.0680 |
| predicted_HBP | 0.0030 |
| predicted_HR | 0.4340 |
| predicted_OBP | 0.3350 |
| predicted_R | 1.0360 |
| predicted_RBI | 1.3280 |
| predicted_SLG | 0.3871 |
| predicted_SO | 1.4810 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1030 | 0.1630 | 0.1293 | model_form_blend |
| predicted_3B | 0.0230 | 0.0340 | 0.0278 | model_form_blend |
| predicted_AB | 4.1500 | 9.3040 | 6.4132 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2223 | 0.2244 | model_form_blend |
| predicted_BB | 0.6290 | 1.5850 | 1.0488 | model_form_blend |
| predicted_H | 0.9400 | 2.0680 | 1.4353 | model_form_blend |
| predicted_HBP | - | 0.0030 | 0.0030 | form_only |
| predicted_HR | 0.1800 | 0.4340 | 0.2915 | model_form_blend |
| predicted_OBP | 0.3170 | 0.3350 | 0.3249 | model_form_blend |
| predicted_R | 0.5940 | 1.0360 | 0.7881 | model_form_blend |
| predicted_RBI | 0.5600 | 1.3280 | 0.8972 | model_form_blend |
| predicted_SLG | 0.4080 | 0.3871 | 0.3988 | model_form_blend |
| predicted_SO | 0.6690 | 1.4810 | 1.0256 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 175 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 4 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.295 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 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 | 20260610_STL@NYM |
| game_type | full |
| mlbID | 665742 |
| playerID | 665742 |
| playerName | Juan Soto |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 14.0 |
| sl_bb_percent | 13.1 |
| sl_woba | 0.377 |
| sl_xwoba | 0.406 |
| sl_xba | 0.287 |
| sl_xslg | 0.596 |
| sl_sweet_spot_percent | 29.7 |
| sl_barrel_batted_rate | 16.2 |
| sl_hard_hit_percent | 48.4 |
| sl_exit_velocity_avg | 92.7 |
| sl_launch_angle_avg | 15.3 |
| sl_whiff_percent | 20.9 |
| 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.250 | 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.056 | 3.000 | 4.000 | Hitting_AB | 2.821 | 3.000 | 0.179 | 0.000 |
| predicted_AVG | 0.256 | 0.000 | 0.250 | Hitting_AVG | 0.309 | 0.333 | -0.309 | -0.333 |
| predicted_BB | 0.222 | 0.000 | 0.000 | Hitting_BB | 0.231 | 0.000 | -0.231 | 0.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.872 | 1.000 | -0.872 | -1.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.077 | 0.000 | -0.077 | 0.000 |
| predicted_OBP | 0.295 | 0.000 | 0.250 | Hitting_OBP | 0.364 | 0.333 | -0.364 | -0.333 |
| predicted_R | 0.361 | 0.000 | 0.000 | Hitting_R | 0.333 | 0.000 | -0.333 | 0.000 |
| predicted_RBI | 0.170 | 0.000 | 0.000 | Hitting_RBI | 0.256 | 0.000 | -0.256 | 0.000 |
| predicted_SLG | 0.439 | 0.000 | 0.250 | Hitting_SLG | 0.473 | 0.667 | -0.473 | -0.667 |
| predicted_SO | 0.639 | 1.000 | 1.000 | Hitting_SO | 0.590 | 0.000 | 0.410 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 0 |
| Worse Metrics | 11 |
| Biggest Boost | predicted_SO: 0.6390 -> 1.0000 (boost 0.3610, worse) |
| Biggest Deboost | predicted_R: 0.3610 -> 0.0000 (deboost -0.3610, 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.0560 -> 3.6032 (boost 0.5472, 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.4496 -> 0.3370 (deboost -0.1126, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_AB: 3.6032 -> 4.0000 (boost 0.3968, better) | predicted_2B: 0.2684 -> 0.0000 (deboost -0.2684, worse) | AB rounded to 4 (raw=3.60), rates preserved: AVG=0.175 HR/AB=0.029 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3799 -> 0.0000 (deboost -0.3799, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1749 -> 0.2500 (boost 0.0751, better) | predicted_SLG: 0.3370 -> 0.2500 (deboost -0.0870, 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: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3370 (boost 0.0870, better) | predicted_AVG: 0.2500 -> 0.1749 (deboost -0.0751, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "676724",
"player_name": "Jared Young",
"position": "1B",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.25,
"predicted_3B": 0.0,
"predicted_AB": 3.056,
"predicted_AVG": 0.256,
"predicted_BB": 0.222,
"predicted_H": 0.3,
"predicted_HR": 0.06,
"predicted_OBP": 0.295,
"predicted_R": 0.361,
"predicted_RBI": 0.17,
"predicted_SLG": 0.439,
"predicted_SO": 0.639
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local 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.0012,
"predicted_AB": 3.6032,
"predicted_AVG": 0.2626,
"predicted_BB": 0.2611,
"predicted_H": 0.6583,
"predicted_HBP": 0.086,
"predicted_HR": 0.1093,
"predicted_OBP": 0.3106,
"predicted_R": 0.4095,
"predicted_RBI": 0.2866,
"predicted_SLG": 0.4496,
"predicted_SO": 0.7626
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.2684,
"delta": 0.0184,
"percent_delta": 0.0736,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0012,
"delta": 0.0012,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.056,
"after": 3.6032,
"delta": 0.5472,
"percent_delta": 0.1791,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.2626,
"delta": 0.0066,
"percent_delta": 0.0258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.2611,
"delta": 0.0391,
"percent_delta": 0.1761,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.3,
"after": 0.6583,
"delta": 0.3583,
"percent_delta": 1.1943,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.1093,
"delta": 0.0493,
"percent_delta": 0.8217,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.3106,
"delta": 0.0156,
"percent_delta": 0.0529,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.361,
"after": 0.4095,
"delta": 0.0485,
"percent_delta": 0.1343,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.2866,
"delta": 0.1166,
"percent_delta": 0.6859,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.439,
"after": 0.4496,
"delta": 0.0106,
"percent_delta": 0.0241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.639,
"after": 0.7626,
"delta": 0.1236,
"percent_delta": 0.1934,
"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.056,
"after": 3.6032,
"delta": 0.5472,
"percent_delta": 0.1791,
"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.2684,
"predicted_3B": 0.0012,
"predicted_AB": 3.6032,
"predicted_AVG": 0.1749,
"predicted_BB": 0.2573,
"predicted_H": 0.6303,
"predicted_HBP": 0.086,
"predicted_HR": 0.1044,
"predicted_OBP": 0.2299,
"predicted_R": 0.3799,
"predicted_RBI": 0.2659,
"predicted_SLG": 0.337,
"predicted_SO": 0.7737
},
"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.0012,
"after": 0.0012,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6032,
"after": 3.6032,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2626,
"after": 0.1749,
"delta": -0.0877,
"percent_delta": -0.334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2611,
"after": 0.2573,
"delta": -0.0038,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6583,
"after": 0.6303,
"delta": -0.028,
"percent_delta": -0.0425,
"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.1093,
"after": 0.1044,
"delta": -0.0049,
"percent_delta": -0.0448,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3106,
"after": 0.2299,
"delta": -0.0807,
"percent_delta": -0.2598,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4095,
"after": 0.3799,
"delta": -0.0296,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2866,
"after": 0.2659,
"delta": -0.0207,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4496,
"after": 0.337,
"delta": -0.1126,
"percent_delta": -0.2504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7626,
"after": 0.7737,
"delta": 0.0111,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4496,
"after": 0.337,
"delta": -0.1126,
"percent_delta": -0.2504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.60), rates preserved: AVG=0.175 HR/AB=0.029",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.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.0012,
"after": 0.0,
"delta": -0.0012,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.6032,
"after": 4.0,
"delta": 0.3968,
"percent_delta": 0.1101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2573,
"after": 0.0,
"delta": -0.2573,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6303,
"after": 1.0,
"delta": 0.3697,
"percent_delta": 0.5865,
"direction": "boost",
"projection_effect": "better",
"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.1044,
"after": 0.0,
"delta": -0.1044,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.2659,
"after": 0.0,
"delta": -0.2659,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7737,
"after": 1.0,
"delta": 0.2263,
"percent_delta": 0.2925,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.6032,
"after": 4.0,
"delta": 0.3968,
"percent_delta": 0.1101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.2684,
"after": 0.0,
"delta": -0.2684,
"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.3799,
"after": 0.0,
"delta": -0.3799,
"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.3799,
"after": 0.0,
"delta": -0.3799,
"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.1749,
"after": 0.25,
"delta": 0.0751,
"percent_delta": 0.4294,
"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.2299,
"after": 0.25,
"delta": 0.0201,
"percent_delta": 0.0874,
"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.337,
"after": 0.25,
"delta": -0.087,
"percent_delta": -0.2582,
"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.1749,
"after": 0.25,
"delta": 0.0751,
"percent_delta": 0.4294,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.337,
"after": 0.25,
"delta": -0.087,
"percent_delta": -0.2582,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 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.1749,
"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.2299,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.337,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1749,
"delta": -0.0751,
"percent_delta": -0.3003,
"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.2299,
"delta": -0.0201,
"percent_delta": -0.0803,
"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.337,
"delta": 0.087,
"percent_delta": 0.348,
"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.337,
"delta": 0.087,
"percent_delta": 0.348,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1749,
"delta": -0.0751,
"percent_delta": -0.3003,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.056,
"after": 3.0,
"delta": -0.056,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.256,
"after": 0.1749,
"delta": -0.0811,
"percent_delta": -0.3168,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.222,
"after": 0.0,
"delta": -0.222,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.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.295,
"after": 0.2299,
"delta": -0.0651,
"percent_delta": -0.2207,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.361,
"after": 0.0,
"delta": -0.361,
"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.439,
"after": 0.337,
"delta": -0.102,
"percent_delta": -0.2323,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.639,
"after": 1.0,
"delta": 0.361,
"percent_delta": 0.5649,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 11,
"boosted_metrics": 1,
"deboosted_metrics": 10,
"better_metrics": 0,
"worse_metrics": 11,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.639,
"after": 1.0,
"delta": 0.361,
"percent_delta": 0.5649,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.361,
"after": 0.0,
"delta": -0.361,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.250 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.056 | - |
| predicted_AVG | 0.256 | - |
| predicted_BB | 0.222 | - |
| predicted_H | 0.300 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.295 | - |
| predicted_R | 0.361 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.439 | - |
| predicted_SO | 0.639 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.018 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 3.603 | 0.547 |
| predicted_AVG | 0.263 | 0.007 |
| predicted_BB | 0.261 | 0.039 |
| predicted_H | 0.658 | 0.358 |
| predicted_HBP | 0.086 | - |
| predicted_HR | 0.109 | 0.049 |
| predicted_OBP | 0.311 | 0.016 |
| predicted_R | 0.409 | 0.048 |
| predicted_RBI | 0.287 | 0.117 |
| predicted_SLG | 0.450 | 0.011 |
| predicted_SO | 0.763 | 0.124 |
Step 3: 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.001 | 0.000 |
| predicted_AB | 3.603 | 0.000 |
| predicted_AVG | 0.175 | -0.088 |
| predicted_BB | 0.257 | -0.004 |
| predicted_H | 0.630 | -0.028 |
| predicted_HBP | 0.086 | 0.000 |
| predicted_HR | 0.104 | -0.005 |
| predicted_OBP | 0.230 | -0.081 |
| predicted_R | 0.380 | -0.030 |
| predicted_RBI | 0.266 | -0.021 |
| predicted_SLG | 0.337 | -0.113 |
| predicted_SO | 0.774 | 0.011 |
AB rounded to 4 (raw=3.60), rates preserved: AVG=0.175 HR/AB=0.029
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 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.268 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | 0.397 |
| predicted_AVG | 0.250 | 0.075 |
| predicted_BB | 0.000 | -0.257 |
| predicted_H | 1.000 | 0.370 |
| predicted_HR | 0.000 | -0.104 |
| predicted_OBP | 0.250 | 0.020 |
| predicted_R | 0.000 | -0.380 |
| predicted_RBI | 0.000 | -0.266 |
| predicted_SLG | 0.250 | -0.087 |
| predicted_SO | 1.000 | 0.226 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -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 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 4.000 | 1.000 | 0.000 | 1.000 | 2.000 | 1.000 | 1.000 | 3.000 | 0.2222 | 0.3000 | 0.4444 | 0.2222 | 0.0556 | 0.1111 | 0.0556 | 0.1667 |
| last_10 | 0.20 | 10 | - | 37.000 | 9.000 | 2.000 | 0.000 | 3.000 | 5.000 | 4.000 | 3.000 | 10.000 | 0.2432 | 0.3171 | 0.5405 | 0.2432 | 0.0811 | 0.1351 | 0.0811 | 0.2703 |
| season | 0.60 | 21 | - | 110.000 | 34.000 | 9.000 | 0.000 | 3.000 | 9.000 | 13.000 | 8.000 | 23.000 | 0.3091 | 0.3613 | 0.4727 | 0.3091 | 0.0273 | 0.0818 | 0.0727 | 0.2091 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2970 |
| predicted_3B | 0.0030 |
| predicted_AB | 4.4550 |
| predicted_AVG | 0.2729 |
| predicted_BB | 0.3220 |
| predicted_H | 1.2160 |
| predicted_HBP | 0.0860 |
| predicted_HR | 0.1860 |
| predicted_OBP | 0.3348 |
| predicted_R | 0.4850 |
| predicted_RBI | 0.4680 |
| predicted_SLG | 0.4662 |
| predicted_SO | 0.9550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.2970 | 0.2684 | model_form_blend |
| predicted_3B | 0.0000 | 0.0030 | 0.0012 | model_form_blend |
| predicted_AB | 3.0560 | 4.4550 | 3.6032 | model_form_blend |
| predicted_AVG | 0.2560 | 0.2729 | 0.2626 | model_form_blend |
| predicted_BB | 0.2220 | 0.3220 | 0.2611 | model_form_blend |
| predicted_H | 0.3000 | 1.2160 | 0.6583 | model_form_blend |
| predicted_HBP | - | 0.0860 | 0.0860 | form_only |
| predicted_HR | 0.0600 | 0.1860 | 0.1093 | model_form_blend |
| predicted_OBP | 0.2950 | 0.3348 | 0.3106 | model_form_blend |
| predicted_R | 0.3610 | 0.4850 | 0.4095 | model_form_blend |
| predicted_RBI | 0.1700 | 0.4680 | 0.2866 | model_form_blend |
| predicted_SLG | 0.4390 | 0.4662 | 0.4496 | model_form_blend |
| predicted_SO | 0.6390 | 0.9550 | 0.7626 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 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.309 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 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 | 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 | 20260610_STL@NYM |
| game_type | full |
| mlbID | 676724 |
| playerID | 676724 |
| playerName | Jared Young |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.5 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.365 |
| sl_xwoba | 0.378 |
| sl_xba | 0.266 |
| sl_xslg | 0.494 |
| sl_sweet_spot_percent | 29.8 |
| sl_barrel_batted_rate | 14.9 |
| sl_hard_hit_percent | 51.1 |
| sl_exit_velocity_avg | 91.8 |
| sl_launch_angle_avg | 3.1 |
| sl_whiff_percent | 27.3 |
| 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.156 | 0.000 | 0.000 | Hitting_2B | 0.156 | 0.000 | -0.156 | 0.000 |
| predicted_3B | 0.005 | 0.000 | 0.000 | Hitting_3B | 0.005 | 0.000 | -0.005 | 0.000 |
| predicted_AB | 4.240 | 4.000 | 6.000 | Hitting_AB | 3.816 | 4.000 | 0.184 | 0.000 |
| predicted_AVG | 0.253 | 0.250 | 0.333 | Hitting_AVG | 0.266 | 0.000 | -0.016 | 0.250 |
| predicted_BB | 0.308 | 0.000 | 0.000 | Hitting_BB | 0.307 | 0.000 | -0.307 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.047 | 0.000 | -0.047 | 0.000 |
| predicted_H | 1.070 | 1.000 | 2.000 | Hitting_H | 1.014 | 0.000 | -0.014 | 1.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.071 | 0.000 | -0.071 | 0.000 |
| predicted_OBP | 0.324 | 0.250 | 0.333 | Hitting_OBP | 0.333 | 0.000 | -0.083 | 0.250 |
| predicted_R | 0.583 | 0.000 | 1.000 | Hitting_R | 0.580 | 0.000 | -0.580 | 0.000 |
| predicted_RBI | 0.490 | 0.000 | 1.000 | Hitting_RBI | 0.481 | 0.000 | -0.481 | 0.000 |
| predicted_SLG | 0.459 | 0.250 | 0.333 | Hitting_SLG | 0.365 | 0.000 | -0.115 | 0.250 |
| predicted_SO | 0.834 | 1.000 | 1.000 | Hitting_SO | 0.830 | 1.000 | 0.170 | 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.8340 -> 1.0000 (boost 0.1660, worse) |
| Biggest Deboost | predicted_R: 0.5830 -> 0.0000 (deboost -0.5830, 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.2400 -> 6.4714 (boost 2.2314, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.7994 -> 1.7229 (deboost -0.0765, 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_H: 1.7229 -> 2.0000 (boost 0.2771, better) | predicted_AB: 6.4714 -> 6.0000 (deboost -0.4714, worse) | AB rounded to 6 (raw=6.47), rates preserved: AVG=0.266 HR/AB=0.038 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9209 -> 1.0000 (boost 0.0791, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.2662 -> 0.3330 (boost 0.0668, better) | predicted_SLG: 0.4360 -> 0.3330 (deboost -0.1030, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.3330 -> 0.4360 (boost 0.1030, better) | predicted_AVG: 0.3330 -> 0.2662 (deboost -0.0668, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "701807",
"player_name": "Carson Benge",
"position": "RF",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.156,
"predicted_3B": 0.005,
"predicted_AB": 4.24,
"predicted_AVG": 0.253,
"predicted_BB": 0.308,
"predicted_H": 1.07,
"predicted_HR": 0.17,
"predicted_OBP": 0.324,
"predicted_R": 0.583,
"predicted_RBI": 0.49,
"predicted_SLG": 0.459,
"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.2296,
"predicted_3B": 0.0636,
"predicted_AB": 6.4714,
"predicted_AVG": 0.2706,
"predicted_BB": 0.4124,
"predicted_H": 1.7994,
"predicted_HBP": 0.11,
"predicted_HR": 0.259,
"predicted_OBP": 0.331,
"predicted_R": 0.9926,
"predicted_RBI": 0.7833,
"predicted_SLG": 0.467,
"predicted_SO": 1.3775
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.156,
"after": 0.2296,
"delta": 0.0736,
"percent_delta": 0.4718,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.005,
"after": 0.0636,
"delta": 0.0586,
"percent_delta": 11.72,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.24,
"after": 6.4714,
"delta": 2.2314,
"percent_delta": 0.5263,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.253,
"after": 0.2706,
"delta": 0.0176,
"percent_delta": 0.0696,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.308,
"after": 0.4124,
"delta": 0.1044,
"percent_delta": 0.339,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.07,
"after": 1.7994,
"delta": 0.7294,
"percent_delta": 0.6817,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.259,
"delta": 0.089,
"percent_delta": 0.5235,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.324,
"after": 0.331,
"delta": 0.007,
"percent_delta": 0.0216,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.583,
"after": 0.9926,
"delta": 0.4096,
"percent_delta": 0.7026,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.7833,
"delta": 0.2933,
"percent_delta": 0.5986,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.459,
"after": 0.467,
"delta": 0.008,
"percent_delta": 0.0174,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.834,
"after": 1.3775,
"delta": 0.5435,
"percent_delta": 0.6517,
"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.24,
"after": 6.4714,
"delta": 2.2314,
"percent_delta": 0.5263,
"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.2296,
"predicted_3B": 0.0636,
"predicted_AB": 6.4714,
"predicted_AVG": 0.2662,
"predicted_BB": 0.4064,
"predicted_H": 1.7229,
"predicted_HBP": 0.11,
"predicted_HR": 0.2473,
"predicted_OBP": 0.3096,
"predicted_R": 0.9209,
"predicted_RBI": 0.7267,
"predicted_SLG": 0.436,
"predicted_SO": 1.3976
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2296,
"after": 0.2296,
"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.4714,
"after": 6.4714,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2706,
"after": 0.2662,
"delta": -0.0044,
"percent_delta": -0.0163,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.4124,
"after": 0.4064,
"delta": -0.006,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7994,
"after": 1.7229,
"delta": -0.0765,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.11,
"after": 0.11,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.259,
"after": 0.2473,
"delta": -0.0117,
"percent_delta": -0.0452,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.331,
"after": 0.3096,
"delta": -0.0214,
"percent_delta": -0.0647,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9926,
"after": 0.9209,
"delta": -0.0717,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7833,
"after": 0.7267,
"delta": -0.0566,
"percent_delta": -0.0723,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.467,
"after": 0.436,
"delta": -0.031,
"percent_delta": -0.0664,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3775,
"after": 1.3976,
"delta": 0.0201,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.7994,
"after": 1.7229,
"delta": -0.0765,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.47), rates preserved: AVG=0.266 HR/AB=0.038",
"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.2296,
"after": 0.0,
"delta": -0.2296,
"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.4714,
"after": 6.0,
"delta": -0.4714,
"percent_delta": -0.0728,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4064,
"after": 0.0,
"delta": -0.4064,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7229,
"after": 2.0,
"delta": 0.2771,
"percent_delta": 0.1608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2473,
"after": 0.0,
"delta": -0.2473,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7267,
"after": 1.0,
"delta": 0.2733,
"percent_delta": 0.3761,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3976,
"after": 1.0,
"delta": -0.3976,
"percent_delta": -0.2845,
"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_H",
"before": 1.7229,
"after": 2.0,
"delta": 0.2771,
"percent_delta": 0.1608,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 6.4714,
"after": 6.0,
"delta": -0.4714,
"percent_delta": -0.0728,
"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.9209,
"after": 1.0,
"delta": 0.0791,
"percent_delta": 0.0859,
"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.9209,
"after": 1.0,
"delta": 0.0791,
"percent_delta": 0.0859,
"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.2662,
"after": 0.333,
"delta": 0.0668,
"percent_delta": 0.2509,
"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.3096,
"after": 0.333,
"delta": 0.0234,
"percent_delta": 0.0756,
"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.436,
"after": 0.333,
"delta": -0.103,
"percent_delta": -0.2362,
"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.2662,
"after": 0.333,
"delta": 0.0668,
"percent_delta": 0.2509,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.436,
"after": 0.333,
"delta": -0.103,
"percent_delta": -0.2362,
"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": 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": 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": 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.2662,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3096,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.436,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2662,
"delta": -0.0668,
"percent_delta": -0.2005,
"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.3096,
"delta": -0.0234,
"percent_delta": -0.0703,
"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.436,
"delta": 0.103,
"percent_delta": 0.3094,
"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.436,
"delta": 0.103,
"percent_delta": 0.3094,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2662,
"delta": -0.0668,
"percent_delta": -0.2005,
"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.005,
"after": 0.0,
"delta": -0.005,
"percent_delta": -1.0,
"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.253,
"after": 0.2662,
"delta": 0.0132,
"percent_delta": 0.0522,
"direction": "boost",
"projection_effect": "better",
"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": 1.07,
"after": 1.0,
"delta": -0.07,
"percent_delta": -0.0654,
"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.324,
"after": 0.3096,
"delta": -0.0144,
"percent_delta": -0.0444,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.583,
"after": 0.0,
"delta": -0.583,
"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.459,
"after": 0.436,
"delta": -0.023,
"percent_delta": -0.0501,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.834,
"after": 1.0,
"delta": 0.166,
"percent_delta": 0.199,
"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.834,
"after": 1.0,
"delta": 0.166,
"percent_delta": 0.199,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.583,
"after": 0.0,
"delta": -0.583,
"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.005 | - |
| predicted_AB | 4.240 | - |
| predicted_AVG | 0.253 | - |
| predicted_BB | 0.308 | - |
| predicted_H | 1.070 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.324 | - |
| predicted_R | 0.583 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.459 | - |
| 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.230 | 0.074 |
| predicted_3B | 0.064 | 0.059 |
| predicted_AB | 6.471 | 2.231 |
| predicted_AVG | 0.271 | 0.018 |
| predicted_BB | 0.412 | 0.104 |
| predicted_H | 1.799 | 0.729 |
| predicted_HBP | 0.110 | - |
| predicted_HR | 0.259 | 0.089 |
| predicted_OBP | 0.331 | 0.007 |
| predicted_R | 0.993 | 0.410 |
| predicted_RBI | 0.783 | 0.293 |
| predicted_SLG | 0.467 | 0.008 |
| predicted_SO | 1.377 | 0.543 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.230 | 0.000 |
| predicted_3B | 0.064 | 0.000 |
| predicted_AB | 6.471 | 0.000 |
| predicted_AVG | 0.266 | -0.004 |
| predicted_BB | 0.406 | -0.006 |
| predicted_H | 1.723 | -0.077 |
| predicted_HBP | 0.110 | 0.000 |
| predicted_HR | 0.247 | -0.012 |
| predicted_OBP | 0.310 | -0.021 |
| predicted_R | 0.921 | -0.072 |
| predicted_RBI | 0.727 | -0.057 |
| predicted_SLG | 0.436 | -0.031 |
| predicted_SO | 1.398 | 0.020 |
AB rounded to 6 (raw=6.47), rates preserved: AVG=0.266 HR/AB=0.038
| 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.230 |
| predicted_3B | 0.000 | -0.064 |
| predicted_AB | 6.000 | -0.471 |
| predicted_AVG | 0.333 | 0.067 |
| predicted_BB | 0.000 | -0.406 |
| predicted_H | 2.000 | 0.277 |
| predicted_HR | 0.000 | -0.247 |
| predicted_OBP | 0.333 | 0.023 |
| predicted_R | 1.000 | 0.079 |
| predicted_RBI | 1.000 | 0.273 |
| predicted_SLG | 0.333 | -0.103 |
| predicted_SO | 1.000 | -0.398 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | -2.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 | 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 | 7.000 | 0.000 | 1.000 | 1.000 | 2.000 | 3.000 | 0.000 | 4.000 | 0.3333 | 0.3333 | 0.5714 | 0.3333 | 0.0476 | 0.0952 | 0.0000 | 0.1905 |
| last_10 | 0.20 | 10 | - | 41.000 | 14.000 | 2.000 | 1.000 | 4.000 | 6.000 | 9.000 | 2.000 | 11.000 | 0.3415 | 0.3721 | 0.7317 | 0.3415 | 0.0976 | 0.1463 | 0.0488 | 0.2683 |
| season | 0.60 | 62 | - | 809.000 | 215.000 | 33.000 | 1.000 | 15.000 | 102.000 | 123.000 | 65.000 | 176.000 | 0.2658 | 0.3326 | 0.3646 | 0.2658 | 0.0185 | 0.1261 | 0.0804 | 0.2175 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3230 |
| predicted_3B | 0.1380 |
| predicted_AB | 9.3060 |
| predicted_AVG | 0.2930 |
| predicted_BB | 0.5450 |
| predicted_H | 2.7260 |
| predicted_HBP | 0.1100 |
| predicted_HR | 0.3720 |
| predicted_OBP | 0.3398 |
| predicted_R | 1.5130 |
| predicted_RBI | 1.1560 |
| predicted_SLG | 0.4771 |
| predicted_SO | 2.0680 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1560 | 0.3230 | 0.2296 | model_form_blend |
| predicted_3B | 0.0050 | 0.1380 | 0.0636 | model_form_blend |
| predicted_AB | 4.2400 | 9.3060 | 6.4714 | model_form_blend |
| predicted_AVG | 0.2530 | 0.2930 | 0.2706 | model_form_blend |
| predicted_BB | 0.3080 | 0.5450 | 0.4124 | model_form_blend |
| predicted_H | 1.0700 | 2.7260 | 1.7994 | model_form_blend |
| predicted_HBP | - | 0.1100 | 0.1100 | form_only |
| predicted_HR | 0.1700 | 0.3720 | 0.2590 | model_form_blend |
| predicted_OBP | 0.3240 | 0.3398 | 0.3310 | model_form_blend |
| predicted_R | 0.5830 | 1.5130 | 0.9926 | model_form_blend |
| predicted_RBI | 0.4900 | 1.1560 | 0.7833 | model_form_blend |
| predicted_SLG | 0.4590 | 0.4771 | 0.4670 | model_form_blend |
| predicted_SO | 0.8340 | 2.0680 | 1.3775 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 211 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.266 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | RF |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 701807 |
| playerID | 701807 |
| playerName | Carson Benge |
| pos | OF |
| started | True |
| startingPosition | RF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.5 |
| sl_bb_percent | 6.8 |
| sl_woba | 0.32 |
| sl_xwoba | 0.353 |
| sl_xba | 0.287 |
| sl_xslg | 0.469 |
| sl_sweet_spot_percent | 42.4 |
| sl_barrel_batted_rate | 9.6 |
| sl_hard_hit_percent | 44.6 |
| sl_exit_velocity_avg | 90.0 |
| sl_launch_angle_avg | 10.8 |
| sl_whiff_percent | 21.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.115 | 0.000 | 0.000 | Hitting_2B | 0.114 | 0.000 | -0.114 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.405 | 3.000 | 6.000 | Hitting_AB | 3.379 | 4.000 | -0.379 | -1.000 |
| predicted_AVG | 0.250 | 0.333 | 0.167 | Hitting_AVG | 0.235 | 0.250 | 0.098 | 0.083 |
| predicted_BB | 0.328 | 0.000 | 0.000 | Hitting_BB | 0.326 | 0.000 | -0.326 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.730 | 1.000 | 1.000 | Hitting_H | 0.795 | 1.000 | 0.205 | 0.000 |
| predicted_HR | 0.130 | 1.000 | 0.000 | Hitting_HR | 0.152 | 1.000 | 0.848 | 0.000 |
| predicted_OBP | 0.304 | 0.333 | 0.167 | Hitting_OBP | 0.313 | 0.250 | 0.021 | 0.083 |
| predicted_R | 0.366 | 1.000 | 1.000 | Hitting_R | 0.371 | 1.000 | 0.629 | 0.000 |
| predicted_RBI | 0.390 | 1.000 | 1.000 | Hitting_RBI | 0.341 | 2.000 | 0.659 | -1.000 |
| predicted_SLG | 0.418 | 1.333 | 0.167 | Hitting_SLG | 0.404 | 1.000 | 0.930 | 0.333 |
| predicted_SO | 0.847 | 0.000 | 2.000 | Hitting_SO | 0.841 | 2.000 | -0.841 | -2.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_HR: 0.1300 -> 1.0000 (boost 0.8700, better) |
| Biggest Deboost | predicted_SO: 0.8470 -> 0.0000 (deboost -0.8470, better) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.4050 -> 6.2327 (boost 2.8277, 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_H: 1.5203 -> 1.4557 (deboost -0.0646, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 1 | 7 | predicted_SO: 1.5627 -> 2.0000 (boost 0.4373, worse) | predicted_BB: 0.4911 -> 0.0000 (deboost -0.4911, worse) | AB rounded to 6 (raw=6.23), rates preserved: AVG=0.234 HR/AB=0.043 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7498 -> 1.0000 (boost 0.2502, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4198 -> 0.1670 (deboost -0.2528, 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_HR: 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.4198 (boost 0.2528, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "682626",
"player_name": "Francisco Alvarez",
"position": "C",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.115,
"predicted_3B": 0.0,
"predicted_AB": 3.405,
"predicted_AVG": 0.25,
"predicted_BB": 0.328,
"predicted_H": 0.73,
"predicted_HR": 0.13,
"predicted_OBP": 0.304,
"predicted_R": 0.366,
"predicted_RBI": 0.39,
"predicted_SLG": 0.418,
"predicted_SO": 0.847
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3608,
"predicted_3B": 0.0009,
"predicted_AB": 6.2327,
"predicted_AVG": 0.2531,
"predicted_BB": 0.4984,
"predicted_H": 1.5203,
"predicted_HBP": 0.147,
"predicted_HR": 0.2787,
"predicted_OBP": 0.3089,
"predicted_R": 0.8082,
"predicted_RBI": 0.8621,
"predicted_SLG": 0.4402,
"predicted_SO": 1.5402
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.115,
"after": 0.3608,
"delta": 0.2458,
"percent_delta": 2.1374,
"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.405,
"after": 6.2327,
"delta": 2.8277,
"percent_delta": 0.8305,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2531,
"delta": 0.0031,
"percent_delta": 0.0124,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.328,
"after": 0.4984,
"delta": 0.1704,
"percent_delta": 0.5195,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.73,
"after": 1.5203,
"delta": 0.7903,
"percent_delta": 1.0826,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.2787,
"delta": 0.1487,
"percent_delta": 1.1438,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3089,
"delta": 0.0049,
"percent_delta": 0.0161,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.366,
"after": 0.8082,
"delta": 0.4422,
"percent_delta": 1.2082,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.8621,
"delta": 0.4721,
"percent_delta": 1.2105,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.418,
"after": 0.4402,
"delta": 0.0222,
"percent_delta": 0.0531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.847,
"after": 1.5402,
"delta": 0.6932,
"percent_delta": 0.8184,
"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.405,
"after": 6.2327,
"delta": 2.8277,
"percent_delta": 0.8305,
"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": 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.3608,
"predicted_3B": 0.0009,
"predicted_AB": 6.2327,
"predicted_AVG": 0.2336,
"predicted_BB": 0.4911,
"predicted_H": 1.4557,
"predicted_HBP": 0.147,
"predicted_HR": 0.2662,
"predicted_OBP": 0.2895,
"predicted_R": 0.7498,
"predicted_RBI": 0.7999,
"predicted_SLG": 0.4198,
"predicted_SO": 1.5627
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3608,
"after": 0.3608,
"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.2327,
"after": 6.2327,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2531,
"after": 0.2336,
"delta": -0.0195,
"percent_delta": -0.077,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4984,
"after": 0.4911,
"delta": -0.0073,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.5203,
"after": 1.4557,
"delta": -0.0646,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.2787,
"after": 0.2662,
"delta": -0.0125,
"percent_delta": -0.0449,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3089,
"after": 0.2895,
"delta": -0.0194,
"percent_delta": -0.0628,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8082,
"after": 0.7498,
"delta": -0.0584,
"percent_delta": -0.0723,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.8621,
"after": 0.7999,
"delta": -0.0622,
"percent_delta": -0.0721,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4402,
"after": 0.4198,
"delta": -0.0204,
"percent_delta": -0.0463,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5402,
"after": 1.5627,
"delta": 0.0225,
"percent_delta": 0.0146,
"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.5203,
"after": 1.4557,
"delta": -0.0646,
"percent_delta": -0.0425,
"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.234 HR/AB=0.043",
"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.3608,
"after": 0.0,
"delta": -0.3608,
"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.2327,
"after": 6.0,
"delta": -0.2327,
"percent_delta": -0.0373,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4911,
"after": 0.0,
"delta": -0.4911,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.4557,
"after": 1.0,
"delta": -0.4557,
"percent_delta": -0.313,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.2662,
"after": 0.0,
"delta": -0.2662,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7999,
"after": 1.0,
"delta": 0.2001,
"percent_delta": 0.2502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5627,
"after": 2.0,
"delta": 0.4373,
"percent_delta": 0.2798,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.5627,
"after": 2.0,
"delta": 0.4373,
"percent_delta": 0.2798,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4911,
"after": 0.0,
"delta": -0.4911,
"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.7498,
"after": 1.0,
"delta": 0.2502,
"percent_delta": 0.3337,
"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.7498,
"after": 1.0,
"delta": 0.2502,
"percent_delta": 0.3337,
"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.2336,
"after": 0.167,
"delta": -0.0666,
"percent_delta": -0.2851,
"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.2895,
"after": 0.167,
"delta": -0.1225,
"percent_delta": -0.4231,
"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.4198,
"after": 0.167,
"delta": -0.2528,
"percent_delta": -0.6022,
"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.4198,
"after": 0.167,
"delta": -0.2528,
"percent_delta": -0.6022,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 2,
"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": 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.2336,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2895,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4198,
"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.2336,
"delta": 0.0666,
"percent_delta": 0.3985,
"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.167,
"after": 0.2895,
"delta": 0.1225,
"percent_delta": 0.7338,
"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.4198,
"delta": 0.2528,
"percent_delta": 1.514,
"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.4198,
"delta": 0.2528,
"percent_delta": 1.514,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.405,
"after": 3.0,
"delta": -0.405,
"percent_delta": -0.1189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2336,
"delta": -0.0164,
"percent_delta": -0.0656,
"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.73,
"after": 1.0,
"delta": 0.27,
"percent_delta": 0.3699,
"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.304,
"after": 0.2895,
"delta": -0.0145,
"percent_delta": -0.0477,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.366,
"after": 1.0,
"delta": 0.634,
"percent_delta": 1.7322,
"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.418,
"after": 0.4198,
"delta": 0.0018,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.847,
"after": 0.0,
"delta": -0.847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 5,
"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_SO",
"before": 0.847,
"after": 0.0,
"delta": -0.847,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
},
"has_material_change": true,
"dominant_effect": "deboosted"
}
}
}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.000 | - |
| predicted_AB | 3.405 | - |
| predicted_AVG | 0.250 | - |
| predicted_BB | 0.328 | - |
| predicted_H | 0.730 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.366 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.418 | - |
| predicted_SO | 0.847 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.361 | 0.246 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 6.233 | 2.828 |
| predicted_AVG | 0.253 | 0.003 |
| predicted_BB | 0.498 | 0.170 |
| predicted_H | 1.520 | 0.790 |
| predicted_HBP | 0.147 | - |
| predicted_HR | 0.279 | 0.149 |
| predicted_OBP | 0.309 | 0.005 |
| predicted_R | 0.808 | 0.442 |
| predicted_RBI | 0.862 | 0.472 |
| predicted_SLG | 0.440 | 0.022 |
| predicted_SO | 1.540 | 0.693 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.361 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 6.233 | 0.000 |
| predicted_AVG | 0.234 | -0.019 |
| predicted_BB | 0.491 | -0.007 |
| predicted_H | 1.456 | -0.065 |
| predicted_HBP | 0.147 | 0.000 |
| predicted_HR | 0.266 | -0.013 |
| predicted_OBP | 0.289 | -0.019 |
| predicted_R | 0.750 | -0.058 |
| predicted_RBI | 0.800 | -0.062 |
| predicted_SLG | 0.420 | -0.020 |
| predicted_SO | 1.563 | 0.022 |
AB rounded to 6 (raw=6.23), rates preserved: AVG=0.234 HR/AB=0.043
| 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.361 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 6.000 | -0.233 |
| predicted_AVG | 0.167 | -0.067 |
| predicted_BB | 0.000 | -0.491 |
| predicted_H | 1.000 | -0.456 |
| predicted_HR | 0.000 | -0.266 |
| predicted_OBP | 0.167 | -0.122 |
| predicted_R | 1.000 | 0.250 |
| predicted_RBI | 1.000 | 0.200 |
| predicted_SLG | 0.167 | -0.253 |
| predicted_SO | 2.000 | 0.437 |
Attached 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 | 1.000 | 1.000 |
| PA | 3.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 | 3 | - | 13.000 | 5.000 | 3.000 | 0.000 | 1.000 | 5.000 | 4.000 | 0.000 | 3.000 | 0.3846 | 0.3846 | 0.8462 | 0.3846 | 0.0769 | 0.3846 | 0.0000 | 0.2308 |
| last_10 | 0.20 | 5 | - | 30.000 | 7.000 | 3.000 | 0.000 | 1.000 | 5.000 | 4.000 | 0.000 | 8.000 | 0.2333 | 0.2333 | 0.4333 | 0.2333 | 0.0333 | 0.1667 | 0.0000 | 0.2667 |
| season | 0.60 | 37 | - | 446.000 | 105.000 | 15.000 | 0.000 | 20.000 | 45.000 | 48.000 | 43.000 | 111.000 | 0.2354 | 0.3127 | 0.4036 | 0.2354 | 0.0448 | 0.1009 | 0.0964 | 0.2489 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6820 |
| predicted_3B | 0.0020 |
| predicted_AB | 9.9280 |
| predicted_AVG | 0.2572 |
| predicted_BB | 0.7210 |
| predicted_H | 2.5530 |
| predicted_HBP | 0.1470 |
| predicted_HR | 0.4730 |
| predicted_OBP | 0.3154 |
| predicted_R | 1.3860 |
| predicted_RBI | 1.4790 |
| predicted_SLG | 0.4693 |
| predicted_SO | 2.4460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1150 | 0.6820 | 0.3608 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.4050 | 9.9280 | 6.2327 | model_form_blend |
| predicted_AVG | 0.2500 | 0.2572 | 0.2531 | model_form_blend |
| predicted_BB | 0.3280 | 0.7210 | 0.4984 | model_form_blend |
| predicted_H | 0.7300 | 2.5530 | 1.5203 | model_form_blend |
| predicted_HBP | - | 0.1470 | 0.1470 | form_only |
| predicted_HR | 0.1300 | 0.4730 | 0.2787 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3154 | 0.3089 | model_form_blend |
| predicted_R | 0.3660 | 1.3860 | 0.8082 | model_form_blend |
| predicted_RBI | 0.3900 | 1.4790 | 0.8621 | model_form_blend |
| predicted_SLG | 0.4180 | 0.4693 | 0.4402 | model_form_blend |
| predicted_SO | 0.8470 | 2.4460 | 1.5402 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 132 |
| Season rows before report date | 132 |
| Report year | 2026 |
| Profile rows used | 131 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 1 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.235 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 1 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 2 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| 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 | DH |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 682626 |
| playerID | 682626 |
| playerName | Francisco Alvarez |
| pos | C |
| started | True |
| startingPosition | DH |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.0 |
| sl_bb_percent | 8.1 |
| sl_woba | 0.323 |
| sl_xwoba | 0.336 |
| sl_xba | 0.244 |
| sl_xslg | 0.458 |
| sl_sweet_spot_percent | 30.3 |
| sl_barrel_batted_rate | 16.9 |
| sl_hard_hit_percent | 41.6 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 9.7 |
| sl_whiff_percent | 28.9 |
| sl_swing_percent | 45.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.028 | 0.000 | 0.000 | Hitting_2B | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_3B | 0.070 | 0.000 | 0.000 | Hitting_3B | 0.070 | 0.000 | -0.070 | 0.000 |
| predicted_AB | 3.590 | 2.000 | 5.000 | Hitting_AB | 3.437 | 2.000 | -1.437 | 0.000 |
| predicted_AVG | 0.252 | 0.000 | 0.200 | Hitting_AVG | 0.266 | 0.000 | -0.266 | 0.000 |
| predicted_BB | 0.592 | 1.000 | 1.000 | Hitting_BB | 0.592 | 1.000 | 0.408 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.155 | 0.000 | -0.155 | 0.000 |
| predicted_H | 0.900 | 0.000 | 1.000 | Hitting_H | 0.915 | 0.000 | -0.915 | 0.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.056 | 0.000 | -0.056 | 0.000 |
| predicted_OBP | 0.333 | 0.333 | 0.333 | Hitting_OBP | 0.373 | 0.333 | -0.039 | 0.000 |
| predicted_R | 0.493 | 0.000 | 1.000 | Hitting_R | 0.493 | 1.000 | -0.493 | -1.000 |
| predicted_RBI | 0.350 | 0.000 | 0.000 | Hitting_RBI | 0.324 | 0.000 | -0.324 | 0.000 |
| predicted_SLG | 0.370 | 0.000 | 0.200 | Hitting_SLG | 0.365 | 0.000 | -0.365 | 0.000 |
| predicted_SO | 1.239 | 0.000 | 2.000 | Hitting_SO | 1.239 | 0.000 | -1.239 | 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.5920 -> 1.0000 (boost 0.4080, better) |
| Biggest Deboost | predicted_AB: 3.5900 -> 2.0000 (deboost -1.5900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.5900 -> 4.8139 (boost 1.2239, 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 | 1 | 3 | 1 | 3 | predicted_OBP: 0.3459 -> 0.3531 (boost 0.0072, better) | predicted_H: 1.2640 -> 1.2103 (deboost -0.0537, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 3 | 5 | 2 | 6 | predicted_SO: 1.6132 -> 2.0000 (boost 0.3868, worse) | predicted_RBI: 0.3913 -> 0.0000 (deboost -0.3913, worse) | AB rounded to 5 (raw=4.81), rates preserved: AVG=0.251 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6169 -> 1.0000 (boost 0.3831, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3461 -> 0.2000 (deboost -0.1461, 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: 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.3461 (boost 0.1461, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "805999",
"player_name": "A.J. Ewing",
"position": "CF",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.028,
"predicted_3B": 0.07,
"predicted_AB": 3.59,
"predicted_AVG": 0.252,
"predicted_BB": 0.592,
"predicted_H": 0.9,
"predicted_HR": 0.07,
"predicted_OBP": 0.333,
"predicted_R": 0.493,
"predicted_RBI": 0.35,
"predicted_SLG": 0.37,
"predicted_SO": 1.239
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1002,
"predicted_3B": 0.0721,
"predicted_AB": 4.8139,
"predicted_AVG": 0.2602,
"predicted_BB": 0.7681,
"predicted_H": 1.264,
"predicted_HBP": 0.006,
"predicted_HR": 0.0738,
"predicted_OBP": 0.3459,
"predicted_R": 0.6649,
"predicted_RBI": 0.4218,
"predicted_SLG": 0.3665,
"predicted_SO": 1.59
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.028,
"after": 0.1002,
"delta": 0.0722,
"percent_delta": 2.5786,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.07,
"after": 0.0721,
"delta": 0.0021,
"percent_delta": 0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.59,
"after": 4.8139,
"delta": 1.2239,
"percent_delta": 0.3409,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2602,
"delta": 0.0082,
"percent_delta": 0.0325,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.592,
"after": 0.7681,
"delta": 0.1761,
"percent_delta": 0.2975,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 1.264,
"delta": 0.364,
"percent_delta": 0.4044,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0738,
"delta": 0.0038,
"percent_delta": 0.0543,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.3459,
"delta": 0.0129,
"percent_delta": 0.0387,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.6649,
"delta": 0.1719,
"percent_delta": 0.3487,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.4218,
"delta": 0.0718,
"percent_delta": 0.2051,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3665,
"delta": -0.0035,
"percent_delta": -0.0095,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.239,
"after": 1.59,
"delta": 0.351,
"percent_delta": 0.2833,
"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.59,
"after": 4.8139,
"delta": 1.2239,
"percent_delta": 0.3409,
"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": 27
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.1002,
"predicted_3B": 0.0721,
"predicted_AB": 4.8139,
"predicted_AVG": 0.2514,
"predicted_BB": 0.7569,
"predicted_H": 1.2103,
"predicted_HBP": 0.006,
"predicted_HR": 0.0705,
"predicted_OBP": 0.3531,
"predicted_R": 0.6169,
"predicted_RBI": 0.3913,
"predicted_SLG": 0.3461,
"predicted_SO": 1.6132
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1002,
"after": 0.1002,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0721,
"after": 0.0721,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.8139,
"after": 4.8139,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2602,
"after": 0.2514,
"delta": -0.0088,
"percent_delta": -0.0338,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7681,
"after": 0.7569,
"delta": -0.0112,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.264,
"after": 1.2103,
"delta": -0.0537,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"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.0738,
"after": 0.0705,
"delta": -0.0033,
"percent_delta": -0.0447,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3459,
"after": 0.3531,
"delta": 0.0072,
"percent_delta": 0.0208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6649,
"after": 0.6169,
"delta": -0.048,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4218,
"after": 0.3913,
"delta": -0.0305,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3665,
"after": 0.3461,
"delta": -0.0204,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.59,
"after": 1.6132,
"delta": 0.0232,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 1,
"deboosted_metrics": 3,
"better_metrics": 1,
"worse_metrics": 3,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.3459,
"after": 0.3531,
"delta": 0.0072,
"percent_delta": 0.0208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.264,
"after": 1.2103,
"delta": -0.0537,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=4.81), rates preserved: AVG=0.251 HR/AB=0.015",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1002,
"after": 0.0,
"delta": -0.1002,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0721,
"after": 0.0,
"delta": -0.0721,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.8139,
"after": 5.0,
"delta": 0.1861,
"percent_delta": 0.0387,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7569,
"after": 1.0,
"delta": 0.2431,
"percent_delta": 0.3212,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2103,
"after": 1.0,
"delta": -0.2103,
"percent_delta": -0.1738,
"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.0705,
"after": 0.0,
"delta": -0.0705,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.3913,
"after": 0.0,
"delta": -0.3913,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6132,
"after": 2.0,
"delta": 0.3868,
"percent_delta": 0.2398,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 3,
"deboosted_metrics": 5,
"better_metrics": 2,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.6132,
"after": 2.0,
"delta": 0.3868,
"percent_delta": 0.2398,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.3913,
"after": 0.0,
"delta": -0.3913,
"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": 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": 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.6169,
"after": 1.0,
"delta": 0.3831,
"percent_delta": 0.621,
"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.6169,
"after": 1.0,
"delta": 0.3831,
"percent_delta": 0.621,
"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": 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.2514,
"after": 0.2,
"delta": -0.0514,
"percent_delta": -0.2045,
"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.3531,
"after": 0.333,
"delta": -0.0201,
"percent_delta": -0.0569,
"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.3461,
"after": 0.2,
"delta": -0.1461,
"percent_delta": -0.4221,
"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.3461,
"after": 0.2,
"delta": -0.1461,
"percent_delta": -0.4221,
"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": 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": 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": 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.2514,
"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.3531,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3461,
"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.2514,
"delta": 0.0514,
"percent_delta": 0.2571,
"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.3531,
"delta": 0.0201,
"percent_delta": 0.0604,
"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.3461,
"delta": 0.1461,
"percent_delta": 0.7305,
"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.3461,
"delta": 0.1461,
"percent_delta": 0.7305,
"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.028,
"after": 0.0,
"delta": -0.028,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 3.59,
"after": 2.0,
"delta": -1.59,
"percent_delta": -0.4429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2514,
"delta": -0.0006,
"percent_delta": -0.0024,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.592,
"after": 1.0,
"delta": 0.408,
"percent_delta": 0.6892,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.9,
"after": 0.0,
"delta": -0.9,
"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.333,
"after": 0.3531,
"delta": 0.0201,
"percent_delta": 0.0604,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.37,
"after": 0.3461,
"delta": -0.0239,
"percent_delta": -0.0646,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.239,
"after": 0.0,
"delta": -1.239,
"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.592,
"after": 1.0,
"delta": 0.408,
"percent_delta": 0.6892,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.59,
"after": 2.0,
"delta": -1.59,
"percent_delta": -0.4429,
"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.028 | - |
| predicted_3B | 0.070 | - |
| predicted_AB | 3.590 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.592 | - |
| predicted_H | 0.900 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.333 | - |
| predicted_R | 0.493 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.370 | - |
| predicted_SO | 1.239 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | 0.072 |
| predicted_3B | 0.072 | 0.002 |
| predicted_AB | 4.814 | 1.224 |
| predicted_AVG | 0.260 | 0.008 |
| predicted_BB | 0.768 | 0.176 |
| predicted_H | 1.264 | 0.364 |
| predicted_HBP | 0.006 | - |
| predicted_HR | 0.074 | 0.004 |
| predicted_OBP | 0.346 | 0.013 |
| predicted_R | 0.665 | 0.172 |
| predicted_RBI | 0.422 | 0.072 |
| predicted_SLG | 0.366 | -0.004 |
| predicted_SO | 1.590 | 0.351 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.100 | 0.000 |
| predicted_3B | 0.072 | 0.000 |
| predicted_AB | 4.814 | 0.000 |
| predicted_AVG | 0.251 | -0.009 |
| predicted_BB | 0.757 | -0.011 |
| predicted_H | 1.210 | -0.054 |
| predicted_HBP | 0.006 | 0.000 |
| predicted_HR | 0.070 | -0.003 |
| predicted_OBP | 0.353 | 0.007 |
| predicted_R | 0.617 | -0.048 |
| predicted_RBI | 0.391 | -0.031 |
| predicted_SLG | 0.346 | -0.020 |
| predicted_SO | 1.613 | 0.023 |
AB rounded to 5 (raw=4.81), rates preserved: AVG=0.251 HR/AB=0.015
| 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 | 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 | 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.100 |
| predicted_3B | 0.000 | -0.072 |
| predicted_AB | 5.000 | 0.186 |
| predicted_AVG | 0.200 | -0.051 |
| predicted_BB | 1.000 | 0.243 |
| predicted_H | 1.000 | -0.210 |
| predicted_HR | 0.000 | -0.070 |
| predicted_OBP | 0.333 | -0.020 |
| predicted_R | 1.000 | 0.383 |
| predicted_RBI | 0.000 | -0.391 |
| predicted_SLG | 0.200 | -0.146 |
| predicted_SO | 2.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 | 2.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 | 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 | 5 | - | 16.000 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 4.000 | 0.3125 | 0.4000 | 0.3750 | 0.3125 | 0.0000 | 0.0625 | 0.1875 | 0.2500 |
| last_10 | 0.20 | 10 | - | 35.000 | 9.000 | 2.000 | 0.000 | 0.000 | 1.000 | 5.000 | 4.000 | 11.000 | 0.2571 | 0.3250 | 0.3143 | 0.2571 | 0.0000 | 0.0286 | 0.1143 | 0.3143 |
| season | 0.60 | 27 | - | 244.000 | 65.000 | 2.000 | 5.000 | 4.000 | 23.000 | 35.000 | 42.000 | 88.000 | 0.2664 | 0.3728 | 0.3648 | 0.2664 | 0.0164 | 0.0943 | 0.1721 | 0.3607 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1990 |
| predicted_3B | 0.0750 |
| predicted_AB | 6.4880 |
| predicted_AVG | 0.2715 |
| predicted_BB | 1.0090 |
| predicted_H | 1.7620 |
| predicted_HBP | 0.0060 |
| predicted_HR | 0.0790 |
| predicted_OBP | 0.3635 |
| predicted_R | 0.9000 |
| predicted_RBI | 0.5200 |
| predicted_SLG | 0.3617 |
| predicted_SO | 2.0700 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0280 | 0.1990 | 0.1002 | model_form_blend |
| predicted_3B | 0.0700 | 0.0750 | 0.0721 | model_form_blend |
| predicted_AB | 3.5900 | 6.4880 | 4.8139 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2715 | 0.2602 | model_form_blend |
| predicted_BB | 0.5920 | 1.0090 | 0.7681 | model_form_blend |
| predicted_H | 0.9000 | 1.7620 | 1.2640 | model_form_blend |
| predicted_HBP | - | 0.0060 | 0.0060 | form_only |
| predicted_HR | 0.0700 | 0.0790 | 0.0738 | model_form_blend |
| predicted_OBP | 0.3330 | 0.3635 | 0.3459 | model_form_blend |
| predicted_R | 0.4930 | 0.9000 | 0.6649 | model_form_blend |
| predicted_RBI | 0.3500 | 0.5200 | 0.4218 | model_form_blend |
| predicted_SLG | 0.3700 | 0.3617 | 0.3665 | model_form_blend |
| predicted_SO | 1.2390 | 2.0700 | 1.5900 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 71 |
| Season rows before report date | 71 |
| Report year | 2026 |
| Profile rows used | 71 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 2 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.266 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 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 | CF |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 805999 |
| playerID | 805999 |
| playerName | A.J. Ewing |
| pos | LF |
| started | True |
| startingPosition | CF |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 30.2 |
| sl_bb_percent | 11.3 |
| sl_woba | 0.313 |
| sl_xwoba | 0.339 |
| sl_xba | 0.273 |
| sl_xslg | 0.407 |
| sl_sweet_spot_percent | 38.7 |
| sl_barrel_batted_rate | 6.5 |
| sl_hard_hit_percent | 43.5 |
| sl_exit_velocity_avg | 89.0 |
| sl_launch_angle_avg | 10.5 |
| sl_whiff_percent | 22.2 |
| sl_swing_percent | 42.4 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.183 | 0.000 | 0.000 | Hitting_2B | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_3B | 0.026 | 0.000 | 0.000 | Hitting_3B | 0.026 | 0.000 | -0.026 | 0.000 |
| predicted_AB | 3.586 | 3.000 | 6.000 | Hitting_AB | 3.513 | 3.000 | -0.513 | 0.000 |
| predicted_AVG | 0.247 | 0.000 | 0.167 | Hitting_AVG | 0.248 | 0.333 | -0.248 | -0.333 |
| predicted_BB | 0.319 | 0.000 | 0.000 | Hitting_BB | 0.338 | 0.000 | -0.338 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_H | 0.790 | 0.000 | 1.000 | Hitting_H | 0.872 | 1.000 | -0.872 | -1.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.072 | 0.000 | -0.072 | 0.000 |
| predicted_OBP | 0.298 | 0.000 | 0.167 | Hitting_OBP | 0.316 | 0.333 | -0.316 | -0.333 |
| predicted_R | 0.497 | 0.000 | 1.000 | Hitting_R | 0.497 | 0.000 | -0.497 | 0.000 |
| predicted_RBI | 0.410 | 0.000 | 1.000 | Hitting_RBI | 0.472 | 0.000 | -0.472 | 0.000 |
| predicted_SLG | 0.356 | 0.000 | 0.167 | Hitting_SLG | 0.375 | 0.333 | -0.375 | -0.333 |
| predicted_SO | 1.084 | 1.000 | 2.000 | Hitting_SO | 1.062 | 0.000 | -0.062 | 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_H: 0.7900 -> 0.0000 (deboost -0.7900, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 7 | 7 | 0 | 6 | 1 | predicted_AB: 3.5860 -> 5.6170 (boost 2.0310, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.3478 -> 1.2905 (deboost -0.0573, 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.6170 -> 6.0000 (boost 0.3830, better) | predicted_BB: 0.4281 -> 0.0000 (deboost -0.4281, worse) | AB rounded to 6 (raw=5.62), rates preserved: AVG=0.230 HR/AB=0.015 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6708 -> 1.0000 (boost 0.3292, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3338 -> 0.1670 (deboost -0.1668, 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.3338 (boost 0.1668, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "683146",
"player_name": "Brett Baty",
"position": "3B",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.183,
"predicted_3B": 0.026,
"predicted_AB": 3.586,
"predicted_AVG": 0.247,
"predicted_BB": 0.319,
"predicted_H": 0.79,
"predicted_HR": 0.07,
"predicted_OBP": 0.298,
"predicted_R": 0.497,
"predicted_RBI": 0.41,
"predicted_SLG": 0.356,
"predicted_SO": 1.084
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2752,
"predicted_3B": 0.0304,
"predicted_AB": 5.617,
"predicted_AVG": 0.2488,
"predicted_BB": 0.4344,
"predicted_H": 1.3478,
"predicted_HBP": 0.037,
"predicted_HR": 0.0867,
"predicted_OBP": 0.2996,
"predicted_R": 0.723,
"predicted_RBI": 0.6843,
"predicted_SLG": 0.352,
"predicted_SO": 1.6146
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.2752,
"delta": 0.0922,
"percent_delta": 0.5038,
"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.586,
"after": 5.617,
"delta": 2.031,
"percent_delta": 0.5664,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2488,
"delta": 0.0018,
"percent_delta": 0.0073,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.319,
"after": 0.4344,
"delta": 0.1154,
"percent_delta": 0.3618,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 1.3478,
"delta": 0.5578,
"percent_delta": 0.7061,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0867,
"delta": 0.0167,
"percent_delta": 0.2386,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.2996,
"delta": 0.0016,
"percent_delta": 0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.497,
"after": 0.723,
"delta": 0.226,
"percent_delta": 0.4547,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.41,
"after": 0.6843,
"delta": 0.2743,
"percent_delta": 0.669,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.356,
"after": 0.352,
"delta": -0.004,
"percent_delta": -0.0112,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.084,
"after": 1.6146,
"delta": 0.5306,
"percent_delta": 0.4895,
"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.586,
"after": 5.617,
"delta": 2.031,
"percent_delta": 0.5664,
"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.2752,
"predicted_3B": 0.0304,
"predicted_AB": 5.617,
"predicted_AVG": 0.2298,
"predicted_BB": 0.4281,
"predicted_H": 1.2905,
"predicted_HBP": 0.037,
"predicted_HR": 0.0828,
"predicted_OBP": 0.2843,
"predicted_R": 0.6708,
"predicted_RBI": 0.6349,
"predicted_SLG": 0.3338,
"predicted_SO": 1.6382
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2752,
"after": 0.2752,
"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.617,
"after": 5.617,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2488,
"after": 0.2298,
"delta": -0.019,
"percent_delta": -0.0764,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4344,
"after": 0.4281,
"delta": -0.0063,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3478,
"after": 1.2905,
"delta": -0.0573,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"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.0867,
"after": 0.0828,
"delta": -0.0039,
"percent_delta": -0.045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2996,
"after": 0.2843,
"delta": -0.0153,
"percent_delta": -0.0511,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.723,
"after": 0.6708,
"delta": -0.0522,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6843,
"after": 0.6349,
"delta": -0.0494,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.352,
"after": 0.3338,
"delta": -0.0182,
"percent_delta": -0.0517,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6146,
"after": 1.6382,
"delta": 0.0236,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3478,
"after": 1.2905,
"delta": -0.0573,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.62), rates preserved: AVG=0.230 HR/AB=0.015",
"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.2752,
"after": 0.0,
"delta": -0.2752,
"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.617,
"after": 6.0,
"delta": 0.383,
"percent_delta": 0.0682,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4281,
"after": 0.0,
"delta": -0.4281,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2905,
"after": 1.0,
"delta": -0.2905,
"percent_delta": -0.2251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.037,
"after": 0.0,
"delta": -0.037,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0828,
"after": 0.0,
"delta": -0.0828,
"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.6382,
"after": 2.0,
"delta": 0.3618,
"percent_delta": 0.2209,
"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.617,
"after": 6.0,
"delta": 0.383,
"percent_delta": 0.0682,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.4281,
"after": 0.0,
"delta": -0.4281,
"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.6708,
"after": 1.0,
"delta": 0.3292,
"percent_delta": 0.4908,
"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.6708,
"after": 1.0,
"delta": 0.3292,
"percent_delta": 0.4908,
"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.2298,
"after": 0.167,
"delta": -0.0628,
"percent_delta": -0.2733,
"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.2843,
"after": 0.167,
"delta": -0.1173,
"percent_delta": -0.4126,
"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.3338,
"after": 0.167,
"delta": -0.1668,
"percent_delta": -0.4997,
"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.167,
"delta": -0.1668,
"percent_delta": -0.4997,
"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": 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": 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": 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.2298,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2843,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3338,
"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.167,
"after": 0.2298,
"delta": 0.0628,
"percent_delta": 0.3758,
"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.2843,
"delta": 0.1173,
"percent_delta": 0.7024,
"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.3338,
"delta": 0.1668,
"percent_delta": 0.9988,
"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.3338,
"delta": 0.1668,
"percent_delta": 0.9988,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.183,
"after": 0.0,
"delta": -0.183,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.026,
"after": 0.0,
"delta": -0.026,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.586,
"after": 3.0,
"delta": -0.586,
"percent_delta": -0.1634,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.247,
"after": 0.2298,
"delta": -0.0172,
"percent_delta": -0.0696,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.319,
"after": 0.0,
"delta": -0.319,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.298,
"after": 0.2843,
"delta": -0.0137,
"percent_delta": -0.046,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.497,
"after": 0.0,
"delta": -0.497,
"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.356,
"after": 0.3338,
"delta": -0.0222,
"percent_delta": -0.0624,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.084,
"after": 1.0,
"delta": -0.084,
"percent_delta": -0.0775,
"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.79,
"after": 0.0,
"delta": -0.79,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.183 | - |
| predicted_3B | 0.026 | - |
| predicted_AB | 3.586 | - |
| predicted_AVG | 0.247 | - |
| predicted_BB | 0.319 | - |
| predicted_H | 0.790 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.298 | - |
| predicted_R | 0.497 | - |
| predicted_RBI | 0.410 | - |
| predicted_SLG | 0.356 | - |
| predicted_SO | 1.084 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.275 | 0.092 |
| predicted_3B | 0.030 | 0.004 |
| predicted_AB | 5.617 | 2.031 |
| predicted_AVG | 0.249 | 0.002 |
| predicted_BB | 0.434 | 0.115 |
| predicted_H | 1.348 | 0.558 |
| predicted_HBP | 0.037 | - |
| predicted_HR | 0.087 | 0.017 |
| predicted_OBP | 0.300 | 0.002 |
| predicted_R | 0.723 | 0.226 |
| predicted_RBI | 0.684 | 0.274 |
| predicted_SLG | 0.352 | -0.004 |
| predicted_SO | 1.615 | 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.275 | 0.000 |
| predicted_3B | 0.030 | 0.000 |
| predicted_AB | 5.617 | 0.000 |
| predicted_AVG | 0.230 | -0.019 |
| predicted_BB | 0.428 | -0.006 |
| predicted_H | 1.290 | -0.057 |
| predicted_HBP | 0.037 | 0.000 |
| predicted_HR | 0.083 | -0.004 |
| predicted_OBP | 0.284 | -0.015 |
| predicted_R | 0.671 | -0.052 |
| predicted_RBI | 0.635 | -0.049 |
| predicted_SLG | 0.334 | -0.018 |
| predicted_SO | 1.638 | 0.024 |
AB rounded to 6 (raw=5.62), rates preserved: AVG=0.230 HR/AB=0.015
| 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.275 |
| predicted_3B | 0.000 | -0.030 |
| predicted_AB | 6.000 | 0.383 |
| predicted_AVG | 0.167 | -0.063 |
| predicted_BB | 0.000 | -0.428 |
| predicted_H | 1.000 | -0.290 |
| predicted_HR | 0.000 | -0.083 |
| predicted_OBP | 0.167 | -0.117 |
| predicted_R | 1.000 | 0.329 |
| predicted_RBI | 1.000 | 0.365 |
| predicted_SLG | 0.167 | -0.167 |
| predicted_SO | 2.000 | 0.362 |
Attached 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 | 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 | -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 | 2.000 | 2.000 | 1.000 | 3.000 | 0.2941 | 0.3333 | 0.3529 | 0.2941 | 0.0000 | 0.1177 | 0.0588 | 0.1765 |
| last_10 | 0.20 | 10 | - | 37.000 | 8.000 | 1.000 | 0.000 | 0.000 | 4.000 | 3.000 | 1.000 | 12.000 | 0.2162 | 0.2368 | 0.2432 | 0.2162 | 0.0000 | 0.1081 | 0.0270 | 0.3243 |
| season | 0.60 | 59 | - | 685.000 | 170.000 | 35.000 | 5.000 | 14.000 | 92.000 | 95.000 | 61.000 | 207.000 | 0.2482 | 0.3118 | 0.3752 | 0.2482 | 0.0204 | 0.1343 | 0.0891 | 0.3022 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3930 |
| predicted_3B | 0.0360 |
| predicted_AB | 8.2140 |
| predicted_AVG | 0.2510 |
| predicted_BB | 0.5820 |
| predicted_H | 2.0610 |
| predicted_HBP | 0.0370 |
| predicted_HR | 0.1080 |
| predicted_OBP | 0.3016 |
| predicted_R | 1.0120 |
| predicted_RBI | 1.0350 |
| predicted_SLG | 0.3468 |
| predicted_SO | 2.2930 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1830 | 0.3930 | 0.2752 | model_form_blend |
| predicted_3B | 0.0260 | 0.0360 | 0.0304 | model_form_blend |
| predicted_AB | 3.5860 | 8.2140 | 5.6170 | model_form_blend |
| predicted_AVG | 0.2470 | 0.2510 | 0.2488 | model_form_blend |
| predicted_BB | 0.3190 | 0.5820 | 0.4344 | model_form_blend |
| predicted_H | 0.7900 | 2.0610 | 1.3478 | model_form_blend |
| predicted_HBP | - | 0.0370 | 0.0370 | form_only |
| predicted_HR | 0.0700 | 0.1080 | 0.0867 | model_form_blend |
| predicted_OBP | 0.2980 | 0.3016 | 0.2996 | model_form_blend |
| predicted_R | 0.4970 | 1.0120 | 0.7230 | model_form_blend |
| predicted_RBI | 0.4100 | 1.0350 | 0.6843 | model_form_blend |
| predicted_SLG | 0.3560 | 0.3468 | 0.3520 | model_form_blend |
| predicted_SO | 1.0840 | 2.2930 | 1.6146 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 195 |
| Season rows before report date | 195 |
| Report year | 2026 |
| Profile rows used | 191 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.248 |
| 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 | 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 | 3B |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 683146 |
| playerID | 683146 |
| playerName | Brett Baty |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 28.0 |
| sl_bb_percent | 8.4 |
| sl_woba | 0.285 |
| sl_xwoba | 0.297 |
| sl_xba | 0.234 |
| sl_xslg | 0.372 |
| sl_sweet_spot_percent | 34.8 |
| sl_barrel_batted_rate | 7.8 |
| sl_hard_hit_percent | 37.6 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 9.1 |
| sl_whiff_percent | 28.1 |
| sl_swing_percent | 46.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.139 | 0.000 | 0.000 | Hitting_2B | 0.139 | 0.000 | -0.139 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.720 | 3.000 | 6.000 | Hitting_AB | 3.684 | 4.000 | -0.684 | -1.000 |
| predicted_AVG | 0.235 | 0.000 | 0.167 | Hitting_AVG | 0.233 | 0.000 | -0.233 | 0.000 |
| predicted_BB | 0.255 | 0.000 | 0.000 | Hitting_BB | 0.255 | 0.000 | -0.255 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.039 | 0.000 | -0.039 | 0.000 |
| predicted_H | 0.880 | 0.000 | 1.000 | Hitting_H | 0.857 | 0.000 | -0.857 | 0.000 |
| predicted_HR | 0.170 | 0.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_OBP | 0.288 | 0.000 | 0.167 | Hitting_OBP | 0.281 | 0.000 | -0.281 | 0.000 |
| predicted_R | 0.394 | 0.000 | 1.000 | Hitting_R | 0.394 | 0.000 | -0.394 | 0.000 |
| predicted_RBI | 0.450 | 0.000 | 1.000 | Hitting_RBI | 0.416 | 0.000 | -0.416 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.087 | 0.000 | -0.087 | 0.000 |
| predicted_SLG | 0.425 | 0.000 | 0.167 | Hitting_SLG | 0.351 | 0.000 | -0.351 | 0.000 |
| predicted_SO | 0.792 | 0.000 | 1.000 | Hitting_SO | 0.792 | 2.000 | -0.792 | -2.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.8800 -> 0.0000 (deboost -0.8800, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 9 | 9 | 0 | 8 | 1 | predicted_AB: 3.7200 -> 6.0693 (boost 2.3493, 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_H: 1.4187 -> 1.3584 (deboost -0.0603, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 1 | 6 | 2 | 5 | predicted_RBI: 0.6862 -> 1.0000 (boost 0.3138, better) | predicted_BB: 0.4120 -> 0.0000 (deboost -0.4120, worse) | AB rounded to 6 (raw=6.07), rates preserved: AVG=0.224 HR/AB=0.052 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6821 -> 1.0000 (boost 0.3179, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4110 -> 0.1670 (deboost -0.2440, 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.1670 -> 0.4110 (boost 0.2440, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "543760",
"player_name": "Marcus Semien",
"position": "2B",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.139,
"predicted_3B": 0.0,
"predicted_AB": 3.72,
"predicted_AVG": 0.235,
"predicted_BB": 0.255,
"predicted_H": 0.88,
"predicted_HR": 0.17,
"predicted_OBP": 0.288,
"predicted_R": 0.394,
"predicted_RBI": 0.45,
"predicted_SLG": 0.425,
"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.1923,
"predicted_3B": 0.0004,
"predicted_AB": 6.0693,
"predicted_AVG": 0.2338,
"predicted_BB": 0.4181,
"predicted_H": 1.4187,
"predicted_HBP": 0.027,
"predicted_HR": 0.3291,
"predicted_OBP": 0.285,
"predicted_R": 0.7352,
"predicted_RBI": 0.7396,
"predicted_SLG": 0.4305,
"predicted_SO": 1.3034
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.139,
"after": 0.1923,
"delta": 0.0533,
"percent_delta": 0.3835,
"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.72,
"after": 6.0693,
"delta": 2.3493,
"percent_delta": 0.6315,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2338,
"delta": -0.0012,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.255,
"after": 0.4181,
"delta": 0.1631,
"percent_delta": 0.6396,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.88,
"after": 1.4187,
"delta": 0.5387,
"percent_delta": 0.6122,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.3291,
"delta": 0.1591,
"percent_delta": 0.9359,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.285,
"delta": -0.003,
"percent_delta": -0.0104,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.394,
"after": 0.7352,
"delta": 0.3412,
"percent_delta": 0.866,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.7396,
"delta": 0.2896,
"percent_delta": 0.6436,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.425,
"after": 0.4305,
"delta": 0.0055,
"percent_delta": 0.0129,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.792,
"after": 1.3034,
"delta": 0.5114,
"percent_delta": 0.6457,
"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.72,
"after": 6.0693,
"delta": 2.3493,
"percent_delta": 0.6315,
"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.1923,
"predicted_3B": 0.0004,
"predicted_AB": 6.0693,
"predicted_AVG": 0.2238,
"predicted_BB": 0.412,
"predicted_H": 1.3584,
"predicted_HBP": 0.027,
"predicted_HR": 0.3143,
"predicted_OBP": 0.2732,
"predicted_R": 0.6821,
"predicted_RBI": 0.6862,
"predicted_SLG": 0.411,
"predicted_SO": 1.3224
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1923,
"after": 0.1923,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0004,
"after": 0.0004,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.0693,
"after": 6.0693,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2338,
"after": 0.2238,
"delta": -0.01,
"percent_delta": -0.0428,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4181,
"after": 0.412,
"delta": -0.0061,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4187,
"after": 1.3584,
"delta": -0.0603,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.3291,
"after": 0.3143,
"delta": -0.0148,
"percent_delta": -0.045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.285,
"after": 0.2732,
"delta": -0.0118,
"percent_delta": -0.0414,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7352,
"after": 0.6821,
"delta": -0.0531,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7396,
"after": 0.6862,
"delta": -0.0534,
"percent_delta": -0.0722,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4305,
"after": 0.411,
"delta": -0.0195,
"percent_delta": -0.0453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3034,
"after": 1.3224,
"delta": 0.019,
"percent_delta": 0.0146,
"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.4187,
"after": 1.3584,
"delta": -0.0603,
"percent_delta": -0.0425,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=6.07), rates preserved: AVG=0.224 HR/AB=0.052",
"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.1923,
"after": 0.0,
"delta": -0.1923,
"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.0693,
"after": 6.0,
"delta": -0.0693,
"percent_delta": -0.0114,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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": 1.3584,
"after": 1.0,
"delta": -0.3584,
"percent_delta": -0.2638,
"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.3143,
"after": 0.0,
"delta": -0.3143,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6862,
"after": 1.0,
"delta": 0.3138,
"percent_delta": 0.4573,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3224,
"after": 1.0,
"delta": -0.3224,
"percent_delta": -0.2438,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 7,
"boosted_metrics": 1,
"deboosted_metrics": 6,
"better_metrics": 2,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.6862,
"after": 1.0,
"delta": 0.3138,
"percent_delta": 0.4573,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.412,
"after": 0.0,
"delta": -0.412,
"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.6821,
"after": 1.0,
"delta": 0.3179,
"percent_delta": 0.4661,
"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.6821,
"after": 1.0,
"delta": 0.3179,
"percent_delta": 0.4661,
"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.2238,
"after": 0.167,
"delta": -0.0568,
"percent_delta": -0.2538,
"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.2732,
"after": 0.167,
"delta": -0.1062,
"percent_delta": -0.3887,
"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.411,
"after": 0.167,
"delta": -0.244,
"percent_delta": -0.5937,
"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.411,
"after": 0.167,
"delta": -0.244,
"percent_delta": -0.5937,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 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.2238,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2732,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.411,
"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.2238,
"delta": 0.0568,
"percent_delta": 0.3402,
"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.2732,
"delta": 0.1062,
"percent_delta": 0.6357,
"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.411,
"delta": 0.244,
"percent_delta": 1.461,
"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.411,
"delta": 0.244,
"percent_delta": 1.461,
"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.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.72,
"after": 3.0,
"delta": -0.72,
"percent_delta": -0.1935,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.235,
"after": 0.2238,
"delta": -0.0112,
"percent_delta": -0.0477,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.255,
"after": 0.0,
"delta": -0.255,
"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.17,
"after": 0.0,
"delta": -0.17,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.288,
"after": 0.2732,
"delta": -0.0148,
"percent_delta": -0.0514,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.394,
"after": 0.0,
"delta": -0.394,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.425,
"after": 0.411,
"delta": -0.014,
"percent_delta": -0.0329,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.792,
"after": 0.0,
"delta": -0.792,
"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.88,
"after": 0.0,
"delta": -0.88,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.139 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.720 | - |
| predicted_AVG | 0.235 | - |
| predicted_BB | 0.255 | - |
| predicted_H | 0.880 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.288 | - |
| predicted_R | 0.394 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.425 | - |
| 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.192 | 0.053 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.069 | 2.349 |
| predicted_AVG | 0.234 | -0.001 |
| predicted_BB | 0.418 | 0.163 |
| predicted_H | 1.419 | 0.539 |
| predicted_HBP | 0.027 | - |
| predicted_HR | 0.329 | 0.159 |
| predicted_OBP | 0.285 | -0.003 |
| predicted_R | 0.735 | 0.341 |
| predicted_RBI | 0.740 | 0.290 |
| predicted_SLG | 0.430 | 0.006 |
| predicted_SO | 1.303 | 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.192 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.069 | 0.000 |
| predicted_AVG | 0.224 | -0.010 |
| predicted_BB | 0.412 | -0.006 |
| predicted_H | 1.358 | -0.060 |
| predicted_HBP | 0.027 | 0.000 |
| predicted_HR | 0.314 | -0.015 |
| predicted_OBP | 0.273 | -0.012 |
| predicted_R | 0.682 | -0.053 |
| predicted_RBI | 0.686 | -0.053 |
| predicted_SLG | 0.411 | -0.020 |
| predicted_SO | 1.322 | 0.019 |
AB rounded to 6 (raw=6.07), rates preserved: AVG=0.224 HR/AB=0.052
| 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.192 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.069 |
| predicted_AVG | 0.167 | -0.057 |
| predicted_BB | 0.000 | -0.412 |
| predicted_H | 1.000 | -0.358 |
| predicted_HR | 0.000 | -0.314 |
| predicted_OBP | 0.167 | -0.106 |
| predicted_R | 1.000 | 0.318 |
| predicted_RBI | 1.000 | 0.314 |
| predicted_SLG | 0.167 | -0.244 |
| predicted_SO | 1.000 | -0.322 |
Attached 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 | 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 | 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 | 2.000 | 2.000 | 3.000 | 1.000 | 4.000 | 0.2105 | 0.2500 | 0.5263 | 0.2105 | 0.1053 | 0.1053 | 0.0526 | 0.2105 |
| last_10 | 0.20 | 10 | - | 36.000 | 9.000 | 1.000 | 0.000 | 4.000 | 6.000 | 6.000 | 3.000 | 8.000 | 0.2500 | 0.3077 | 0.6111 | 0.2500 | 0.1111 | 0.1667 | 0.0833 | 0.2222 |
| season | 0.60 | 66 | - | 851.000 | 198.000 | 32.000 | 0.000 | 23.000 | 96.000 | 91.000 | 59.000 | 183.000 | 0.2327 | 0.2812 | 0.3514 | 0.2327 | 0.0270 | 0.1128 | 0.0693 | 0.2150 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2600 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.0490 |
| predicted_AVG | 0.2323 |
| predicted_BB | 0.6250 |
| predicted_H | 2.1020 |
| predicted_HBP | 0.0270 |
| predicted_HR | 0.5310 |
| predicted_OBP | 0.2813 |
| predicted_R | 1.1680 |
| predicted_RBI | 1.1070 |
| predicted_SLG | 0.4374 |
| predicted_SO | 1.9520 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1390 | 0.2600 | 0.1923 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.7200 | 9.0490 | 6.0693 | model_form_blend |
| predicted_AVG | 0.2350 | 0.2323 | 0.2338 | model_form_blend |
| predicted_BB | 0.2550 | 0.6250 | 0.4181 | model_form_blend |
| predicted_H | 0.8800 | 2.1020 | 1.4187 | model_form_blend |
| predicted_HBP | - | 0.0270 | 0.0270 | form_only |
| predicted_HR | 0.1700 | 0.5310 | 0.3291 | model_form_blend |
| predicted_OBP | 0.2880 | 0.2813 | 0.2850 | model_form_blend |
| predicted_R | 0.3940 | 1.1680 | 0.7352 | model_form_blend |
| predicted_RBI | 0.4500 | 1.1070 | 0.7396 | model_form_blend |
| predicted_SLG | 0.4250 | 0.4374 | 0.4305 | model_form_blend |
| predicted_SO | 0.7920 | 1.9520 | 1.3034 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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.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 | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 5 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_STL@NYM |
| game_type | full |
| mlbID | 543760 |
| playerID | 543760 |
| playerName | Marcus Semien |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.1 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.276 |
| sl_xwoba | 0.325 |
| sl_xba | 0.264 |
| sl_xslg | 0.438 |
| sl_sweet_spot_percent | 36.8 |
| sl_barrel_batted_rate | 8.9 |
| sl_hard_hit_percent | 35.8 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 18.4 |
| sl_whiff_percent | 21.6 |
| sl_swing_percent | 51.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.149 | 0.000 | 0.000 | Hitting_2B | 0.147 | 0.000 | -0.147 | 0.000 |
| predicted_3B | 0.032 | 0.000 | 0.000 | Hitting_3B | 0.032 | 0.000 | -0.032 | 0.000 |
| predicted_AB | 2.617 | 3.000 | 4.000 | Hitting_AB | 2.589 | 2.000 | 0.411 | 1.000 |
| predicted_AVG | 0.249 | 0.333 | 0.250 | Hitting_AVG | 0.232 | 0.000 | 0.102 | 0.333 |
| predicted_BB | 0.298 | 0.000 | 0.000 | Hitting_BB | 0.305 | 0.000 | -0.305 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.042 | 0.000 | -0.042 | 0.000 |
| predicted_H | 0.500 | 1.000 | 1.000 | Hitting_H | 0.600 | 0.000 | 0.400 | 1.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.095 | 0.000 | -0.095 | 0.000 |
| predicted_OBP | 0.282 | 0.333 | 0.250 | Hitting_OBP | 0.349 | 0.000 | -0.016 | 0.333 |
| predicted_R | 0.319 | 0.000 | 0.000 | Hitting_R | 0.316 | 0.000 | -0.316 | 0.000 |
| predicted_RBI | 0.330 | 0.000 | 0.000 | Hitting_RBI | 0.263 | 0.000 | -0.263 | 0.000 |
| predicted_SLG | 0.400 | 0.333 | 0.250 | Hitting_SLG | 0.423 | 0.000 | -0.089 | 0.333 |
| predicted_SO | 1.074 | 0.000 | 1.000 | Hitting_SO | 1.063 | 2.000 | -1.063 | -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_H: 0.5000 -> 1.0000 (boost 0.5000, better) |
| Biggest Deboost | predicted_SO: 1.0740 -> 0.0000 (deboost -1.0740, 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: 2.6170 -> 3.5303 (boost 0.9133, better) | predicted_AVG: 0.2490 -> 0.2285 (deboost -0.0205, 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.2285 -> 0.1881 (deboost -0.0404, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 2 | 6 | 3 | 5 | predicted_AB: 3.5303 -> 4.0000 (boost 0.4697, better) | predicted_RBI: 0.4171 -> 0.0000 (deboost -0.4171, worse) | AB rounded to 4 (raw=3.53), rates preserved: AVG=0.188 HR/AB=0.044 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4089 -> 0.0000 (deboost -0.4089, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.1881 -> 0.2500 (boost 0.0619, better) | predicted_SLG: 0.3972 -> 0.2500 (deboost -0.1472, 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: 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.3972 (boost 0.1472, better) | predicted_AVG: 0.2500 -> 0.1881 (deboost -0.0619, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669004",
"player_name": "MJ Melendez",
"position": "LF",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.149,
"predicted_3B": 0.032,
"predicted_AB": 2.617,
"predicted_AVG": 0.249,
"predicted_BB": 0.298,
"predicted_H": 0.5,
"predicted_HR": 0.11,
"predicted_OBP": 0.282,
"predicted_R": 0.319,
"predicted_RBI": 0.33,
"predicted_SLG": 0.4,
"predicted_SO": 1.074
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2001,
"predicted_3B": 0.0333,
"predicted_AB": 3.5303,
"predicted_AVG": 0.2285,
"predicted_BB": 0.3567,
"predicted_H": 0.6936,
"predicted_HBP": 0.21,
"predicted_HR": 0.1645,
"predicted_OBP": 0.2861,
"predicted_R": 0.4407,
"predicted_RBI": 0.4496,
"predicted_SLG": 0.4092,
"predicted_SO": 1.3022
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.149,
"after": 0.2001,
"delta": 0.0511,
"percent_delta": 0.343,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0333,
"delta": 0.0013,
"percent_delta": 0.0406,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.617,
"after": 3.5303,
"delta": 0.9133,
"percent_delta": 0.349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2285,
"delta": -0.0205,
"percent_delta": -0.0823,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.298,
"after": 0.3567,
"delta": 0.0587,
"percent_delta": 0.197,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5,
"after": 0.6936,
"delta": 0.1936,
"percent_delta": 0.3872,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1645,
"delta": 0.0545,
"percent_delta": 0.4955,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.282,
"after": 0.2861,
"delta": 0.0041,
"percent_delta": 0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.319,
"after": 0.4407,
"delta": 0.1217,
"percent_delta": 0.3815,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.33,
"after": 0.4496,
"delta": 0.1196,
"percent_delta": 0.3624,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.4092,
"delta": 0.0092,
"percent_delta": 0.023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.074,
"after": 1.3022,
"delta": 0.2282,
"percent_delta": 0.2125,
"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": 2.617,
"after": 3.5303,
"delta": 0.9133,
"percent_delta": 0.349,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.2285,
"delta": -0.0205,
"percent_delta": -0.0823,
"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": 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.2001,
"predicted_3B": 0.0333,
"predicted_AB": 3.5303,
"predicted_AVG": 0.1881,
"predicted_BB": 0.3515,
"predicted_H": 0.6641,
"predicted_HBP": 0.21,
"predicted_HR": 0.1571,
"predicted_OBP": 0.2616,
"predicted_R": 0.4089,
"predicted_RBI": 0.4171,
"predicted_SLG": 0.3972,
"predicted_SO": 1.3212
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2001,
"after": 0.2001,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0333,
"after": 0.0333,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5303,
"after": 3.5303,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2285,
"after": 0.1881,
"delta": -0.0404,
"percent_delta": -0.1768,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3567,
"after": 0.3515,
"delta": -0.0052,
"percent_delta": -0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.6936,
"after": 0.6641,
"delta": -0.0295,
"percent_delta": -0.0425,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.21,
"after": 0.21,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1645,
"after": 0.1571,
"delta": -0.0074,
"percent_delta": -0.045,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2861,
"after": 0.2616,
"delta": -0.0245,
"percent_delta": -0.0856,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4407,
"after": 0.4089,
"delta": -0.0318,
"percent_delta": -0.0722,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4496,
"after": 0.4171,
"delta": -0.0325,
"percent_delta": -0.0723,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4092,
"after": 0.3972,
"delta": -0.012,
"percent_delta": -0.0293,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3022,
"after": 1.3212,
"delta": 0.019,
"percent_delta": 0.0146,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 0,
"deboosted_metrics": 3,
"better_metrics": 0,
"worse_metrics": 3,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2285,
"after": 0.1881,
"delta": -0.0404,
"percent_delta": -0.1768,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.53), rates preserved: AVG=0.188 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2001,
"after": 0.0,
"delta": -0.2001,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0333,
"after": 0.0,
"delta": -0.0333,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5303,
"after": 4.0,
"delta": 0.4697,
"percent_delta": 0.133,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3515,
"after": 0.0,
"delta": -0.3515,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.6641,
"after": 1.0,
"delta": 0.3359,
"percent_delta": 0.5058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"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.1571,
"after": 0.0,
"delta": -0.1571,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4171,
"after": 0.0,
"delta": -0.4171,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3212,
"after": 1.0,
"delta": -0.3212,
"percent_delta": -0.2431,
"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.5303,
"after": 4.0,
"delta": 0.4697,
"percent_delta": 0.133,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4171,
"after": 0.0,
"delta": -0.4171,
"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.4089,
"after": 0.0,
"delta": -0.4089,
"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.4089,
"after": 0.0,
"delta": -0.4089,
"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.1881,
"after": 0.25,
"delta": 0.0619,
"percent_delta": 0.3291,
"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.2616,
"after": 0.25,
"delta": -0.0116,
"percent_delta": -0.0443,
"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.3972,
"after": 0.25,
"delta": -0.1472,
"percent_delta": -0.3706,
"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.1881,
"after": 0.25,
"delta": 0.0619,
"percent_delta": 0.3291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3972,
"after": 0.25,
"delta": -0.1472,
"percent_delta": -0.3706,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_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.1881,
"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.2616,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3972,
"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.1881,
"delta": -0.0619,
"percent_delta": -0.2475,
"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.2616,
"delta": 0.0116,
"percent_delta": 0.0465,
"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.3972,
"delta": 0.1472,
"percent_delta": 0.5887,
"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.3972,
"delta": 0.1472,
"percent_delta": 0.5887,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1881,
"delta": -0.0619,
"percent_delta": -0.2475,
"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.149,
"after": 0.0,
"delta": -0.149,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.032,
"after": 0.0,
"delta": -0.032,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.617,
"after": 3.0,
"delta": 0.383,
"percent_delta": 0.1464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.249,
"after": 0.1881,
"delta": -0.0609,
"percent_delta": -0.2446,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.298,
"after": 0.0,
"delta": -0.298,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"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.282,
"after": 0.2616,
"delta": -0.0204,
"percent_delta": -0.0723,
"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.33,
"after": 0.0,
"delta": -0.33,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4,
"after": 0.3972,
"delta": -0.0028,
"percent_delta": -0.007,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.074,
"after": 0.0,
"delta": -1.074,
"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_H",
"before": 0.5,
"after": 1.0,
"delta": 0.5,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.074,
"after": 0.0,
"delta": -1.074,
"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.149 | - |
| predicted_3B | 0.032 | - |
| predicted_AB | 2.617 | - |
| predicted_AVG | 0.249 | - |
| predicted_BB | 0.298 | - |
| predicted_H | 0.500 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.282 | - |
| predicted_R | 0.319 | - |
| predicted_RBI | 0.330 | - |
| predicted_SLG | 0.400 | - |
| predicted_SO | 1.074 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.051 |
| predicted_3B | 0.033 | 0.001 |
| predicted_AB | 3.530 | 0.913 |
| predicted_AVG | 0.229 | -0.020 |
| predicted_BB | 0.357 | 0.059 |
| predicted_H | 0.694 | 0.194 |
| predicted_HBP | 0.210 | - |
| predicted_HR | 0.165 | 0.055 |
| predicted_OBP | 0.286 | 0.004 |
| predicted_R | 0.441 | 0.122 |
| predicted_RBI | 0.450 | 0.120 |
| predicted_SLG | 0.409 | 0.009 |
| predicted_SO | 1.302 | 0.228 |
Step 3: 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.033 | 0.000 |
| predicted_AB | 3.530 | 0.000 |
| predicted_AVG | 0.188 | -0.040 |
| predicted_BB | 0.351 | -0.005 |
| predicted_H | 0.664 | -0.029 |
| predicted_HBP | 0.210 | 0.000 |
| predicted_HR | 0.157 | -0.007 |
| predicted_OBP | 0.262 | -0.025 |
| predicted_R | 0.409 | -0.032 |
| predicted_RBI | 0.417 | -0.032 |
| predicted_SLG | 0.397 | -0.012 |
| predicted_SO | 1.321 | 0.019 |
AB rounded to 4 (raw=3.53), rates preserved: AVG=0.188 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.200 |
| predicted_3B | 0.000 | -0.033 |
| predicted_AB | 4.000 | 0.470 |
| predicted_AVG | 0.250 | 0.062 |
| predicted_BB | 0.000 | -0.351 |
| predicted_H | 1.000 | 0.336 |
| predicted_HR | 0.000 | -0.157 |
| predicted_OBP | 0.250 | -0.012 |
| predicted_R | 0.000 | -0.409 |
| predicted_RBI | 0.000 | -0.417 |
| predicted_SLG | 0.250 | -0.147 |
| predicted_SO | 1.000 | -0.321 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 14.000 | 2.000 | 1.000 | 0.000 | 1.000 | 2.000 | 2.000 | 1.000 | 3.000 | 0.1429 | 0.2000 | 0.4286 | 0.1429 | 0.0714 | 0.1429 | 0.0714 | 0.2143 |
| last_10 | 0.20 | 9 | - | 24.000 | 3.000 | 1.000 | 0.000 | 2.000 | 5.000 | 3.000 | 1.000 | 7.000 | 0.1250 | 0.1852 | 0.4167 | 0.1250 | 0.0833 | 0.2083 | 0.0417 | 0.2917 |
| season | 0.60 | 40 | - | 246.000 | 57.000 | 14.000 | 3.000 | 9.000 | 25.000 | 30.000 | 28.000 | 101.000 | 0.2317 | 0.3471 | 0.4228 | 0.2317 | 0.0366 | 0.1016 | 0.1138 | 0.4106 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2700 |
| predicted_3B | 0.0350 |
| predicted_AB | 4.7780 |
| predicted_AVG | 0.2006 |
| predicted_BB | 0.4370 |
| predicted_H | 0.9580 |
| predicted_HBP | 0.2100 |
| predicted_HR | 0.2390 |
| predicted_OBP | 0.2917 |
| predicted_R | 0.6070 |
| predicted_RBI | 0.6130 |
| predicted_SLG | 0.4217 |
| predicted_SO | 1.6140 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1490 | 0.2700 | 0.2001 | model_form_blend |
| predicted_3B | 0.0320 | 0.0350 | 0.0333 | model_form_blend |
| predicted_AB | 2.6170 | 4.7780 | 3.5303 | model_form_blend |
| predicted_AVG | 0.2490 | 0.2006 | 0.2285 | model_form_blend |
| predicted_BB | 0.2980 | 0.4370 | 0.3567 | model_form_blend |
| predicted_H | 0.5000 | 0.9580 | 0.6936 | model_form_blend |
| predicted_HBP | - | 0.2100 | 0.2100 | form_only |
| predicted_HR | 0.1100 | 0.2390 | 0.1645 | model_form_blend |
| predicted_OBP | 0.2820 | 0.2917 | 0.2861 | model_form_blend |
| predicted_R | 0.3190 | 0.6070 | 0.4407 | model_form_blend |
| predicted_RBI | 0.3300 | 0.6130 | 0.4496 | model_form_blend |
| predicted_SLG | 0.4000 | 0.4217 | 0.4092 | model_form_blend |
| predicted_SO | 1.0740 | 1.6140 | 1.3022 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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.232 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 8 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | DH |
| gameID | 20260609_STL@NYM |
| game_type | full |
| mlbID | 669004 |
| playerID | 669004 |
| playerName | MJ Melendez |
| pos | DH |
| started | True |
| startingPosition | DH |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-09 |
| sl_k_percent | 33.0 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.312 |
| sl_xwoba | 0.271 |
| sl_xba | 0.158 |
| sl_xslg | 0.319 |
| sl_sweet_spot_percent | 27.6 |
| sl_barrel_batted_rate | 12.1 |
| sl_hard_hit_percent | 53.4 |
| sl_exit_velocity_avg | 93.5 |
| sl_launch_angle_avg | 24.3 |
| sl_whiff_percent | 33.8 |
| 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_BB | 1.000 | 1.000 | 1.000 | Pitching_BB | 2.250 | 2.000 | -1.250 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 1.250 | 0.000 | -1.250 | 0.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 3.625 | 3.000 | -0.625 | 0.000 |
| predicted_IP | 5.100 | 5.100 | 5.100 | Pitching_InningsPitched | 4.237 | 5.200 | 0.862 | -0.100 |
| predicted_SO | 4.000 | 4.000 | 4.000 | Pitching_SO | 5.125 | 3.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 | pitcher_quality_guardrail | 1 | 1 | 0 | 1 | 0 | predicted_SO: 4.0000 -> 5.0000 (boost 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 | 1 | 0 | 1 | 0 | 1 | - | predicted_SO: 5.0000 -> 4.0000 (deboost -1.0000, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "681035",
"player_name": "Christian Scott",
"position": "Starter",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 3.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": "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": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 5.1,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.1,
"delta": 0.1,
"percent_delta": 0.02,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"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": 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": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 5.1,
"predicted_R": 0.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.1,
"after": 5.1,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"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": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.1,
"delta": 0.1,
"percent_delta": 0.02,
"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 | 0.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.000 | - |
| 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 | 0.000 | 0.000 |
| predicted_H | 3.000 | 0.000 |
| predicted_HR | 0.000 | 0.000 |
| predicted_IP | 5.100 | 0.100 |
| 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 | 25.000 | 6.000 | 23.000 | 11.000 | 26.000 | 0.000 | 2.1600 | 1.3600 | 0.2400 | 0.9200 | 0.4400 | 1.0400 | 0.0000 |
| last_10 | 0.35 | 8 | 36.000 | 10.000 | 29.000 | 18.000 | 41.000 | 1.000 | 2.5000 | 1.3056 | 0.2778 | 0.8056 | 0.5000 | 1.1389 | 0.0278 |
| season | 0.20 | 8 | 36.000 | 10.000 | 29.000 | 18.000 | 41.000 | 1.000 | 2.5000 | 1.3056 | 0.2778 | 0.8056 | 0.5000 | 1.1389 | 0.0278 |
| Metric | Value |
|---|---|
| predicted_BB | 2.0870 |
| predicted_ER | 1.6880 |
| predicted_ERA | 3.0782 |
| predicted_H | 4.5050 |
| predicted_HR | 0.2940 |
| predicted_IP | 5.0000 |
| predicted_SO | 5.0300 |
| predicted_WHIP | 1.3358 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.0870 | 1.5299 | model_form_blend |
| predicted_ER | 0.0000 | 1.6880 | 0.8229 | model_form_blend |
| predicted_ERA | - | 3.0782 | 3.0782 | form_only |
| predicted_H | 3.0000 | 4.5050 | 3.7337 | model_form_blend |
| predicted_HR | 0.0000 | 0.2940 | 0.1433 | model_form_blend |
| predicted_IP | 5.0000 | 5.0000 | 5.0000 | model_form_blend |
| predicted_SO | 4.0000 | 5.0300 | 4.5021 | model_form_blend |
| predicted_WHIP | - | 1.3358 | 1.3358 | 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 | 8 |
| Season rows before report date | 8 |
| Report year | 2026 |
| Profile rows used | 8 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 5.1 |
| H | 3 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 4 |
| HR | 0 |
| BF | 21 |
| Pitches | 89 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 21 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.50 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 4 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.2 |
| Pitching_Pitches | 98 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 67 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_NYM@SD |
| game_type | full |
| mlbID | 681035 |
| playerID | 681035 |
| playerName | Christian Scott |
| pos | P |
| started | True |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-05 |
| sl_k_percent | 26.3 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.293 |
| sl_xwoba | 0.319 |
| sl_sweet_spot_percent | 46.7 |
| sl_barrel_batted_rate | 3.3 |
| sl_hard_hit_percent | 31.5 |
| sl_whiff_percent | 22.0 |
| sl_swing_percent | 47.6 |
| sl_avg_best_speed | 76.079447955 |
| sl_avg_hyper_speed | 93.075941591 |
| 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.148 | 0.000 | -0.148 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.667 | 0.000 | 0.333 | 1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 0.737 | 1.000 | 0.363 | 0.100 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.074 | 2.000 | -1.074 | -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": "548384",
"player_name": "Brooks Raley",
"position": "Middle Reliever",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 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.100 | 1.000 | 3.000 | 2.000 | 6.000 | 1.000 | 2.0769 | 1.1538 | 0.2308 | 0.6923 | 0.4615 | 1.3846 | 0.2308 |
| last_10 | 0.35 | 10 | 8.100 | 2.000 | 8.000 | 6.000 | 10.000 | 1.000 | 2.1600 | 1.6800 | 0.2400 | 0.9600 | 0.7200 | 1.2000 | 0.1200 |
| season | 0.20 | 27 | 24.100 | 4.000 | 18.000 | 11.000 | 29.000 | 2.000 | 1.4795 | 1.1918 | 0.1644 | 0.7397 | 0.4521 | 1.1918 | 0.0822 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4300 |
| predicted_ER | 0.3360 |
| predicted_ERA | 3.2038 |
| predicted_H | 0.8290 |
| predicted_HR | 0.1430 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.0420 |
| predicted_WHIP | 1.3350 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4300 | 0.1869 | model_form_blend |
| predicted_ER | 0.0000 | 0.3360 | 0.1460 | model_form_blend |
| predicted_ERA | - | 3.2038 | 3.2038 | form_only |
| predicted_H | 1.0000 | 0.8290 | 0.9257 | model_form_blend |
| predicted_HR | 0.0000 | 0.1430 | 0.0621 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.0420 | 0.4529 | model_form_blend |
| predicted_WHIP | - | 1.3350 | 1.3350 | 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 | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.48 |
| 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 | 14 |
| Pitching_R | 0 |
| Pitching_SO | 2 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 548384 |
| playerID | 548384 |
| playerName | Brooks Raley |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-07 |
| sl_k_percent | 28.2 |
| sl_bb_percent | 10.7 |
| sl_woba | 0.278 |
| sl_xwoba | 0.292 |
| sl_sweet_spot_percent | 39.3 |
| sl_barrel_batted_rate | 6.6 |
| sl_hard_hit_percent | 29.5 |
| sl_whiff_percent | 26.4 |
| sl_swing_percent | 44.4 |
| sl_avg_best_speed | 76.278566207 |
| sl_avg_hyper_speed | 92.974957586 |
| 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.583 | 1.000 | 0.417 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.542 | 1.000 | 0.458 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.792 | 1.000 | 0.208 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.817 | 1.000 | 0.183 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.375 | 2.000 | -1.375 | -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": "642207",
"player_name": "Devin Williams",
"position": "Middle Reliever",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 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": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.100 | 5.000 | 3.000 | 6.000 | 8.000 | 1.000 | 10.3846 | 2.0769 | 1.1539 | 0.6923 | 1.3846 | 1.8461 | 0.2308 |
| last_10 | 0.35 | 10 | 9.100 | 5.000 | 4.000 | 8.000 | 13.000 | 1.000 | 4.8214 | 1.2857 | 0.5357 | 0.4286 | 0.8571 | 1.3929 | 0.1071 |
| season | 0.20 | 23 | 21.000 | 11.000 | 18.000 | 11.000 | 33.000 | 2.000 | 4.7143 | 1.3810 | 0.5238 | 0.8571 | 0.5238 | 1.5714 | 0.0952 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6660 |
| predicted_ER | 0.6340 |
| predicted_ERA | 5.7027 |
| predicted_H | 0.8120 |
| predicted_HR | 0.1500 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.2520 |
| predicted_WHIP | 1.4772 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.6660 | 0.8600 | model_form_blend |
| predicted_ER | 1.0000 | 0.6340 | 0.8466 | model_form_blend |
| predicted_ERA | - | 5.7027 | 5.7027 | form_only |
| predicted_H | 1.0000 | 0.8120 | 0.9212 | model_form_blend |
| predicted_HR | 0.0000 | 0.1500 | 0.0629 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.2520 | 0.5247 | model_form_blend |
| predicted_WHIP | - | 1.4772 | 1.4772 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 24 |
| Season rows before report date | 24 |
| Report year | 2026 |
| Profile rows used | 23 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 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 | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 5.57 |
| 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 | 20 |
| Pitching_R | 1 |
| Pitching_SO | 2 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 642207 |
| playerID | 642207 |
| playerName | Devin Williams |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-07 |
| sl_k_percent | 35.1 |
| sl_bb_percent | 14.9 |
| sl_woba | 0.338 |
| sl_xwoba | 0.28 |
| sl_sweet_spot_percent | 34.0 |
| sl_barrel_batted_rate | 8.5 |
| sl_hard_hit_percent | 27.7 |
| sl_whiff_percent | 41.1 |
| sl_swing_percent | 48.7 |
| sl_avg_best_speed | 80.162563913 |
| sl_avg_hyper_speed | 93.297077333 |
| 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.296 | 0.000 | 0.704 | 1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.296 | 0.000 | -0.296 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.741 | 1.000 | 0.259 | 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 | 1.000 | 0.000 | -1.000 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 1 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 0 |
| Better Metrics | 1 |
| Worse Metrics | 0 |
| Biggest Boost | predicted_IP: 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": "596133",
"player_name": "Luke Weaver",
"position": "Middle Reliever",
"team": "NYM",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.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.100 | 0.000 | 3.000 | 0.000 | 3.000 | 0.000 | 0.0000 | 0.5625 | 0.0000 | 0.5625 | 0.0000 | 0.5625 | 0.0000 |
| last_10 | 0.35 | 10 | 11.200 | 0.000 | 6.000 | 1.000 | 10.000 | 0.000 | 0.0000 | 0.6000 | 0.0000 | 0.5143 | 0.0857 | 0.8571 | 0.0000 |
| season | 0.20 | 27 | 29.000 | 8.000 | 20.000 | 8.000 | 27.000 | 2.000 | 2.4828 | 0.9655 | 0.2759 | 0.6897 | 0.2759 | 0.9310 | 0.0690 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2290 |
| predicted_ER | 0.2720 |
| predicted_ERA | 2.3036 |
| predicted_H | 0.7990 |
| predicted_HR | 0.0780 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8830 |
| predicted_WHIP | 0.9678 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.2290 | 0.6506 | model_form_blend |
| predicted_ER | 0.0000 | 0.2720 | 0.1232 | model_form_blend |
| predicted_ERA | - | 2.3036 | 2.3036 | form_only |
| predicted_H | 1.0000 | 0.7990 | 0.9089 | model_form_blend |
| predicted_HR | 0.0000 | 0.0780 | 0.0353 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.8830 | 0.4001 | model_form_blend |
| predicted_WHIP | - | 0.9678 | 0.9678 | 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 | 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 | 5 |
| Pitching_ER | 0 |
| Pitching_ERA | 2.48 |
| Pitching_Flyouts | 2 |
| 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 | 0 |
| Pitching_Strikes | 12 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260607_NYM@SD |
| game_type | full |
| mlbID | 596133 |
| playerID | 596133 |
| playerName | Luke Weaver |
| pos | P |
| started | False |
| startingPosition | P |
| team | NYM |
| teamID | 18 |
| game_date | 2026-06-07 |
| sl_k_percent | 23.3 |
| sl_bb_percent | 6.9 |
| sl_woba | 0.241 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 28.7 |
| sl_barrel_batted_rate | 8.8 |
| sl_hard_hit_percent | 31.3 |
| sl_whiff_percent | 26.9 |
| sl_swing_percent | 51.0 |
| sl_avg_best_speed | 79.048355385 |
| sl_avg_hyper_speed | 93.080365769 |
| Layer | Score | Winner | Confidence | Source or usage | Synced or matches |
|---|---|---|---|---|---|
| Shipped prediction | TEX 3 - 1 KC | TEX | 0.570 | enhanced_prediction.pre_simulation_target | True |
| Simulation draw | TEX 3 - 1 KC | TEX | - | 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 | 7 |
| 8. Probability/governors | Applies win probability calibration, matchup guardrails, margin governor and confidence governor. | win_probability_calibration, margin_governor, confidence_governor | 0.5696 |
| 9. Simulation reconciliation | Keeps final shipped score and simulation box score auditable side by side. | simulation_reconciliation | advisory_box_score_draw |
| 10. Score evolution rendered | 6 stored score steps are rendered below. | game.score_evolution.steps | true |
| Step | Layer | Away Runs | Home Runs | Confidence | Description |
|---|---|---|---|---|---|
| 1 | historical_ml | 4.875 | 3.733 | - | Base ML historical model prediction |
| 2 | variance_applied | 5 | 4 | - | Random variance applied (0.9-1.1) |
| 3 | enhanced_prediction | 3 | 1 | 0.5696 | 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 | 3 | 1 | - | Final inning-by-inning simulation result |
{
"low_score_probability": 0.5068942190305207,
"base_low_score_probability": 0.41831238779174146,
"low_score_signal_threshold": 0.5,
"low_score_signal_strength": 0.08858183123877922,
"confidence": 0.7058800000000001,
"factors": {
"environmental": 1.1016000000000001,
"pitcher_form": 1.1,
"team_form": 1.0,
"situational": 1.0,
"combined": 1.2117600000000002
},
"prediction": "low_scoring",
"expected_total_runs": 4,
"pre_simulation_expected_total_runs": 7.0,
"low_score_model_expected_total_runs": 7.0,
"final_simulation_total_runs": 4,
"score_source": "enhanced_prediction.pre_simulation_target"
}{
"method": "historical_slate_bin_shrinkage",
"sample_size": 79,
"near_bucket_sample_size": 9,
"medium_bucket_sample_size": 20,
"wide_bucket_sample_size": 79,
"global_sample_size": 174,
"bucket_scope": "pooled_0.12",
"sparse_bucket": false,
"empirical_hit_rate": 0.519,
"bayesian_hit_rate": 0.5155,
"sample_weight": 0.6,
"prior_strength": 18.0,
"reliability": 0.8144,
"confidence_cap": 0.78,
"raw_pick_probability": 0.67,
"calibrated_pick_probability": 0.5696,
"predicted_side": "away"
}{
"applied": true,
"home": {
"team": "KC",
"games": 68,
"wins": 28,
"losses": 40,
"win_pct": 0.4117647058823529,
"runs_scored": 267,
"runs_allowed": 315,
"run_differential": -48,
"run_differential_per_game": -0.7058823529411765,
"available": true
},
"away": {
"team": "TEX",
"games": 67,
"wins": 33,
"losses": 34,
"win_pct": 0.4925373134328358,
"runs_scored": 271,
"runs_allowed": 257,
"run_differential": 14,
"run_differential_per_game": 0.208955223880597,
"available": true
},
"run_differential_edge_per_game": -0.9148,
"win_pct_edge": -0.0808,
"quality_edge": -1.036,
"margin_adjustment": -0.4351,
"reason": "season-to-date run differential and record moved the score toward the stronger team",
"adjusted_score": {
"away_runs": 3.278,
"home_runs": 0.827,
"home_win_probability": 0.2917
}
}{
"applied": false,
"confidence_cap": null,
"winner_flipped": false,
"reasons": [],
"signals": {
"predicted_team": "TEX",
"guardrail_predicted_team": "TEX",
"guardrail_opponent_team": null,
"output_pre_simulation_winner": "TEX",
"output_opponent_team": "KC",
"final_score_winner": "TEX",
"pre_simulation_winner": "TEX",
"winner_flipped_by_simulation": false
},
"final_prediction_sync": {
"pre_simulation_score": {
"away_runs": 3,
"home_runs": 1,
"score_text": "TEX 3 - 1 KC",
"winner": "TEX"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 1,
"score_text": "TEX 3 - 1 KC",
"winner": "TEX"
},
"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": "KC",
"games": 68,
"wins": 28,
"losses": 40,
"win_pct": 0.4117647058823529,
"runs_scored": 267,
"runs_allowed": 315,
"run_differential": -48,
"run_differential_per_game": -0.7058823529411765,
"available": true
},
"away": {
"team": "TEX",
"games": 67,
"wins": 33,
"losses": 34,
"win_pct": 0.4925373134328358,
"runs_scored": 271,
"runs_allowed": 257,
"run_differential": 14,
"run_differential_per_game": 0.208955223880597,
"available": true
}
}
}{
"applied": true,
"raw_margin": -2.4507,
"final_margin": -2.0,
"margin_cap": 2.0,
"season_quality_edge": 1.036,
"reason": "large target margin capped because season quality evidence did not justify a decisive prediction",
"adjusted_score": {
"away_runs": 3.052,
"home_runs": 1.052
}
}{
"applied": false,
"raw_confidence": 0.569551,
"final_confidence": 0.569551,
"confidence_cap": 0.66,
"score_gap": 2.0,
"calibration_sample_size": 79,
"calibration_empirical_hit_rate": 0.519,
"calibration_bayesian_hit_rate": 0.5155,
"calibration_sparse_bucket": false,
"season_quality_edge": 1.036,
"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": 3,
"home_runs": 1,
"score_text": "TEX 3 - 1 KC",
"winner": "TEX"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 1,
"score_text": "TEX 3 - 1 KC",
"winner": "TEX"
},
"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": 1,
"confidence": 0.5695509999999999,
"home_win_probability": 0.4304490000000001,
"away_win_probability": 0.5695509999999999,
"predicted_score_text": "TEX 3 - 1 KC",
"embedded_savant_score_adjustment": {
"applied": true,
"source": "all_players_stats.csv embedded temporal Savant features",
"feature_contract": {
"training_grain": "one player-game row after collapsing granular at-bat rows",
"temporal_rule": "all sl_/ab_/sv_ model features are shifted before the predicted game",
"hitter_signals": [
"xwoba",
"xba",
"xslg",
"barrel_batted_rate",
"hard_hit_percent",
"bat_speed",
"launch_quality",
"walk_rate",
"strikeout_rate"
],
"pitcher_signals": [
"xwoba_allowed",
"barrel_allowed",
"hard_hit_allowed",
"whiff_rate",
"command_score",
"movement_score",
"faced_est_woba",
"faced_strikeout_rate"
]
},
"away": {
"team": "TEX",
"original_runs": 3,
"run_delta": 0.3346,
"adjusted_runs": 3,
"lineup": {
"players_used": 9,
"total_weight": 52.0,
"quality": 0.2508669426097693,
"contact": 0.17565474337958828,
"power": 0.3154322226872003,
"discipline": -0.24492815391971312,
"xwoba": 0.32057692307692304,
"recent_xwoba": 0.32057692307692304,
"barrel": 9.165384615384616,
"ab_hard_contact": 0.26477632187586675,
"ab_bat_speed": 70.53037552221734,
"ab_strikeout_rate": 0.23108038546010246,
"available_players": 9,
"top_players": [
{
"player_id": "607043",
"player_name": "Brandon Nimmo",
"position": "DH",
"weight": 7.0,
"quality": 1.1061433455371754,
"contact": 1.2910401273330867,
"power": 1.2238155480892878,
"discipline": 0.07853664822433432,
"xwoba": 0.377,
"recent_xwoba": 0.377,
"barrel": 11.3,
"ab_hard_contact": 0.5048823903571782,
"ab_bat_speed": 71.322872491764,
"ab_strikeout_rate": 0.19025157232704404,
"available": 1.0
},
{
"player_id": "608369",
"player_name": "Corey Seager",
"position": "SS",
"weight": 8.0,
"quality": 0.44097228309255415,
"contact": 0.12056975687358305,
"power": 1.0846762404257086,
"discipline": -0.2240371762740186,
"xwoba": 0.333,
"recent_xwoba": 0.333,
"barrel": 15.7,
"ab_hard_contact": 0.9582867132760735,
"ab_bat_speed": 70.45178231292518,
"ab_strikeout_rate": 0.278968253968254,
"available": 1.0
},
{
"player_id": "673962",
"player_name": "Josh Jung",
"position": "3B",
"weight": 7.0,
"quality": 0.5457001866702981,
"contact": 1.0790546389143993,
"power": 0.30420579823561067,
"discipline": 0.21957393483709264,
"xwoba": 0.357,
"recent_xwoba": 0.357,
"barrel": 5.5,
"ab_hard_contact": 0.6368778694741076,
"ab_bat_speed": 70.08618944444444,
"ab_strikeout_rate": 0.16699999999999998,
"available": 1.0
},
{
"player_id": "670032",
"player_name": "Nicky Lopez",
"position": "2B",
"weight": 3.0,
"quality": -0.0688612407382091,
"contact": -1.1363142857142838,
"power": -1.4877333333333318,
"discipline": -0.5107832080200504,
"xwoba": 0.264,
"recent_xwoba": 0.264,
"barrel": 0.0,
"ab_hard_contact": -2.0,
"ab_bat_speed": 61.67933333333333,
"ab_strikeout_rate": 0.25,
"available": 1.0
},
{
"player_id": "694497",
"player_name": "Evan Carter",
"position": "CF",
"weight": 5.0,
"quality": -0.3092948631230001,
"contact": -0.6036497918043785,
"power": -0.4142235458709251,
"discipline": 0.4426646805693478,
"xwoba": 0.299,
"recent_xwoba": 0.299,
"barrel": 7.1,
"ab_hard_contact": -0.75647091741852,
"ab_bat_speed": 68.41166132478632,
"ab_strikeout_rate": 0.24119496855345912,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "608379",
"player_name": "Michael Wacha",
"quality": -0.13716572591262027,
"contact": 0.04143405633523814,
"command": -0.23823832474960285,
"movement": -0.6095283837174134,
"xwoba": 0.322,
"whiff": 23.6,
"faced_est_woba": 0.2975957395547739,
"faced_launch_speed": 83.74929903082514,
"faced_strikeout_rate": 0.23809523809523808,
"faced_run_exp": 0.009760836264204518
}
},
"home": {
"team": "KC",
"original_runs": 1,
"run_delta": 0.3491,
"adjusted_runs": 1,
"lineup": {
"players_used": 8,
"total_weight": 42.0,
"quality": 0.24302030930159585,
"contact": 0.16798402653295627,
"power": 0.26801205060150923,
"discipline": 0.23562346475623694,
"xwoba": 0.32123809523809516,
"recent_xwoba": 0.32123809523809516,
"barrel": 9.46904761904762,
"ab_hard_contact": 0.2796877240483102,
"ab_bat_speed": 71.31117329063892,
"ab_strikeout_rate": 0.223879041509427,
"available_players": 8,
"top_players": [
{
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"position": "SS",
"weight": 7.0,
"quality": 1.3641790029527625,
"contact": 1.580093323255228,
"power": 1.4971009972787328,
"discipline": 0.2944592963891207,
"xwoba": 0.384,
"recent_xwoba": 0.384,
"barrel": 13.3,
"ab_hard_contact": 1.6387818503365552,
"ab_bat_speed": 72.66099828532236,
"ab_strikeout_rate": 0.1765432098765432,
"available": 1.0
},
{
"player_id": "695506",
"player_name": "Jac Caglianone",
"position": "DH",
"weight": 5.0,
"quality": 0.8380275839751882,
"contact": 1.0982492896724176,
"power": 1.6004538095310308,
"discipline": -0.5101131399928396,
"xwoba": 0.364,
"recent_xwoba": 0.364,
"barrel": 15.9,
"ab_hard_contact": 0.4894571430015345,
"ab_bat_speed": 75.01769517330742,
"ab_strikeout_rate": 0.31411564625850336,
"available": 1.0
},
{
"player_id": "657041",
"player_name": "Lane Thomas",
"position": "RF",
"weight": 4.0,
"quality": -0.16556142253360137,
"contact": -0.2867585147628494,
"power": -0.8610531738001669,
"discipline": 1.0204416597048176,
"xwoba": 0.312,
"recent_xwoba": 0.312,
"barrel": 3.2,
"ab_hard_contact": 0.33322223828237196,
"ab_bat_speed": 70.60215277777779,
"ab_strikeout_rate": 0.2037037037037037,
"available": 1.0
},
{
"player_id": "686555",
"player_name": "Isaac Collins",
"position": "LF",
"weight": 5.0,
"quality": -0.2700766397984797,
"contact": -0.4422953709797803,
"power": -0.5073825528891105,
"discipline": 0.3600739348370926,
"xwoba": 0.302,
"recent_xwoba": 0.302,
"barrel": 7.7,
"ab_hard_contact": -0.07450820063936629,
"ab_bat_speed": 71.07328395061728,
"ab_strikeout_rate": 0.27999999999999997,
"available": 1.0
},
{
"player_id": "695600",
"player_name": "Carter Jensen",
"position": "C",
"weight": 6.0,
"quality": -0.3884078204214774,
"contact": -0.8642662652352598,
"power": 0.00881701195258253,
"discipline": -0.5107457930540639,
"xwoba": 0.27,
"recent_xwoba": 0.27,
"barrel": 10.3,
"ab_hard_contact": -0.3537549990436075,
"ab_bat_speed": 72.7519387755102,
"ab_strikeout_rate": 0.3064625850340136,
"available": 1.0
}
]
},
"opposing_starter": {
"available": true,
"player_id": "677958",
"player_name": "Kumar Rocker",
"quality": -0.25531195427089776,
"contact": -0.17983277218484145,
"command": -0.463238324749603,
"movement": -0.17190809930075168,
"xwoba": 0.335,
"whiff": 22.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": "TEX 3 - 1 KC",
"confidence": 0.5695509999999999,
"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": 1,
"score_text": "TEX 3 - 1 KC",
"winner": "TEX"
},
"final_simulation_score": {
"away_runs": 3,
"home_runs": 1,
"score_text": "TEX 3 - 1 KC",
"winner": "TEX"
},
"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 TEX | True | 1.0217 | 1.0217 | 1 | 9 | 0 |
| Home KC | True | 1.0203 | 1.0229 | 0.8889 | 8 | 1 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SS | Corey Seager | 163 | 1.0567 | 0.7565 | positive_batter_regression | 0.3330 | 0.2270 | 0.4520 | 15.70 | 44.60 | 91.10 | 12.30 | 35.20 | 27 | 11.50 | 1.4857 |
| RF | Ezequiel Duran | 49 | 1.0039 | 0.0526 | negative_batter_regression | 0.3150 | 0.2640 | 0.3810 | 6.30 | 38.90 | 90.20 | 11.60 | 29.70 | 24.10 | 7.50 | -1 |
| LF | Wyatt Langford | 159 | 0.9923 | -0.1032 | neutral | 0.2840 | 0.2380 | 0.3630 | 6.80 | 37 | 89.60 | 14.90 | 26.80 | 24 | 5.80 | 0.0857 |
| 3B | Josh Jung | 76 | 1.0572 | 0.7630 | neutral | 0.3570 | 0.3050 | 0.4550 | 5.50 | 43.80 | 89.40 | 11.70 | 18.70 | 15.20 | 7.20 | -0.4571 |
| 1B | Jake Burger | 106 | 1.0188 | 0.2508 | neutral | 0.3090 | 0.2460 | 0.4080 | 9.80 | 47.40 | 90.30 | 12.10 | 35 | 25.90 | 7.20 | -0.3429 |
| DH | Brandon Nimmo | 70 | 1.1180 | 1.5730 | positive_batter_regression | 0.3770 | 0.2860 | 0.5090 | 11.30 | 52.30 | 92.10 | 11.50 | 22.90 | 20.50 | 8.50 | 1.4857 |
| CF | Evan Carter | 85 | 0.9894 | -0.1418 | neutral | 0.2990 | 0.2010 | 0.3420 | 7.10 | 37.90 | 87.90 | 19.70 | 25.40 | 22.90 | 13 | 0.3714 |
| C | Elias Díaz | 212 | 0.9980 | -0.0271 | negative_batter_regression | 0.2910 | 0.2450 | 0.3990 | 15 | 45 | 89.20 | 15.80 | 29.50 | 25 | 3.60 | -2 |
| 2B | Nicky Lopez | 252 | 0.9608 | -0.5232 | negative_batter_regression | 0.2640 | 0.2270 | 0.2960 | 0 | 25.90 | 85.40 | 1.60 | 24 | 23.10 | 5.10 | -1.9714 |
| Pos | Player | ESPN Rank | Off Factor | Quality | Regression | xwOBA | xBA | xSLG | Barrel% | HardHit% | EV | LA | Whiff% | K% | BB% | Regression Edge |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1B | Vinnie Pasquantino | 214 | 1.0277 | 0.3697 | neutral | 0.3180 | 0.2460 | 0.3970 | 7.60 | 38.70 | 88.90 | 20 | 16.10 | 17.50 | 11.10 | 0.6857 |
| DH | Jac Caglianone | 110 | 1.0850 | 1.1327 | neutral | 0.3640 | 0.2740 | 0.4930 | 15.90 | 58.70 | 93.90 | 8 | 31.10 | 29.10 | 8.80 | 0.2571 |
| C | Carter Jensen | 364 | 0.9720 | -0.3727 | neutral | 0.2700 | 0.1920 | 0.3400 | 10.30 | 40.90 | 90.40 | 22.20 | 31.90 | 30.30 | 9.20 | -0.6571 |
| SS | Bobby Witt Jr. | 1 | 1.1290 | 1.7199 | positive_batter_regression | 0.3840 | 0.3010 | 0.5150 | 13.30 | 51.60 | 93.30 | 16.70 | 24.70 | 18.50 | 10.20 | 0.9429 |
| RF | Lane Thomas | 246 | 0.9926 | -0.0992 | neutral | 0.3120 | 0.2260 | 0.3160 | 3.20 | 35.10 | 86.60 | 23.40 | 21.20 | 21.10 | 15.80 | -0.1429 |
| 2B | Michael Massey | 173 | 0.9914 | -0.1142 | negative_batter_regression | 0.2800 | 0.2180 | 0.4050 | 8.50 | 44.10 | 90.80 | 19 | 22.10 | 18 | 3.30 | -1.1143 |
| 3B | Nick Loftin | 368 | 0.9965 | -0.0469 | neutral | 0.3150 | 0.2310 | 0.3390 | 6.20 | 30.90 | 86.50 | 15 | 15.30 | 12.50 | 12.50 | -0.2000 |
| LF | Isaac Collins | 450 | 0.9886 | -0.1514 | neutral | 0.3020 | 0.2180 | 0.3070 | 7.70 | 37.70 | 88.20 | 19.50 | 26.10 | 26.10 | 13.50 | 0 |
{
"home": {
"applied": true,
"offense_factor": 1.0203,
"raw_average_factor": 1.0229,
"team_espn_average_rank": 240.75,
"coverage_weight": 0.8889,
"covered_batters": 8,
"missing_batters": 1,
"players": [
{
"position": "1B",
"player_id": "686469",
"player_name": "Vinnie Pasquantino",
"offense_factor": 1.0277,
"quality_score": 0.3697,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686469",
"espn_id": 4109109,
"player_name": "Vinnie Pasquantino",
"team": "KC",
"role": "batter",
"espn_rank": 214,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 214,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 244.0,
"ab_rank": 50,
"r_value": 27.0,
"r_rank": 122,
"h_value": 54.0,
"h_rank": 103,
"avg_value": 0.2213114,
"avg_rank": 138.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 30.0,
"rbi_rank": 92,
"tb_value": 86.0,
"tb_rank": 643,
"bb_value": 31.0,
"bb_rank": 40,
"so_value": 49.0,
"so_rank": 119,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3071428,
"obp_rank": "122",
"slg_value": 0.352459,
"slg_rank": "133",
"ops_value": 0.6596018,
"ops_rank": 255.0,
"war_value": 0.4,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 224.0,
"k_percent": 17.5,
"bb_percent": 11.1,
"woba": 0.294,
"xwoba": 0.318,
"xba": 0.246,
"xslg": 0.397,
"sweet_spot_percent": 36.7,
"barrel_batted_rate": 7.6,
"hard_hit_percent": 38.7,
"exit_velocity_avg": 88.9,
"launch_angle_avg": 20.0,
"whiff_percent": 16.1,
"swing_percent": 45.5
},
"components": {
"expected_quality": 0.3182,
"regression_edge": 0.6857,
"xwoba_edge": 0.4,
"xba_edge": 0.2286,
"xslg_edge": 0.3286,
"barrel_edge": 0.1556,
"hard_hit_edge": 0.0286,
"exit_velocity_edge": 0.04,
"sweet_spot_edge": 0.5667,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "DH",
"player_id": "695506",
"player_name": "Jac Caglianone",
"offense_factor": 1.085,
"quality_score": 1.1327,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695506",
"espn_id": 4926296,
"player_name": "Jac Caglianone",
"team": "KC",
"role": "batter",
"espn_rank": 110,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 110,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 204.0,
"ab_rank": 129,
"r_value": 25.0,
"r_rank": 150,
"h_value": 56.0,
"h_rank": 91,
"avg_value": 0.2745098,
"avg_rank": 43.0,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 19.0,
"rbi_rank": 204,
"tb_value": 93.0,
"tb_rank": 554,
"bb_value": 20.0,
"bb_rank": 131,
"so_value": 66.0,
"so_rank": 43,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3480176,
"obp_rank": "55",
"slg_value": 0.4558823,
"slg_rank": "51",
"ops_value": 0.8038999,
"ops_rank": 4.0,
"war_value": 1.12,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 178.0,
"k_percent": 29.1,
"bb_percent": 8.8,
"woba": 0.355,
"xwoba": 0.364,
"xba": 0.274,
"xslg": 0.493,
"sweet_spot_percent": 38.4,
"barrel_batted_rate": 15.9,
"hard_hit_percent": 58.7,
"exit_velocity_avg": 93.9,
"launch_angle_avg": 8.0,
"whiff_percent": 31.1,
"swing_percent": 48.3
},
"components": {
"expected_quality": 1.586,
"regression_edge": 0.2571,
"xwoba_edge": 1.7143,
"xba_edge": 1.0286,
"xslg_edge": 1.7,
"barrel_edge": 2.0,
"hard_hit_edge": 2.5,
"exit_velocity_edge": 2.04,
"sweet_spot_edge": 0.85,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "695600",
"player_name": "Carter Jensen",
"offense_factor": 0.972,
"quality_score": -0.3727,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "695600",
"espn_id": 4917812,
"player_name": "Carter Jensen",
"team": "KC",
"role": "batter",
"espn_rank": 364,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 364,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 201.0,
"ab_rank": 134,
"r_value": 27.0,
"r_rank": 122,
"h_value": 43.0,
"h_rank": 167,
"avg_value": 0.2139303,
"avg_rank": 146.0,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 31.0,
"rbi_rank": 80,
"tb_value": 77.0,
"tb_rank": 888,
"bb_value": 21.0,
"bb_rank": 121,
"so_value": 69.0,
"so_rank": 30,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2850877,
"obp_rank": "143",
"slg_value": 0.3830845,
"slg_rank": "115",
"ops_value": 0.6681722,
"ops_rank": 258.0,
"war_value": -0.03,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 184.0,
"k_percent": 30.3,
"bb_percent": 9.2,
"woba": 0.293,
"xwoba": 0.27,
"xba": 0.192,
"xslg": 0.34,
"sweet_spot_percent": 29.9,
"barrel_batted_rate": 10.3,
"hard_hit_percent": 40.9,
"exit_velocity_avg": 90.4,
"launch_angle_avg": 22.2,
"whiff_percent": 31.9,
"swing_percent": 44.7
},
"components": {
"expected_quality": -0.4111,
"regression_edge": -0.6571,
"xwoba_edge": -0.9714,
"xba_edge": -1.3143,
"xslg_edge": -0.4857,
"barrel_edge": 0.7556,
"hard_hit_edge": 0.3429,
"exit_velocity_edge": 0.64,
"sweet_spot_edge": -0.5667,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "SS",
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"offense_factor": 1.129,
"quality_score": 1.7199,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "677951",
"espn_id": 42403,
"player_name": "Bobby Witt Jr.",
"team": "KC",
"role": "batter",
"espn_rank": 1,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 1,
"gp_value": 68.0,
"gp_rank": 12,
"ab_value": 269.0,
"ab_rank": 6,
"r_value": 33.0,
"r_rank": 71,
"h_value": 75.0,
"h_rank": 9,
"avg_value": 0.2788104,
"avg_rank": 37.0,
"2b_value": 17.0,
"2b_rank": 8,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 9.0,
"hr_rank": 68,
"rbi_value": 27.0,
"rbi_rank": 115,
"tb_value": 121.0,
"tb_rank": 349,
"bb_value": 31.0,
"bb_rank": 40,
"so_value": 56.0,
"so_rank": 81,
"sb_value": 24.0,
"sb_rank": 2,
"obp_value": 0.3531353,
"obp_rank": "49",
"slg_value": 0.4498141,
"slg_rank": "58",
"ops_value": 0.8029494,
"ops_rank": 9.0,
"war_value": 3.74,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 238.0,
"k_percent": 18.5,
"bb_percent": 10.2,
"woba": 0.351,
"xwoba": 0.384,
"xba": 0.301,
"xslg": 0.515,
"sweet_spot_percent": 38.6,
"barrel_batted_rate": 13.3,
"hard_hit_percent": 51.6,
"exit_velocity_avg": 93.3,
"launch_angle_avg": 16.7,
"whiff_percent": 24.7,
"swing_percent": 48.1
},
"components": {
"expected_quality": 1.8464,
"regression_edge": 0.9429,
"xwoba_edge": 2.2857,
"xba_edge": 1.8,
"xslg_edge": 2.0143,
"barrel_edge": 1.4222,
"hard_hit_edge": 1.8714,
"exit_velocity_edge": 1.8,
"sweet_spot_edge": 0.8833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "657041",
"player_name": "Lane Thomas",
"offense_factor": 0.9926,
"quality_score": -0.0992,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "657041",
"espn_id": 36409,
"player_name": "Lane Thomas",
"team": "KC",
"role": "batter",
"espn_rank": 246,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 246,
"gp_value": 53.0,
"gp_rank": 196,
"ab_value": 124.0,
"ab_rank": 259,
"r_value": 12.0,
"r_rank": 298,
"h_value": 29.0,
"h_rank": 256,
"avg_value": 0.2338709,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 15.0,
"rbi_rank": 247,
"tb_value": 39.0,
"tb_rank": 1742,
"bb_value": 24.0,
"bb_rank": 80,
"so_value": 32.0,
"so_rank": 235,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3618421,
"obp_rank": "-",
"slg_value": 0.3145161,
"slg_rank": "-",
"ops_value": 0.6763582,
"ops_rank": null,
"war_value": 0.25,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 113.0,
"k_percent": 21.1,
"bb_percent": 15.8,
"woba": 0.317,
"xwoba": 0.312,
"xba": 0.226,
"xslg": 0.316,
"sweet_spot_percent": 37.2,
"barrel_batted_rate": 3.2,
"hard_hit_percent": 35.1,
"exit_velocity_avg": 86.6,
"launch_angle_avg": 23.4,
"whiff_percent": 21.2,
"swing_percent": 40.7
},
"components": {
"expected_quality": -0.2013,
"regression_edge": -0.1429,
"xwoba_edge": 0.2286,
"xba_edge": -0.3429,
"xslg_edge": -0.8286,
"barrel_edge": -0.8222,
"hard_hit_edge": -0.4857,
"exit_velocity_edge": -0.88,
"sweet_spot_edge": 0.65,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "2B",
"player_id": "686681",
"player_name": "Michael Massey",
"offense_factor": 0.9914,
"quality_score": -0.1142,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "686681",
"espn_id": 4109223,
"player_name": "Michael Massey",
"team": "KC",
"role": "batter",
"espn_rank": 173,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 173,
"gp_value": 51.0,
"gp_rank": 206,
"ab_value": 141.0,
"ab_rank": 236,
"r_value": 16.0,
"r_rank": 237,
"h_value": 37.0,
"h_rank": 204,
"avg_value": 0.2624113,
"avg_rank": null,
"2b_value": 10.0,
"2b_rank": 103,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 20.0,
"rbi_rank": 191,
"tb_value": 65.0,
"tb_rank": 1084,
"bb_value": 5.0,
"bb_rank": 364,
"so_value": 27.0,
"so_rank": 281,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.2818791,
"obp_rank": "-",
"slg_value": 0.4609929,
"slg_rank": "-",
"ops_value": 0.742872,
"ops_rank": null,
"war_value": 0.66,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 113.0,
"k_percent": 18.0,
"bb_percent": 3.3,
"woba": 0.319,
"xwoba": 0.28,
"xba": 0.218,
"xslg": 0.405,
"sweet_spot_percent": 29.7,
"barrel_batted_rate": 8.5,
"hard_hit_percent": 44.1,
"exit_velocity_avg": 90.8,
"launch_angle_avg": 19.0,
"whiff_percent": 22.1,
"swing_percent": 52.3
},
"components": {
"expected_quality": -0.077,
"regression_edge": -1.1143,
"xwoba_edge": -0.6857,
"xba_edge": -0.5714,
"xslg_edge": 0.4429,
"barrel_edge": 0.3556,
"hard_hit_edge": 0.8,
"exit_velocity_edge": 0.8,
"sweet_spot_edge": -0.6,
"launch_angle_hr_bonus": 0.45
}
},
{
"position": "3B",
"player_id": "679845",
"player_name": "Nick Loftin",
"offense_factor": 0.9965,
"quality_score": -0.0469,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "679845",
"espn_id": 4314013,
"player_name": "Nick Loftin",
"team": "KC",
"role": "batter",
"espn_rank": 368,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 368,
"gp_value": 34.0,
"gp_rank": 322,
"ab_value": 91.0,
"ab_rank": 326,
"r_value": 14.0,
"r_rank": 264,
"h_value": 21.0,
"h_rank": 315,
"avg_value": 0.2307692,
"avg_rank": null,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 1.0,
"3b_rank": 64,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 18.0,
"rbi_rank": 214,
"tb_value": 34.0,
"tb_rank": 1649,
"bb_value": 14.0,
"bb_rank": 201,
"so_value": 14.0,
"so_rank": 394,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3423423,
"obp_rank": "-",
"slg_value": 0.3736263,
"slg_rank": "-",
"ops_value": 0.7159686,
"ops_rank": null,
"war_value": -0.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 66.0,
"k_percent": 12.5,
"bb_percent": 12.5,
"woba": 0.322,
"xwoba": 0.315,
"xba": 0.231,
"xslg": 0.339,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 6.2,
"hard_hit_percent": 30.9,
"exit_velocity_avg": 86.5,
"launch_angle_avg": 15.0,
"whiff_percent": 15.3,
"swing_percent": 38.8
},
"components": {
"expected_quality": -0.0885,
"regression_edge": -0.2,
"xwoba_edge": 0.3143,
"xba_edge": -0.2,
"xslg_edge": -0.5,
"barrel_edge": -0.1556,
"hard_hit_edge": -1.0857,
"exit_velocity_edge": -0.92,
"sweet_spot_edge": 0.0,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "LF",
"player_id": "686555",
"player_name": "Isaac Collins",
"offense_factor": 0.9886,
"quality_score": -0.1514,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "686555",
"espn_id": 42959,
"player_name": "Isaac Collins",
"team": "KC",
"role": "batter",
"espn_rank": 450,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 450,
"gp_value": 59.0,
"gp_rank": 150,
"ab_value": 184.0,
"ab_rank": 162,
"r_value": 23.0,
"r_rank": 165,
"h_value": 40.0,
"h_rank": 187,
"avg_value": 0.2173913,
"avg_rank": 144.0,
"2b_value": 8.0,
"2b_rank": 174,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 3.0,
"hr_rank": 223,
"rbi_value": 17.0,
"rbi_rank": 228,
"tb_value": 57.0,
"tb_rank": 1396,
"bb_value": 30.0,
"bb_rank": 45,
"so_value": 58.0,
"so_rank": 71,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.3363636,
"obp_rank": "76",
"slg_value": 0.3097826,
"slg_rank": "161",
"ops_value": 0.6461462,
"ops_rank": 85.0,
"war_value": -0.23,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 176.0,
"k_percent": 26.1,
"bb_percent": 13.5,
"woba": 0.302,
"xwoba": 0.302,
"xba": 0.218,
"xslg": 0.307,
"sweet_spot_percent": 33.1,
"barrel_batted_rate": 7.7,
"hard_hit_percent": 37.7,
"exit_velocity_avg": 88.2,
"launch_angle_avg": 19.5,
"whiff_percent": 26.1,
"swing_percent": 38.9
},
"components": {
"expected_quality": -0.22,
"regression_edge": 0.0,
"xwoba_edge": -0.0571,
"xba_edge": -0.5714,
"xslg_edge": -0.9571,
"barrel_edge": 0.1778,
"hard_hit_edge": -0.1143,
"exit_velocity_edge": -0.24,
"sweet_spot_edge": -0.0333,
"launch_angle_hr_bonus": 0.0
}
}
],
"source": "all_players_stats.csv embedded Savant batter features"
},
"away": {
"applied": true,
"offense_factor": 1.0217,
"raw_average_factor": 1.0217,
"team_espn_average_rank": 130.22,
"coverage_weight": 1.0,
"covered_batters": 9,
"missing_batters": 0,
"players": [
{
"position": "SS",
"player_id": "608369",
"player_name": "Corey Seager",
"offense_factor": 1.0567,
"quality_score": 0.7565,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "608369",
"espn_id": 32691,
"player_name": "Corey Seager",
"team": "TEX",
"role": "batter",
"espn_rank": 163,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 163,
"gp_value": 46.0,
"gp_rank": 240,
"ab_value": 173.0,
"ab_rank": 181,
"r_value": 23.0,
"r_rank": 165,
"h_value": 31.0,
"h_rank": 242,
"avg_value": 0.1791907,
"avg_rank": null,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 23.0,
"rbi_rank": 157,
"tb_value": 61.0,
"tb_rank": 1080,
"bb_value": 23.0,
"bb_rank": 89,
"so_value": 54.0,
"so_rank": 90,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.28,
"obp_rank": "-",
"slg_value": 0.3526011,
"slg_rank": "-",
"ops_value": 0.6326011,
"ops_rank": null,
"war_value": 0.72,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 180.0,
"k_percent": 27.0,
"bb_percent": 11.5,
"woba": 0.281,
"xwoba": 0.333,
"xba": 0.227,
"xslg": 0.452,
"sweet_spot_percent": 33.9,
"barrel_batted_rate": 15.7,
"hard_hit_percent": 44.6,
"exit_velocity_avg": 91.1,
"launch_angle_avg": 12.3,
"whiff_percent": 35.2,
"swing_percent": 50.8
},
"components": {
"expected_quality": 0.8332,
"regression_edge": 1.4857,
"xwoba_edge": 0.8286,
"xba_edge": -0.3143,
"xslg_edge": 1.1143,
"barrel_edge": 1.9556,
"hard_hit_edge": 0.8714,
"exit_velocity_edge": 0.92,
"sweet_spot_edge": 0.1,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "RF",
"player_id": "677649",
"player_name": "Ezequiel Duran",
"offense_factor": 1.0039,
"quality_score": 0.0526,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "677649",
"espn_id": 42457,
"player_name": "Ezequiel Duran",
"team": "TEX",
"role": "batter",
"espn_rank": 49,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 49,
"gp_value": 59.0,
"gp_rank": 150,
"ab_value": 192.0,
"ab_rank": 145,
"r_value": 27.0,
"r_rank": 122,
"h_value": 56.0,
"h_rank": 91,
"avg_value": 0.2916666,
"avg_rank": 19.0,
"2b_value": 15.0,
"2b_rank": 19,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 4.0,
"hr_rank": 190,
"rbi_value": 35.0,
"rbi_rank": 51,
"tb_value": 87.0,
"tb_rank": 706,
"bb_value": 16.0,
"bb_rank": 181,
"so_value": 51.0,
"so_rank": 106,
"sb_value": 5.0,
"sb_rank": 84,
"obp_value": 0.3459715,
"obp_rank": "60",
"slg_value": 0.453125,
"slg_rank": "53",
"ops_value": 0.7990965,
"ops_rank": 7.0,
"war_value": 1.83,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 157.0,
"k_percent": 24.1,
"bb_percent": 7.5,
"woba": 0.35,
"xwoba": 0.315,
"xba": 0.264,
"xslg": 0.381,
"sweet_spot_percent": 36.1,
"barrel_batted_rate": 6.3,
"hard_hit_percent": 38.9,
"exit_velocity_avg": 90.2,
"launch_angle_avg": 11.6,
"whiff_percent": 29.7,
"swing_percent": 48.7
},
"components": {
"expected_quality": 0.2484,
"regression_edge": -1.0,
"xwoba_edge": 0.3143,
"xba_edge": 0.7429,
"xslg_edge": 0.1,
"barrel_edge": -0.1333,
"hard_hit_edge": 0.0571,
"exit_velocity_edge": 0.56,
"sweet_spot_edge": 0.4667,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "LF",
"player_id": "694671",
"player_name": "Wyatt Langford",
"offense_factor": 0.9923,
"quality_score": -0.1032,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694671",
"espn_id": 4719324,
"player_name": "Wyatt Langford",
"team": "TEX",
"role": "batter",
"espn_rank": 159,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 159,
"gp_value": 25.0,
"gp_rank": 371,
"ab_value": 98.0,
"ab_rank": 308,
"r_value": 13.0,
"r_rank": 285,
"h_value": 22.0,
"h_rank": 309,
"avg_value": 0.2244897,
"avg_rank": null,
"2b_value": 4.0,
"2b_rank": 280,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 5.0,
"rbi_rank": 390,
"tb_value": 36.0,
"tb_rank": 1455,
"bb_value": 6.0,
"bb_rank": 342,
"so_value": 25.0,
"so_rank": 296,
"sb_value": 3.0,
"sb_rank": 138,
"obp_value": 0.2692307,
"obp_rank": "-",
"slg_value": 0.3673469,
"slg_rank": "-",
"ops_value": 0.6365776,
"ops_rank": null,
"war_value": 0.75,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 84.0,
"k_percent": 24.0,
"bb_percent": 5.8,
"woba": 0.281,
"xwoba": 0.284,
"xba": 0.238,
"xslg": 0.363,
"sweet_spot_percent": 27.4,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 37.0,
"exit_velocity_avg": 89.6,
"launch_angle_avg": 14.9,
"whiff_percent": 26.8,
"swing_percent": 46.2
},
"components": {
"expected_quality": -0.2806,
"regression_edge": 0.0857,
"xwoba_edge": -0.5714,
"xba_edge": 0.0,
"xslg_edge": -0.1571,
"barrel_edge": -0.0222,
"hard_hit_edge": -0.2143,
"exit_velocity_edge": 0.32,
"sweet_spot_edge": -0.9833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "3B",
"player_id": "673962",
"player_name": "Josh Jung",
"offense_factor": 1.0572,
"quality_score": 0.763,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "673962",
"espn_id": 42437,
"player_name": "Josh Jung",
"team": "TEX",
"role": "batter",
"espn_rank": 76,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 76,
"gp_value": 62.0,
"gp_rank": 114,
"ab_value": 239.0,
"ab_rank": 66,
"r_value": 31.0,
"r_rank": 79,
"h_value": 75.0,
"h_rank": 9,
"avg_value": 0.3138075,
"avg_rank": 7.0,
"2b_value": 16.0,
"2b_rank": 14,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 8.0,
"hr_rank": 84,
"rbi_value": 30.0,
"rbi_rank": 92,
"tb_value": 115.0,
"tb_rank": 641,
"bb_value": 19.0,
"bb_rank": 144,
"so_value": 40.0,
"so_rank": 170,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3688212,
"obp_rank": "32",
"slg_value": 0.4811715,
"slg_rank": "37",
"ops_value": 0.8499927,
"ops_rank": 5.0,
"war_value": 1.51,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 203.0,
"k_percent": 15.2,
"bb_percent": 7.2,
"woba": 0.373,
"xwoba": 0.357,
"xba": 0.305,
"xslg": 0.455,
"sweet_spot_percent": 38.3,
"barrel_batted_rate": 5.5,
"hard_hit_percent": 43.8,
"exit_velocity_avg": 89.4,
"launch_angle_avg": 11.7,
"whiff_percent": 18.7,
"swing_percent": 48.0
},
"components": {
"expected_quality": 1.0359,
"regression_edge": -0.4571,
"xwoba_edge": 1.5143,
"xba_edge": 1.9143,
"xslg_edge": 1.1571,
"barrel_edge": -0.3111,
"hard_hit_edge": 0.7571,
"exit_velocity_edge": 0.24,
"sweet_spot_edge": 0.8333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "1B",
"player_id": "669394",
"player_name": "Jake Burger",
"offense_factor": 1.0188,
"quality_score": 0.2508,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "669394",
"espn_id": 39882,
"player_name": "Jake Burger",
"team": "TEX",
"role": "batter",
"espn_rank": 106,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 106,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 241.0,
"ab_rank": 59,
"r_value": 31.0,
"r_rank": 79,
"h_value": 59.0,
"h_rank": 79,
"avg_value": 0.2448132,
"avg_rank": 99.0,
"2b_value": 12.0,
"2b_rank": 61,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 11.0,
"hr_rank": 44,
"rbi_value": 41.0,
"rbi_rank": 25,
"tb_value": 104.0,
"tb_rank": 638,
"bb_value": 19.0,
"bb_rank": 144,
"so_value": 68.0,
"so_rank": 34,
"sb_value": 1.0,
"sb_rank": 232,
"obp_value": 0.3003802,
"obp_rank": "129",
"slg_value": 0.4315352,
"slg_rank": "72",
"ops_value": 0.7319154,
"ops_rank": 201.0,
"war_value": 1.15,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 211.0,
"k_percent": 25.9,
"bb_percent": 7.2,
"woba": 0.321,
"xwoba": 0.309,
"xba": 0.246,
"xslg": 0.408,
"sweet_spot_percent": 33.1,
"barrel_batted_rate": 9.8,
"hard_hit_percent": 47.4,
"exit_velocity_avg": 90.3,
"launch_angle_avg": 12.1,
"whiff_percent": 35.0,
"swing_percent": 50.2
},
"components": {
"expected_quality": 0.3598,
"regression_edge": -0.3429,
"xwoba_edge": 0.1429,
"xba_edge": 0.2286,
"xslg_edge": 0.4857,
"barrel_edge": 0.6444,
"hard_hit_edge": 1.2714,
"exit_velocity_edge": 0.6,
"sweet_spot_edge": -0.0333,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "DH",
"player_id": "607043",
"player_name": "Brandon Nimmo",
"offense_factor": 1.118,
"quality_score": 1.573,
"regression_flag": "positive_batter_regression",
"espn_rank": {
"available": true,
"player_id": "607043",
"espn_id": 32159,
"player_name": "Brandon Nimmo",
"team": "TEX",
"role": "batter",
"espn_rank": 70,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 70,
"gp_value": 65.0,
"gp_rank": 53,
"ab_value": 251.0,
"ab_rank": 32,
"r_value": 28.0,
"r_rank": 111,
"h_value": 64.0,
"h_rank": 47,
"avg_value": 0.25498,
"avg_rank": 77.0,
"2b_value": 11.0,
"2b_rank": 83,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 7.0,
"hr_rank": 106,
"rbi_value": 22.0,
"rbi_rank": 169,
"tb_value": 100.0,
"tb_rank": 474,
"bb_value": 24.0,
"bb_rank": 80,
"so_value": 58.0,
"so_rank": 71,
"sb_value": 2.0,
"sb_rank": 173,
"obp_value": 0.3321554,
"obp_rank": "86",
"slg_value": 0.3984063,
"slg_rank": "102",
"ops_value": 0.7305617,
"ops_rank": 188.0,
"war_value": 1.57,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 231.0,
"k_percent": 20.5,
"bb_percent": 8.5,
"woba": 0.325,
"xwoba": 0.377,
"xba": 0.286,
"xslg": 0.509,
"sweet_spot_percent": 34.4,
"barrel_batted_rate": 11.3,
"hard_hit_percent": 52.3,
"exit_velocity_avg": 92.1,
"launch_angle_avg": 11.5,
"whiff_percent": 22.9,
"swing_percent": 49.0
},
"components": {
"expected_quality": 1.5872,
"regression_edge": 1.4857,
"xwoba_edge": 2.0857,
"xba_edge": 1.3714,
"xslg_edge": 1.9286,
"barrel_edge": 0.9778,
"hard_hit_edge": 1.9714,
"exit_velocity_edge": 1.32,
"sweet_spot_edge": 0.1833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "CF",
"player_id": "694497",
"player_name": "Evan Carter",
"offense_factor": 0.9894,
"quality_score": -0.1418,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "694497",
"espn_id": 4917921,
"player_name": "Evan Carter",
"team": "TEX",
"role": "batter",
"espn_rank": 85,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 85,
"gp_value": 64.0,
"gp_rank": 71,
"ab_value": 187.0,
"ab_rank": 160,
"r_value": 26.0,
"r_rank": 136,
"h_value": 33.0,
"h_rank": 232,
"avg_value": 0.1764705,
"avg_rank": 166.0,
"2b_value": 6.0,
"2b_rank": 220,
"3b_value": 2.0,
"3b_rank": 13,
"hr_value": 6.0,
"hr_rank": 137,
"rbi_value": 20.0,
"rbi_rank": 191,
"tb_value": 61.0,
"tb_rank": 889,
"bb_value": 29.0,
"bb_rank": 53,
"so_value": 51.0,
"so_rank": 106,
"sb_value": 10.0,
"sb_rank": 29,
"obp_value": 0.2954545,
"obp_rank": "134",
"slg_value": 0.3262032,
"slg_rank": "152",
"ops_value": 0.6216577,
"ops_rank": 286.0,
"war_value": 1.4,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 188.0,
"k_percent": 22.9,
"bb_percent": 13.0,
"woba": 0.286,
"xwoba": 0.299,
"xba": 0.201,
"xslg": 0.342,
"sweet_spot_percent": 30.7,
"barrel_batted_rate": 7.1,
"hard_hit_percent": 37.9,
"exit_velocity_avg": 87.9,
"launch_angle_avg": 19.7,
"whiff_percent": 25.4,
"swing_percent": 40.1
},
"components": {
"expected_quality": -0.2534,
"regression_edge": 0.3714,
"xwoba_edge": -0.1429,
"xba_edge": -1.0571,
"xslg_edge": -0.4571,
"barrel_edge": 0.0444,
"hard_hit_edge": -0.0857,
"exit_velocity_edge": -0.36,
"sweet_spot_edge": -0.4333,
"launch_angle_hr_bonus": 0.0
}
},
{
"position": "C",
"player_id": "553869",
"player_name": "Elias Díaz",
"offense_factor": 0.998,
"quality_score": -0.0271,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "553869",
"espn_id": 33594,
"player_name": "Elias Diaz",
"team": "TEX",
"role": "batter",
"espn_rank": 212,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 212,
"gp_value": 12.0,
"gp_rank": 452,
"ab_value": 27.0,
"ab_rank": 458,
"r_value": 5.0,
"r_rank": 402,
"h_value": 7.0,
"h_rank": 434,
"avg_value": 0.2592592,
"avg_rank": null,
"2b_value": 3.0,
"2b_rank": 337,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 2.0,
"hr_rank": 280,
"rbi_value": 6.0,
"rbi_rank": 372,
"tb_value": 16.0,
"tb_rank": 1977,
"bb_value": 1.0,
"bb_rank": 462,
"so_value": 7.0,
"so_rank": 460,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.2857142,
"obp_rank": "-",
"slg_value": 0.5925925,
"slg_rank": "-",
"ops_value": 0.8783067,
"ops_rank": null,
"war_value": 0.41,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 20.0,
"k_percent": 25.0,
"bb_percent": 3.6,
"woba": 0.373,
"xwoba": 0.291,
"xba": 0.245,
"xslg": 0.399,
"sweet_spot_percent": 35.0,
"barrel_batted_rate": 15.0,
"hard_hit_percent": 45.0,
"exit_velocity_avg": 89.2,
"launch_angle_avg": 15.8,
"whiff_percent": 29.5,
"swing_percent": 56.5
},
"components": {
"expected_quality": 0.2556,
"regression_edge": -2.0,
"xwoba_edge": -0.3714,
"xba_edge": 0.2,
"xslg_edge": 0.3571,
"barrel_edge": 1.8,
"hard_hit_edge": 0.9286,
"exit_velocity_edge": 0.16,
"sweet_spot_edge": 0.2833,
"launch_angle_hr_bonus": 0.2
}
},
{
"position": "2B",
"player_id": "670032",
"player_name": "Nicky Lopez",
"offense_factor": 0.9608,
"quality_score": -0.5232,
"regression_flag": "negative_batter_regression",
"espn_rank": {
"available": true,
"player_id": "670032",
"espn_id": 38106,
"player_name": "Nicky Lopez",
"team": "TEX",
"role": "batter",
"espn_rank": 252,
"espn_total_ranked": 555,
"metrics": {
"espn_rank": 252,
"gp_value": 14.0,
"gp_rank": 438,
"ab_value": 35.0,
"ab_rank": 431,
"r_value": 4.0,
"r_rank": 419,
"h_value": 10.0,
"h_rank": 398,
"avg_value": 0.2857142,
"avg_rank": null,
"2b_value": 1.0,
"2b_rank": 418,
"3b_value": 0.0,
"3b_rank": 183,
"hr_value": 1.0,
"hr_rank": 344,
"rbi_value": 5.0,
"rbi_rank": 390,
"tb_value": 14.0,
"tb_rank": 2214,
"bb_value": 2.0,
"bb_rank": 436,
"so_value": 9.0,
"so_rank": 438,
"sb_value": 0.0,
"sb_rank": 327,
"obp_value": 0.3421052,
"obp_rank": "-",
"slg_value": 0.4,
"slg_rank": "-",
"ops_value": 0.7421052,
"ops_rank": null,
"war_value": 0.23,
"war_rank": null
},
"source": "espn_statistics_byathlete"
},
"metrics": {
"pa": 12.0,
"k_percent": 23.1,
"bb_percent": 5.1,
"woba": 0.333,
"xwoba": 0.264,
"xba": 0.227,
"xslg": 0.296,
"sweet_spot_percent": 37.0,
"barrel_batted_rate": 0.0,
"hard_hit_percent": 25.9,
"exit_velocity_avg": 85.4,
"launch_angle_avg": 1.6,
"whiff_percent": 24.0,
"swing_percent": 55.6
},
"components": {
"expected_quality": -1.031,
"regression_edge": -1.9714,
"xwoba_edge": -1.1429,
"xba_edge": -0.3143,
"xslg_edge": -1.1143,
"barrel_edge": -1.5333,
"hard_hit_edge": -1.8,
"exit_velocity_edge": -1.36,
"sweet_spot_edge": 0.6167,
"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 TEX | True | 146 | -0.3112 | 0.8600 | 1.0265 | 0.9651 | 1.0155 | 1.0472 | negative_pitcher_regression | 0.3350 | 0.3040 | 18.70 | 9.90 | 22.50 | 8.20 | 42.20 | |
| Home KC | True | 37 | -0.1511 | 1 | 1.0128 | 0.9760 | 0.9800 | 0.9972 | neutral | 0.3220 | 0.3010 | 20.50 | 8 | 23.60 | 6.90 | 38.10 |
| Team | Pitcher | Movement Available | Primary Pitch | Pitches | Velo | Spin | Axis | HB | IVB | Drop | Rel X | Rel Z | Extension | Arm Angle | Movement Score |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Away TEX | True | None | 93 | 89.58 | 2109 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.0075 | |
| Home KC | True | None | 90 | 87.17 | 1999 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.1425 |
| Run Factor | Value |
|---|---|
| away_runs_vs_home_pitcher | 1.0128 |
| home_runs_vs_away_pitcher | 1.0228 |
| home_pitcher_quality_edge | 0.1601 |
{
"applied": true,
"home_pitcher": {
"available": true,
"pitcher_id": "608379",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 250.0,
"k_percent": 20.5,
"bb_percent": 8.0,
"woba": 0.301,
"xwoba": 0.322,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 38.1,
"avg_best_speed": 78.2906,
"avg_hyper_speed": 93.7995,
"whiff_percent": 23.6,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.0534,
"command_and_miss": -0.1914,
"regression_edge": -0.6,
"xwoba_edge": -0.2,
"barrel_edge": 0.0889,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.2857,
"bb_edge": 0.25,
"pitch_design_score": -0.1425
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "608379",
"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": 87.16939598742678,
"release_spin_rate": 1998.590518669119,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 87.16939598742678,
"release_spin_rate": 1998.590518669119,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1694,
"release_spin_rate": 1998.5905,
"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.1425,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.0177,
"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.1511,
"sample_weight": 1.0,
"run_prevention_factor": 1.0128,
"strikeout_factor": 0.976,
"walk_factor": 0.98,
"homer_factor": 0.9972,
"woba_minus_xwoba": -0.021,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "608379",
"espn_id": 32640,
"player_name": "Michael Wacha",
"team": "KC",
"role": "pitcher",
"espn_rank": 37,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 37,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 9.0,
"qs_rank": 4,
"era_value": 3.4444,
"era_rank": 27.0,
"w_value": 4.0,
"w_rank": 56,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 81.0,
"ip_rank": 8,
"h_value": 66.0,
"h_rank": 43,
"er_value": 31.0,
"er_rank": 61,
"hr_value": 9.0,
"hr_rank": 54,
"bb_value": 26.0,
"bb_rank": 33,
"k_value": 67.0,
"k_rank": 47,
"k_per_9_value": 7.4444447,
"k_per_9_rank": 158,
"whip_value": 1.1358,
"whip_rank": 27.0,
"war_value": 1.63,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"away_pitcher": {
"available": true,
"pitcher_id": "677958",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 215.0,
"k_percent": 18.7,
"bb_percent": 9.9,
"woba": 0.304,
"xwoba": 0.335,
"sweet_spot_percent": 29.2,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 42.2,
"avg_best_speed": 78.2915,
"avg_hyper_speed": 94.6685,
"whiff_percent": 22.5,
"swing_percent": 47.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.2747,
"command_and_miss": -0.4571,
"regression_edge": -0.8857,
"xwoba_edge": -0.5714,
"barrel_edge": -0.2,
"hard_hit_edge": -0.5429,
"whiff_edge": -0.4429,
"bb_edge": -0.225,
"pitch_design_score": -0.0075
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "677958",
"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.57940537726034,
"release_spin_rate": 2109.1083262985494,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.57940537726034,
"release_spin_rate": 2109.1083262985494,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5794,
"release_spin_rate": 2109.1083,
"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.0075,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0537,
"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.3112,
"sample_weight": 0.86,
"run_prevention_factor": 1.0265,
"strikeout_factor": 0.9651,
"walk_factor": 1.0155,
"homer_factor": 1.0472,
"woba_minus_xwoba": -0.031,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "677958",
"espn_id": 4414525,
"player_name": "Kumar Rocker",
"team": "TEX",
"role": "pitcher",
"espn_rank": 146,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 146,
"gp_value": 12.0,
"gp_rank": 325,
"gs_value": 11.0,
"gs_rank": 88,
"qs_value": 3.0,
"qs_rank": 90,
"era_value": 3.5409,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 5.0,
"l_rank": 26,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 61.0,
"ip_rank": 91,
"h_value": 55.0,
"h_rank": 97,
"er_value": 24.0,
"er_rank": 106,
"hr_value": 6.0,
"hr_rank": 108,
"bb_value": 26.0,
"bb_rank": 33,
"k_value": 49.0,
"k_rank": 102,
"k_per_9_value": 7.2295084,
"k_per_9_rank": 30,
"whip_value": 1.3278,
"whip_rank": null,
"war_value": 0.65,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"run_factors": {
"away_runs_vs_home_pitcher": 1.0128,
"home_runs_vs_away_pitcher": 1.0228,
"home_pitcher_quality_edge": 0.1601
},
"score_before": {
"away_runs": 3.0,
"home_runs": 1.0
},
"score_after": {
"away_runs": 3.0384,
"home_runs": 1.0228,
"home_win_probability": 0.3316
},
"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 TEX | 19-42 | 0.311 | 1.10 | 2.90 | -108 | cold | strong | |
| Home KC | 9-51 | 0.150 | 1 | 3.90 | -171 | cold | average |
| Team | Record | Win % | Run Diff | RD/Game | Available |
|---|---|---|---|---|---|
| Away TEX | 33-34 | 0.493 | 14 | 0.209 | True |
| Home KC | 28-40 | 0.412 | -48 | -0.706 | True |
| Signal | - | - | -0.915 | -1.036 | applied=True |
| Date | Matchup | Score | Winner | Margin | Type |
|---|---|---|---|---|---|
| - | - | - | - | - | - |
| Layer | AB | H | R | HR | RBI | BB | SO |
|---|---|---|---|---|---|---|---|
| Game target TEX | - | - | 3 | - | - | - | - |
| Game target KC | - | - | 1 | - | - | - | - |
| Player finalized TEX | 52 | 14 | 8 | 0 | 6 | 5 | 13 |
| Player finalized KC | 46 | 11 | 6 | 0 | 5 | 7 | 12 |
| Player model fractional TEX | 51.71 | 11.86 | 6.73 | 1.59 | 6.06 | 4.83 | 12.53 |
| Player model fractional KC | 46.37 | 10.15 | 5.59 | 1.24 | 5.03 | 5.39 | 11.25 |
| Simulation box TEX | 34 | 7 | 3 | 1 | 3 | 5 | 8 |
| Simulation box KC | 31 | 4 | 1 | 0 | 1 | 1 | 7 |
If player finalized rows and game target disagree, the report now exposes that gap instead of hiding it. Fractional model rows show the unrounded prop layer before box-score realization.
| Team | Role | Pitcher | Pre IP | Pre ER | Pre SO | Pre H | Pre BB | Weighted ERA | Weighted WHIP | Box Sync |
|---|---|---|---|---|---|---|---|---|---|---|
| Away TEX | Starter | Kumar Rocker | 5 | 1 | 5 | 3 | 1 | 3.21 | 1.26 | True |
| Away TEX | Middle Reliever | Jacob Latz | 1.10 | 0 | 1 | 0 | 0 | 2.57 | 1.01 | True |
| Away TEX | Middle Reliever | Jakob Junis | 1 | 0 | 0 | 1 | 0 | 2.85 | 1.01 | True |
| Away TEX | Middle Reliever | Tyler Alexander | 1 | 0 | 1 | 0 | 0 | 5.58 | 1.38 | True |
| Away TEX | Middle Reliever | Jalen Beeks | 0.20 | 0 | 0 | 0 | 0 | 4.69 | 1.57 | True |
| Home KC | Starter | Michael Wacha | 6 | 2 | 6 | 3 | 3 | 4.43 | 1.31 | True |
| Home KC | Middle Reliever | Alex Lange | 1 | 0 | 0 | 2 | 1 | 3.05 | 1.52 | True |
| Home KC | Middle Reliever | Daniel Lynch IV | 1 | 0 | 0 | 1 | 1 | 3.08 | 1.16 | True |
| Home KC | Middle Reliever | Lucas Erceg | 1 | 1 | 2 | 1 | 0 | 6.10 | 1.95 | True |
| Side | Team | Role | Pos | Player | Dominant | Changed | Boosted | Deboosted | Better | Worse | Largest Metric | Largest Delta | Direction | Effect |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| away | TEX | batter | SS | Corey Seager | better | 11 | 6 | 5 | 7 | 4 | predicted_RBI | 2.4800 | boost | better |
| away | TEX | batter | DH | Brandon Nimmo | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | -2.2100 | deboost | worse |
| away | TEX | batter | 1B | Jake Burger | worse | 10 | 4 | 6 | 3 | 7 | predicted_SO | 1.8500 | boost | worse |
| away | TEX | batter | 2B | Nicky Lopez | worse | 10 | 5 | 5 | 4 | 6 | predicted_H | 1.7600 | boost | better |
| away | TEX | batter | 3B | Josh Jung | worse | 10 | 3 | 7 | 4 | 6 | predicted_H | -1.1600 | deboost | worse |
| home | KC | batter | DH | Jac Caglianone | worse | 11 | 1 | 10 | 2 | 9 | predicted_SO | -1.1370 | deboost | better |
| home | KC | batter | RF | Lane Thomas | worse | 10 | 1 | 9 | 2 | 8 | predicted_AB | 1.0800 | boost | better |
| away | TEX | batter | C | Elias Díaz | worse | 11 | 3 | 8 | 4 | 7 | predicted_AB | 1.0430 | boost | better |
| home | KC | batter | 1B | Vinnie Pasquantino | worse | 10 | 2 | 8 | 1 | 9 | predicted_2B | 0.8790 | boost | better |
| away | TEX | batter | RF | Ezequiel Duran | worse | 10 | 2 | 8 | 3 | 7 | predicted_SO | -0.8690 | deboost | better |
| home | KC | batter | C | Carter Jensen | worse | 10 | 1 | 9 | 2 | 8 | predicted_H | -0.8400 | deboost | worse |
| away | TEX | batter | LF | Wyatt Langford | worse | 9 | 2 | 7 | 2 | 7 | predicted_BB | 0.7980 | boost | better |
| away | TEX | batter | CF | Evan Carter | worse | 10 | 3 | 7 | 2 | 8 | predicted_AB | 0.7920 | boost | better |
| home | KC | batter | SS | Bobby Witt Jr. | worse | 11 | 5 | 6 | 4 | 7 | predicted_2B | 0.7490 | boost | better |
| home | KC | batter | 2B | Michael Massey | worse | 11 | 2 | 9 | 1 | 10 | predicted_H | 0.6900 | boost | better |
| home | KC | batter | LF | Isaac Collins | worse | 10 | 0 | 10 | 1 | 9 | predicted_H | -0.6700 | deboost | worse |
| home | KC | batter | 3B | Nick Loftin | worse | 10 | 2 | 8 | 1 | 9 | predicted_SO | 0.6330 | boost | worse |
| home | KC | batter | CF | Kameron Misner | worse | 10 | 1 | 9 | 0 | 10 | predicted_AB | -0.5490 | deboost | worse |
| away | TEX | pitcher | Middle Reliever | Jalen Beeks | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.4667 | deboost | worse |
| away | TEX | pitcher | Middle Reliever | Jacob Latz | worse | 1 | 0 | 1 | 0 | 1 | predicted_IP | -0.2333 | deboost | worse |
This table ranks players whose JSON evolution changed materially. Boost/deboost is numeric movement; better/worse is role-aware.
| Field | Value |
|---|---|
| Pitcher | Kumar Rocker |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.3112 |
| ESPN Rank | 146 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0075 |
| Avg Velo | 89.5794 |
| Avg Spin | 2109.1083 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 5 |
| Pre ER | 1 |
| Pre H | 3 |
| Pre BB | 1 |
| Pre SO | 5 |
| Season ERA | 3.5410 |
| Season WHIP | 1.3279 |
| Role Avg IP | 4.8480 |
| Recent Avg IP | 4.9330 |
| Last Start IP | 5 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"opponent": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"edges": {
"quality_edge": 0.2764,
"offense_edge": -0.0791,
"opponent_offense_edge": -0.1535,
"defense_strength": 0.1547,
"opponent_defense_weakness": 0.0355,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0218,
"run_prevention": 0.9462,
"strikeout": 1.0206
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "677958",
"profile": {
"available": true,
"pitcher_id": "677958",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 215.0,
"k_percent": 18.7,
"bb_percent": 9.9,
"woba": 0.304,
"xwoba": 0.335,
"sweet_spot_percent": 29.2,
"barrel_batted_rate": 8.2,
"hard_hit_percent": 42.2,
"avg_best_speed": 78.2915,
"avg_hyper_speed": 94.6685,
"whiff_percent": 22.5,
"swing_percent": 47.7
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.2747,
"command_and_miss": -0.4571,
"regression_edge": -0.8857,
"xwoba_edge": -0.5714,
"barrel_edge": -0.2,
"hard_hit_edge": -0.5429,
"whiff_edge": -0.4429,
"bb_edge": -0.225,
"pitch_design_score": -0.0075
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "677958",
"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.57940537726034,
"release_spin_rate": 2109.1083262985494,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.57940537726034,
"release_spin_rate": 2109.1083262985494,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5794,
"release_spin_rate": 2109.1083,
"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.0075,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0537,
"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.3112,
"sample_weight": 0.86,
"run_prevention_factor": 1.0265,
"strikeout_factor": 0.9651,
"walk_factor": 1.0155,
"homer_factor": 1.0472,
"woba_minus_xwoba": -0.031,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "677958",
"espn_id": 4414525,
"player_name": "Kumar Rocker",
"team": "TEX",
"role": "pitcher",
"espn_rank": 146,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 146,
"gp_value": 12.0,
"gp_rank": 325,
"gs_value": 11.0,
"gs_rank": 88,
"qs_value": 3.0,
"qs_rank": 90,
"era_value": 3.5409,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 5.0,
"l_rank": 26,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 61.0,
"ip_rank": 91,
"h_value": 55.0,
"h_rank": 97,
"er_value": 24.0,
"er_rank": 106,
"hr_value": 6.0,
"hr_rank": 108,
"bb_value": 26.0,
"bb_rank": 33,
"k_value": 49.0,
"k_rank": 102,
"k_per_9_value": 7.2295084,
"k_per_9_rank": 30,
"whip_value": 1.3278,
"whip_rank": null,
"war_value": 0.65,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 2.0,
"factor": 1.0228,
"adjusted": 2
},
"predicted_H": {
"original": 4.0,
"factor": 1.0228,
"adjusted": 4
},
"predicted_BB": {
"original": 2.0,
"factor": 1.0133,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 1.0406,
"adjusted": 1
},
"predicted_SO": {
"original": 4.0,
"factor": 0.97,
"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": 19,
"H": 44,
"BB": 23,
"SO": 41,
"HR": 4,
"ERA": 3.3529411764705888,
"WHIP": 1.3137254901960786,
"K9": 7.23529411764706,
"HR9": 0.7058823529411765,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "677958",
"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.57940537726034,
"release_spin_rate": 2109.1083262985494,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.57940537726034,
"release_spin_rate": 2109.1083262985494,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.5794,
"release_spin_rate": 2109.1083,
"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.0075,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.0537,
"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": "677958",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 12,
"reference_playing_time": 5.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 28.2,
"ER": 6.0,
"R": 6.0,
"H": 19.0,
"BB": 13.0,
"SO": 22.0,
"HR": 2.0,
"BF": 117.0,
"Pitches": 464.0
},
"per_game": {
"IP": 5.2,
"ER": 1.2,
"R": 1.2,
"H": 3.8,
"BB": 2.6,
"SO": 4.4,
"HR": 0.4,
"BF": 23.4,
"Pitches": 92.8
},
"rates": {
"ERA": 1.8837,
"WHIP": 1.1163,
"ER_per_IP": 0.2093,
"H_per_IP": 0.66279,
"BB_per_IP": 0.45349,
"SO_per_IP": 0.76744,
"HR_per_IP": 0.06977
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 51.0,
"ER": 19.0,
"R": 19.0,
"H": 44.0,
"BB": 23.0,
"SO": 41.0,
"HR": 4.0,
"BF": 218.0,
"Pitches": 863.0
},
"per_game": {
"IP": 5.0,
"ER": 1.9,
"R": 1.9,
"H": 4.4,
"BB": 2.3,
"SO": 4.1,
"HR": 0.4,
"BF": 21.8,
"Pitches": 86.3
},
"rates": {
"ERA": 3.3529,
"WHIP": 1.3137,
"ER_per_IP": 0.37255,
"H_per_IP": 0.86275,
"BB_per_IP": 0.45098,
"SO_per_IP": 0.80392,
"HR_per_IP": 0.07843
}
},
"season": {
"games": 12,
"totals": {
"IP": 61.0,
"ER": 24.0,
"R": 24.0,
"H": 55.0,
"BB": 26.0,
"SO": 49.0,
"HR": 6.0,
"BF": 262.0,
"Pitches": 1026.0
},
"per_game": {
"IP": 5.0,
"ER": 2.0,
"R": 2.0,
"H": 4.5833,
"BB": 2.1667,
"SO": 4.0833,
"HR": 0.5,
"BF": 21.8333,
"Pitches": 85.5
},
"rates": {
"ERA": 3.541,
"WHIP": 1.3279,
"ER_per_IP": 0.39344,
"H_per_IP": 0.90164,
"BB_per_IP": 0.42623,
"SO_per_IP": 0.80328,
"HR_per_IP": 0.09836
}
}
},
"weighted_prediction": {
"predicted_IP": 5.1,
"predicted_ER": 1.861,
"predicted_H": 4.343,
"predicted_BB": 2.205,
"predicted_SO": 4.331,
"predicted_HR": 0.505,
"predicted_ERA": 3.2132,
"predicted_WHIP": 1.2563
}
}{
"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.0,
"form": 5.1,
"final": 5.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 1.861,
"final": 1.4527,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 4.343,
"final": 3.7061,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 2.205,
"final": 1.6335,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 5.0,
"form": 4.331,
"final": 4.6483,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.505,
"final": 0.2655,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.2132,
"final": 3.2132,
"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 | Jacob Latz |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.3144 |
| ESPN Rank | 70 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.0159 |
| Avg Velo | 89.4300 |
| Avg Spin | 2331.4174 |
| 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 | 0.9000 |
| Season WHIP | 0.5333 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"opponent": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"edges": {
"quality_edge": 0.2764,
"offense_edge": -0.0791,
"opponent_offense_edge": -0.1535,
"defense_strength": 0.1547,
"opponent_defense_weakness": 0.0355,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0218,
"run_prevention": 0.9462,
"strikeout": 1.0206
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656641",
"profile": {
"available": true,
"pitcher_id": "656641",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 84.0,
"k_percent": 27.3,
"bb_percent": 6.4,
"woba": 0.189,
"xwoba": 0.248,
"sweet_spot_percent": 19.2,
"barrel_batted_rate": 6.8,
"hard_hit_percent": 43.8,
"avg_best_speed": 80.0895,
"avg_hyper_speed": 94.2876,
"whiff_percent": 29.9,
"swing_percent": 49.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.2533,
"command_and_miss": 0.6407,
"regression_edge": -1.6857,
"xwoba_edge": 1.9143,
"barrel_edge": 0.1111,
"hard_hit_edge": -0.7714,
"whiff_edge": 0.6143,
"bb_edge": 0.65,
"pitch_design_score": -0.0159
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656641",
"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.43001629925374,
"release_spin_rate": 2331.4173993158543,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.43001629925374,
"release_spin_rate": 2331.4173993158543,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.43,
"release_spin_rate": 2331.4174,
"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.0159,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1135,
"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.3144,
"sample_weight": 0.45,
"run_prevention_factor": 0.9733,
"strikeout_factor": 1.0229,
"walk_factor": 0.9766,
"homer_factor": 0.984,
"woba_minus_xwoba": -0.059,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "656641",
"espn_id": 3210625,
"player_name": "Jacob Latz",
"team": "TEX",
"role": "pitcher",
"espn_rank": 70,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 70,
"gp_value": 24.0,
"gp_rank": 119,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.8,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 10.0,
"sv_rank": 13,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 30.0,
"ip_rank": 214,
"h_value": 13.0,
"h_rank": 425,
"er_value": 6.0,
"er_rank": 444,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 7.0,
"bb_rank": 371,
"k_value": 30.0,
"k_rank": 220,
"k_per_9_value": 9.0,
"k_per_9_rank": 27,
"whip_value": 0.6666,
"whip_rank": null,
"war_value": 1.16,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.988,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.988,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9895,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.9928,
"adjusted": 0
},
"predicted_SO": {
"original": 3.0,
"factor": 1.0103,
"adjusted": 3
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 12.1,
"ER": 1,
"H": 5,
"BB": 3,
"SO": 15,
"HR": 1,
"ERA": 0.7297297297297298,
"WHIP": 0.6486486486486487,
"K9": 10.945945945945947,
"HR9": 0.7297297297297298,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "656641",
"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.43001629925374,
"release_spin_rate": 2331.4173993158543,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.43001629925374,
"release_spin_rate": 2331.4173993158543,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.43,
"release_spin_rate": 2331.4174,
"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.0159,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -0.1135,
"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.926,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5424,
"prior_weight": 0.4576
},
"role": "pitcher",
"player_id": "656641",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 23,
"reference_playing_time": 1.333,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 6.1,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 2.0,
"SO": 9.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 91.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.4,
"SO": 1.8,
"HR": 0.2,
"BF": 4.8,
"Pitches": 18.2
},
"rates": {
"ERA": 1.4211,
"WHIP": 0.9474,
"ER_per_IP": 0.15789,
"H_per_IP": 0.63158,
"BB_per_IP": 0.31579,
"SO_per_IP": 1.42105,
"HR_per_IP": 0.15789
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 1.0,
"R": 1.0,
"H": 5.0,
"BB": 3.0,
"SO": 16.0,
"HR": 1.0,
"BF": 47.0,
"Pitches": 194.0
},
"per_game": {
"IP": 1.1,
"ER": 0.1,
"R": 0.1,
"H": 0.5,
"BB": 0.3,
"SO": 1.6,
"HR": 0.1,
"BF": 4.7,
"Pitches": 19.4
},
"rates": {
"ERA": 0.675,
"WHIP": 0.6,
"ER_per_IP": 0.075,
"H_per_IP": 0.375,
"BB_per_IP": 0.225,
"SO_per_IP": 1.2,
"HR_per_IP": 0.075
}
},
"season": {
"games": 23,
"totals": {
"IP": 30.0,
"ER": 3.0,
"R": 3.0,
"H": 10.0,
"BB": 6.0,
"SO": 30.0,
"HR": 2.0,
"BF": 106.0,
"Pitches": 448.0
},
"per_game": {
"IP": 1.1,
"ER": 0.1304,
"R": 0.1304,
"H": 0.4348,
"BB": 0.2609,
"SO": 1.3043,
"HR": 0.087,
"BF": 4.6087,
"Pitches": 19.4783
},
"rates": {
"ERA": 0.9,
"WHIP": 0.5333,
"ER_per_IP": 0.1,
"H_per_IP": 0.33333,
"BB_per_IP": 0.2,
"SO_per_IP": 1.0,
"HR_per_IP": 0.06667
}
}
},
"weighted_prediction": {
"predicted_IP": 1.1,
"predicted_ER": 0.381,
"predicted_H": 0.934,
"predicted_BB": 0.411,
"predicted_SO": 1.482,
"predicted_HR": 0.166,
"predicted_ERA": 2.5744,
"predicted_WHIP": 1.0092
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5433,
"form_weight": 0.4567,
"form_reliability": 0.5424,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.926,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5424,
"prior_weight": 0.4576
},
"applied_metrics": {
"predicted_IP": {
"model": 1.1,
"form": 1.1,
"final": 1.1,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.381,
"final": 0.174,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.934,
"final": 0.4265,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.411,
"final": 0.1877,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 1.482,
"final": 1.2201,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.166,
"final": 0.0758,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.5744,
"final": 2.5744,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0092,
"final": 1.0092,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Jakob Junis |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1297 |
| ESPN Rank | 87 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.2016 |
| Avg Velo | 86.1137 |
| Avg Spin | 2057.1763 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 0 |
| Season ERA | 1.5698 |
| Season WHIP | 0.7326 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"opponent": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"edges": {
"quality_edge": 0.2764,
"offense_edge": -0.0791,
"opponent_offense_edge": -0.1535,
"defense_strength": 0.1547,
"opponent_defense_weakness": 0.0355,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0218,
"run_prevention": 0.9462,
"strikeout": 1.0206
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "596001",
"profile": {
"available": true,
"pitcher_id": "596001",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 86.0,
"k_percent": 18.5,
"bb_percent": 4.6,
"woba": 0.198,
"xwoba": 0.285,
"sweet_spot_percent": 33.8,
"barrel_batted_rate": 3.8,
"hard_hit_percent": 31.3,
"avg_best_speed": 75.6595,
"avg_hyper_speed": 92.7867,
"whiff_percent": 18.6,
"swing_percent": 48.0
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 1.0862,
"command_and_miss": -0.4,
"regression_edge": -2.0,
"xwoba_edge": 0.8571,
"barrel_edge": 0.7778,
"hard_hit_edge": 1.0143,
"whiff_edge": -1.0,
"bb_edge": 1.1,
"pitch_design_score": -0.2016
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "596001",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.1137,
"release_spin_rate": 2057.1763,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2016,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.44,
"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.1297,
"sample_weight": 0.45,
"run_prevention_factor": 0.989,
"strikeout_factor": 0.9712,
"walk_factor": 0.9604,
"homer_factor": 0.9422,
"woba_minus_xwoba": -0.087,
"regression_flag": "negative_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "596001",
"espn_id": 36056,
"player_name": "Jakob Junis",
"team": "TEX",
"role": "pitcher",
"espn_rank": 87,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 87,
"gp_value": 24.0,
"gp_rank": 119,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.5697,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 4.0,
"sv_rank": 29,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 28.2,
"ip_rank": 243,
"h_value": 16.0,
"h_rank": 380,
"er_value": 5.0,
"er_rank": 477,
"hr_value": 0.0,
"hr_rank": 559,
"bb_value": 5.0,
"bb_rank": 454,
"k_value": 20.0,
"k_rank": 333,
"k_per_9_value": 6.27907,
"k_per_9_rank": 37,
"whip_value": 0.7325,
"whip_rank": null,
"war_value": 1.04,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.995,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.995,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9822,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.974,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.987,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 13.1,
"ER": 2,
"H": 9,
"BB": 1,
"SO": 14,
"HR": 0,
"ERA": 1.35,
"WHIP": 0.7500000000000001,
"K9": 9.450000000000001,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "596001",
"player_name": null,
"source": "all_players_stats.csv embedded Savant pitcher movement features",
"total_pitches": 22,
"primary_pitch": {
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"pitch_mix": [
{
"pitch_type": null,
"pitch_name": null,
"pitches": 22,
"pitch_usage": 0.0,
"release_speed": 86.113672875508,
"release_spin_rate": 2057.1763194572372,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"release_pos_z": null,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
}
],
"summary": {
"release_speed": 86.1137,
"release_spin_rate": 2057.1763,
"spin_axis": 0.0,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": 0.0,
"release_pos_x": 0.0,
"release_pos_z": 0.0,
"release_extension": 0.0,
"arm_angle": 0.0,
"whiff_percent": 0.0,
"xwoba": 0.0,
"hard_hit_percent": 0.0
},
"components": {
"movement_score": -0.2016,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.44,
"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.663,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5311,
"prior_weight": 0.4689
},
"role": "pitcher",
"player_id": "596001",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 24,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.2,
"ER": 1.0,
"R": 1.0,
"H": 4.0,
"BB": 0.0,
"SO": 7.0,
"HR": 0.0,
"BF": 21.0,
"Pitches": 74.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.8,
"BB": 0.0,
"SO": 1.4,
"HR": 0.0,
"BF": 4.2,
"Pitches": 14.8
},
"rates": {
"ERA": 1.5882,
"WHIP": 0.7059,
"ER_per_IP": 0.17647,
"H_per_IP": 0.70588,
"BB_per_IP": 0.0,
"SO_per_IP": 1.23529,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 13.1,
"ER": 2.0,
"R": 2.0,
"H": 9.0,
"BB": 1.0,
"SO": 14.0,
"HR": 0.0,
"BF": 50.0,
"Pitches": 186.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2,
"R": 0.2,
"H": 0.9,
"BB": 0.1,
"SO": 1.4,
"HR": 0.0,
"BF": 5.0,
"Pitches": 18.6
},
"rates": {
"ERA": 1.35,
"WHIP": 0.75,
"ER_per_IP": 0.15,
"H_per_IP": 0.675,
"BB_per_IP": 0.075,
"SO_per_IP": 1.05,
"HR_per_IP": 0.0
}
},
"season": {
"games": 24,
"totals": {
"IP": 28.2,
"ER": 5.0,
"R": 5.0,
"H": 16.0,
"BB": 5.0,
"SO": 20.0,
"HR": 0.0,
"BF": 108.0,
"Pitches": 381.0
},
"per_game": {
"IP": 1.1,
"ER": 0.2083,
"R": 0.2083,
"H": 0.6667,
"BB": 0.2083,
"SO": 0.8333,
"HR": 0.0,
"BF": 4.5,
"Pitches": 15.875
},
"rates": {
"ERA": 1.5698,
"WHIP": 0.7326,
"ER_per_IP": 0.17442,
"H_per_IP": 0.55814,
"BB_per_IP": 0.17442,
"SO_per_IP": 0.69767,
"HR_per_IP": 0.0
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.347,
"predicted_H": 0.882,
"predicted_BB": 0.223,
"predicted_SO": 1.101,
"predicted_HR": 0.072,
"predicted_ERA": 2.8484,
"predicted_WHIP": 1.0071
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5481,
"form_weight": 0.4519,
"form_reliability": 0.5311,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.663,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5311,
"prior_weight": 0.4689
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.347,
"final": 0.1568,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.882,
"final": 0.9467,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.223,
"final": 0.1008,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.101,
"final": 0.4975,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.072,
"final": 0.0325,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 2.8484,
"final": 2.8484,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.0071,
"final": 1.0071,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Tyler Alexander |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.1415 |
| ESPN Rank | 270 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1605 |
| Avg Velo | 86.8483 |
| Avg Spin | 2085.0610 |
| 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 | 3.2143 |
| Season WHIP | 1.3929 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"opponent": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"edges": {
"quality_edge": 0.2764,
"offense_edge": -0.0791,
"opponent_offense_edge": -0.1535,
"defense_strength": 0.1547,
"opponent_defense_weakness": 0.0355,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0218,
"run_prevention": 0.9462,
"strikeout": 1.0206
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "641302",
"profile": {
"available": true,
"pitcher_id": "641302",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 101.0,
"k_percent": 17.9,
"bb_percent": 7.3,
"woba": 0.332,
"xwoba": 0.285,
"sweet_spot_percent": 25.6,
"barrel_batted_rate": 3.3,
"hard_hit_percent": 31.1,
"avg_best_speed": 75.2072,
"avg_hyper_speed": 92.9282,
"whiff_percent": 16.6,
"swing_percent": 45.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.6574,
"command_and_miss": -0.6736,
"regression_edge": 1.3429,
"xwoba_edge": 0.8571,
"barrel_edge": 0.8889,
"hard_hit_edge": 1.0429,
"whiff_edge": -1.2857,
"bb_edge": 0.425,
"pitch_design_score": -0.1605
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "641302",
"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": 86.84825383466749,
"release_spin_rate": 2085.060993055461,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86.84825383466749,
"release_spin_rate": 2085.060993055461,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8483,
"release_spin_rate": 2085.061,
"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.1605,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1462,
"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.1415,
"sample_weight": 0.45,
"run_prevention_factor": 0.988,
"strikeout_factor": 0.9645,
"walk_factor": 0.9847,
"homer_factor": 0.9377,
"woba_minus_xwoba": 0.047,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "641302",
"espn_id": 40360,
"player_name": "Tyler Alexander",
"team": "TEX",
"role": "pitcher",
"espn_rank": 270,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 270,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 1.0,
"gs_rank": 234,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.2142,
"era_rank": null,
"w_value": 1.0,
"w_rank": 269,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 2.0,
"sv_rank": 53,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 28.0,
"ip_rank": 251,
"h_value": 31.0,
"h_rank": 175,
"er_value": 10.0,
"er_rank": 295,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 22.0,
"k_rank": 310,
"k_per_9_value": 7.0714283,
"k_per_9_rank": 33,
"whip_value": 1.3928,
"whip_rank": null,
"war_value": 0.19,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.9946,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.9946,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9931,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.972,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.984,
"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": 5,
"H": 8,
"BB": 3,
"SO": 7,
"HR": 1,
"ERA": 5.625,
"WHIP": 1.375,
"K9": 7.875,
"HR9": 1.125,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "641302",
"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": 86.84825383466749,
"release_spin_rate": 2085.060993055461,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 86.84825383466749,
"release_spin_rate": 2085.060993055461,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8483,
"release_spin_rate": 2085.061,
"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.1605,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.1462,
"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.531,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5252,
"prior_weight": 0.4748
},
"role": "pitcher",
"player_id": "641302",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 4.0,
"R": 4.0,
"H": 6.0,
"BB": 0.0,
"SO": 3.0,
"HR": 0.0,
"BF": 17.0,
"Pitches": 51.0
},
"per_game": {
"IP": 0.2,
"ER": 0.8,
"R": 0.8,
"H": 1.2,
"BB": 0.0,
"SO": 0.6,
"HR": 0.0,
"BF": 3.4,
"Pitches": 10.2
},
"rates": {
"ERA": 9.0,
"WHIP": 1.5,
"ER_per_IP": 1.0,
"H_per_IP": 1.5,
"BB_per_IP": 0.0,
"SO_per_IP": 0.75,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.0,
"ER": 5.0,
"R": 6.0,
"H": 8.0,
"BB": 3.0,
"SO": 7.0,
"HR": 1.0,
"BF": 37.0,
"Pitches": 138.0
},
"per_game": {
"IP": 0.2,
"ER": 0.5,
"R": 0.6,
"H": 0.8,
"BB": 0.3,
"SO": 0.7,
"HR": 0.1,
"BF": 3.7,
"Pitches": 13.8
},
"rates": {
"ERA": 5.625,
"WHIP": 1.375,
"ER_per_IP": 0.625,
"H_per_IP": 1.0,
"BB_per_IP": 0.375,
"SO_per_IP": 0.875,
"HR_per_IP": 0.125
}
},
"season": {
"games": 29,
"totals": {
"IP": 28.0,
"ER": 10.0,
"R": 12.0,
"H": 31.0,
"BB": 8.0,
"SO": 22.0,
"HR": 2.0,
"BF": 122.0,
"Pitches": 454.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3448,
"R": 0.4138,
"H": 1.069,
"BB": 0.2759,
"SO": 0.7586,
"HR": 0.069,
"BF": 4.2069,
"Pitches": 15.6552
},
"rates": {
"ERA": 3.2143,
"WHIP": 1.3929,
"ER_per_IP": 0.35714,
"H_per_IP": 1.10714,
"BB_per_IP": 0.28571,
"SO_per_IP": 0.78571,
"HR_per_IP": 0.07143
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.533,
"predicted_H": 0.955,
"predicted_BB": 0.234,
"predicted_SO": 0.744,
"predicted_HR": 0.084,
"predicted_ERA": 5.5756,
"predicted_WHIP": 1.3826
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5506,
"form_weight": 0.4494,
"form_reliability": 0.5252,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.531,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5252,
"prior_weight": 0.4748
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.533,
"final": 0.2395,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 0.955,
"final": 0.4292,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.234,
"final": 0.1052,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 1.0,
"form": 0.744,
"final": 0.885,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.084,
"final": 0.0377,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 5.5756,
"final": 5.5756,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3826,
"final": 1.3826,
"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 | Jalen Beeks |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.3041 |
| ESPN Rank | 316 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.0097 |
| Avg Velo | 89.8863 |
| Avg Spin | 2150.3774 |
| 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.8077 |
| Season WHIP | 1.3846 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"opponent": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"edges": {
"quality_edge": 0.2764,
"offense_edge": -0.0791,
"opponent_offense_edge": -0.1535,
"defense_strength": 0.1547,
"opponent_defense_weakness": 0.0355,
"recent_win_pct_edge": 0.1
},
"player_factors": {
"ip": 1.0218,
"run_prevention": 0.9462,
"strikeout": 1.0206
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656222",
"profile": {
"available": true,
"pitcher_id": "656222",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 86.0,
"k_percent": 18.6,
"bb_percent": 7.1,
"woba": 0.354,
"xwoba": 0.363,
"sweet_spot_percent": 35.7,
"barrel_batted_rate": 10.7,
"hard_hit_percent": 42.9,
"avg_best_speed": 79.2264,
"avg_hyper_speed": 95.4252,
"whiff_percent": 23.4,
"swing_percent": 47.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -1.0329,
"command_and_miss": -0.2786,
"regression_edge": -0.2571,
"xwoba_edge": -1.3714,
"barrel_edge": -0.7556,
"hard_hit_edge": -0.6429,
"whiff_edge": -0.3143,
"bb_edge": 0.475,
"pitch_design_score": 0.0097
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "656222",
"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.88632167778881,
"release_spin_rate": 2150.37738173386,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.88632167778881,
"release_spin_rate": 2150.37738173386,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8863,
"release_spin_rate": 2150.3774,
"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.0097,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.069,
"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.3041,
"sample_weight": 0.45,
"run_prevention_factor": 1.0258,
"strikeout_factor": 0.9838,
"walk_factor": 0.9829,
"homer_factor": 1.0573,
"woba_minus_xwoba": -0.009,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656222",
"espn_id": 36723,
"player_name": "Jalen Beeks",
"team": "TEX",
"role": "pitcher",
"espn_rank": 316,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 316,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 3.8076,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 1.0,
"l_rank": 253,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 6.0,
"hld_rank": 62,
"ip_value": 26.0,
"ip_rank": 282,
"h_value": 28.0,
"h_rank": 204,
"er_value": 11.0,
"er_rank": 265,
"hr_value": 6.0,
"hr_rank": 108,
"bb_value": 8.0,
"bb_rank": 339,
"k_value": 21.0,
"k_rank": 322,
"k_per_9_value": 7.269231,
"k_per_9_rank": 30,
"whip_value": 1.3846,
"whip_rank": null,
"war_value": 0.1,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 1.0116,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 1.0116,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9923,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0258,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9927,
"adjusted": 2
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 8.0,
"ER": 6,
"H": 14,
"BB": 2,
"SO": 4,
"HR": 4,
"ERA": 6.75,
"WHIP": 2.0,
"K9": 4.5,
"HR9": 4.5,
"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-09T00:00:00"
}{
"available": true,
"pitcher_id": "656222",
"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.88632167778881,
"release_spin_rate": 2150.37738173386,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.88632167778881,
"release_spin_rate": 2150.37738173386,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.8863,
"release_spin_rate": 2150.3774,
"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.0097,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.069,
"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.136,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5067,
"prior_weight": 0.4933
},
"role": "pitcher",
"player_id": "656222",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 0.667,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.1,
"ER": 2.0,
"R": 2.0,
"H": 8.0,
"BB": 0.0,
"SO": 3.0,
"HR": 1.0,
"BF": 21.0,
"Pitches": 68.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4,
"R": 0.4,
"H": 1.6,
"BB": 0.0,
"SO": 0.6,
"HR": 0.2,
"BF": 4.2,
"Pitches": 13.6
},
"rates": {
"ERA": 4.1538,
"WHIP": 1.8462,
"ER_per_IP": 0.46154,
"H_per_IP": 1.84615,
"BB_per_IP": 0.0,
"SO_per_IP": 0.69231,
"HR_per_IP": 0.23077
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 8.0,
"ER": 6.0,
"R": 6.0,
"H": 14.0,
"BB": 2.0,
"SO": 4.0,
"HR": 4.0,
"BF": 40.0,
"Pitches": 139.0
},
"per_game": {
"IP": 0.2,
"ER": 0.6,
"R": 0.6,
"H": 1.4,
"BB": 0.2,
"SO": 0.4,
"HR": 0.4,
"BF": 4.0,
"Pitches": 13.9
},
"rates": {
"ERA": 6.75,
"WHIP": 2.0,
"ER_per_IP": 0.75,
"H_per_IP": 1.75,
"BB_per_IP": 0.25,
"SO_per_IP": 0.5,
"HR_per_IP": 0.5
}
},
"season": {
"games": 29,
"totals": {
"IP": 26.0,
"ER": 11.0,
"R": 11.0,
"H": 28.0,
"BB": 8.0,
"SO": 21.0,
"HR": 6.0,
"BF": 113.0,
"Pitches": 407.0
},
"per_game": {
"IP": 1.0,
"ER": 0.3793,
"R": 0.3793,
"H": 0.9655,
"BB": 0.2759,
"SO": 0.7241,
"HR": 0.2069,
"BF": 3.8966,
"Pitches": 14.0345
},
"rates": {
"ERA": 3.8077,
"WHIP": 1.3846,
"ER_per_IP": 0.42308,
"H_per_IP": 1.07692,
"BB_per_IP": 0.30769,
"SO_per_IP": 0.80769,
"HR_per_IP": 0.23077
}
}
},
"weighted_prediction": {
"predicted_IP": 0.2,
"predicted_ER": 0.404,
"predicted_H": 1.02,
"predicted_BB": 0.198,
"predicted_SO": 0.613,
"predicted_HR": 0.182,
"predicted_ERA": 4.688,
"predicted_WHIP": 1.5695
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5584,
"form_weight": 0.4416,
"form_reliability": 0.5067,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.136,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5067,
"prior_weight": 0.4933
},
"applied_metrics": {
"predicted_IP": {
"model": 0.2,
"form": 0.2,
"final": 0.2,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.404,
"final": 0.1784,
"source": "model_form_blend"
},
"predicted_H": {
"model": 0.0,
"form": 1.02,
"final": 0.4504,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.198,
"final": 0.0874,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.613,
"final": 0.2707,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.182,
"final": 0.0804,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.688,
"final": 4.688,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5695,
"final": 1.5695,
"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.156 | 0.000 | 0.000 | Hitting_2B | 0.156 | 0.000 | -0.156 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 4.250 | 5.000 | 8.000 | Hitting_AB | 3.747 | 5.000 | 1.253 | 0.000 |
| predicted_AVG | 0.201 | 0.200 | 0.250 | Hitting_AVG | 0.182 | 0.000 | 0.018 | 0.200 |
| predicted_BB | 0.554 | 0.000 | 1.000 | Hitting_BB | 0.554 | 1.000 | -0.554 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.860 | 1.000 | 2.000 | Hitting_H | 0.683 | 0.000 | 0.317 | 1.000 |
| predicted_HR | 0.170 | 1.000 | 0.000 | Hitting_HR | 0.177 | 0.000 | 0.823 | 1.000 |
| predicted_OBP | 0.263 | 0.200 | 0.333 | Hitting_OBP | 0.292 | 0.167 | -0.092 | 0.033 |
| predicted_R | 0.538 | 1.000 | 1.000 | Hitting_R | 0.538 | 0.000 | 0.462 | 1.000 |
| predicted_RBI | 0.520 | 3.000 | 1.000 | Hitting_RBI | 0.495 | 0.000 | 2.505 | 3.000 |
| predicted_SLG | 0.355 | 0.800 | 0.250 | Hitting_SLG | 0.366 | 0.000 | 0.434 | 0.800 |
| predicted_SO | 1.188 | 0.000 | 2.000 | Hitting_SO | 1.188 | 1.000 | -1.188 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | better |
| Changed Metrics | 11 |
| Boosted Metrics | 6 |
| Deboosted Metrics | 5 |
| Better Metrics | 7 |
| Worse Metrics | 4 |
| Biggest Boost | predicted_RBI: 0.5200 -> 3.0000 (boost 2.4800, better) |
| Biggest Deboost | predicted_SO: 1.1880 -> 0.0000 (deboost -1.1880, 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.2500 -> 7.5935 (boost 3.3435, better) | predicted_AVG: 0.2010 -> 0.1876 (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_OBP: 0.2610 -> 0.2708 (boost 0.0098, better) | predicted_AVG: 0.1876 -> 0.1822 (deboost -0.0054, 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: 7.5935 -> 8.0000 (boost 0.4065, better) | predicted_H: 1.3832 -> 1.0000 (deboost -0.3832, worse) | AB rounded to 8 (raw=7.59), rates preserved: AVG=0.182 HR/AB=0.044 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_H: 1.0000 -> 2.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=23.0, weight=0.174, BvP AVG=0.391) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.9323 -> 1.0000 (boost 0.0677, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1822 -> 0.2500 (boost 0.0678, better) | predicted_SLG: 0.3479 -> 0.2500 (deboost -0.0979, 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_RBI: 1.0000 -> 3.0000 (boost 2.0000, better) | predicted_AB: 8.0000 -> 5.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.2500 -> 0.3479 (boost 0.0979, better) | predicted_AVG: 0.2500 -> 0.1822 (deboost -0.0678, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "608369",
"player_name": "Corey Seager",
"position": "SS",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.156,
"predicted_3B": 0.0,
"predicted_AB": 4.25,
"predicted_AVG": 0.201,
"predicted_BB": 0.554,
"predicted_H": 0.86,
"predicted_HR": 0.17,
"predicted_OBP": 0.263,
"predicted_R": 0.538,
"predicted_RBI": 0.52,
"predicted_SLG": 0.355,
"predicted_SO": 1.188
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2457,
"predicted_3B": 0.0009,
"predicted_AB": 7.5935,
"predicted_AVG": 0.1876,
"predicted_BB": 0.918,
"predicted_H": 1.3709,
"predicted_HBP": 0.109,
"predicted_HR": 0.3344,
"predicted_OBP": 0.261,
"predicted_R": 0.9152,
"predicted_RBI": 0.99,
"predicted_SLG": 0.3479,
"predicted_SO": 2.2686
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.156,
"after": 0.2457,
"delta": 0.0897,
"percent_delta": 0.575,
"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.25,
"after": 7.5935,
"delta": 3.3435,
"percent_delta": 0.7867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.1876,
"delta": -0.0134,
"percent_delta": -0.0667,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.554,
"after": 0.918,
"delta": 0.364,
"percent_delta": 0.657,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 1.3709,
"delta": 0.5109,
"percent_delta": 0.5941,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 0.3344,
"delta": 0.1644,
"percent_delta": 0.9671,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.263,
"after": 0.261,
"delta": -0.002,
"percent_delta": -0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.538,
"after": 0.9152,
"delta": 0.3772,
"percent_delta": 0.7011,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 0.99,
"delta": 0.47,
"percent_delta": 0.9038,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3479,
"delta": -0.0071,
"percent_delta": -0.02,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.188,
"after": 2.2686,
"delta": 1.0806,
"percent_delta": 0.9096,
"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.25,
"after": 7.5935,
"delta": 3.3435,
"percent_delta": 0.7867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.1876,
"delta": -0.0134,
"percent_delta": -0.0667,
"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": 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.2457,
"predicted_3B": 0.0009,
"predicted_AB": 7.5935,
"predicted_AVG": 0.1822,
"predicted_BB": 0.9227,
"predicted_H": 1.3832,
"predicted_HBP": 0.109,
"predicted_HR": 0.337,
"predicted_OBP": 0.2708,
"predicted_R": 0.9323,
"predicted_RBI": 1.0085,
"predicted_SLG": 0.3479,
"predicted_SO": 2.257
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2457,
"after": 0.2457,
"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.5935,
"after": 7.5935,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1876,
"after": 0.1822,
"delta": -0.0054,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.918,
"after": 0.9227,
"delta": 0.0047,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.3709,
"after": 1.3832,
"delta": 0.0123,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.109,
"after": 0.109,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.3344,
"after": 0.337,
"delta": 0.0026,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.261,
"after": 0.2708,
"delta": 0.0098,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9152,
"after": 0.9323,
"delta": 0.0171,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.99,
"after": 1.0085,
"delta": 0.0185,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3479,
"after": 0.3479,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.2686,
"after": 2.257,
"delta": -0.0116,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_OBP",
"before": 0.261,
"after": 0.2708,
"delta": 0.0098,
"percent_delta": 0.0375,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.1876,
"after": 0.1822,
"delta": -0.0054,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 8 (raw=7.59), rates preserved: AVG=0.182 HR/AB=0.044",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 8.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.2457,
"after": 0.0,
"delta": -0.2457,
"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.5935,
"after": 8.0,
"delta": 0.4065,
"percent_delta": 0.0535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9227,
"after": 1.0,
"delta": 0.0773,
"percent_delta": 0.0838,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3832,
"after": 1.0,
"delta": -0.3832,
"percent_delta": -0.277,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.109,
"after": 0.0,
"delta": -0.109,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.337,
"after": 0.0,
"delta": -0.337,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.0085,
"after": 1.0,
"delta": -0.0085,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.257,
"after": 2.0,
"delta": -0.257,
"percent_delta": -0.1139,
"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": 7.5935,
"after": 8.0,
"delta": 0.4065,
"percent_delta": 0.0535,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.3832,
"after": 1.0,
"delta": -0.3832,
"percent_delta": -0.277,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=23.0, weight=0.174, BvP AVG=0.391)",
"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": 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": 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_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.8264,
"bvp": 0.1736
},
"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": 0.9323,
"after": 1.0,
"delta": 0.0677,
"percent_delta": 0.0726,
"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.9323,
"after": 1.0,
"delta": 0.0677,
"percent_delta": 0.0726,
"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": 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.1822,
"after": 0.25,
"delta": 0.0678,
"percent_delta": 0.3721,
"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.2708,
"after": 0.333,
"delta": 0.0622,
"percent_delta": 0.2297,
"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.3479,
"after": 0.25,
"delta": -0.0979,
"percent_delta": -0.2814,
"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.1822,
"after": 0.25,
"delta": 0.0678,
"percent_delta": 0.3721,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3479,
"after": 0.25,
"delta": -0.0979,
"percent_delta": -0.2814,
"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": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 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_RBI",
"before": 1.0,
"after": 3.0,
"delta": 2.0,
"percent_delta": 2.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"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.1822,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 1.0,
"predicted_OBP": 0.2708,
"predicted_R": 1.0,
"predicted_RBI": 3.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3479,
"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": 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.1822,
"delta": -0.0678,
"percent_delta": -0.2714,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2708,
"delta": -0.0622,
"percent_delta": -0.1869,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.25,
"after": 0.3479,
"delta": 0.0979,
"percent_delta": 0.3916,
"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.3479,
"delta": 0.0979,
"percent_delta": 0.3916,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1822,
"delta": -0.0678,
"percent_delta": -0.2714,
"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": 4.25,
"after": 5.0,
"delta": 0.75,
"percent_delta": 0.1765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.201,
"after": 0.1822,
"delta": -0.0188,
"percent_delta": -0.0935,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.554,
"after": 0.0,
"delta": -0.554,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.86,
"after": 1.0,
"delta": 0.14,
"percent_delta": 0.1628,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.17,
"after": 1.0,
"delta": 0.83,
"percent_delta": 4.8824,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.263,
"after": 0.2708,
"delta": 0.0078,
"percent_delta": 0.0297,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.538,
"after": 1.0,
"delta": 0.462,
"percent_delta": 0.8587,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.52,
"after": 3.0,
"delta": 2.48,
"percent_delta": 4.7692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.355,
"after": 0.3479,
"delta": -0.0071,
"percent_delta": -0.02,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.188,
"after": 0.0,
"delta": -1.188,
"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.52,
"after": 3.0,
"delta": 2.48,
"percent_delta": 4.7692,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.188,
"after": 0.0,
"delta": -1.188,
"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.156 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.250 | - |
| predicted_AVG | 0.201 | - |
| predicted_BB | 0.554 | - |
| predicted_H | 0.860 | - |
| predicted_HR | 0.170 | - |
| predicted_OBP | 0.263 | - |
| predicted_R | 0.538 | - |
| predicted_RBI | 0.520 | - |
| predicted_SLG | 0.355 | - |
| predicted_SO | 1.188 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.246 | 0.090 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 7.593 | 3.343 |
| predicted_AVG | 0.188 | -0.013 |
| predicted_BB | 0.918 | 0.364 |
| predicted_H | 1.371 | 0.511 |
| predicted_HBP | 0.109 | - |
| predicted_HR | 0.334 | 0.164 |
| predicted_OBP | 0.261 | -0.002 |
| predicted_R | 0.915 | 0.377 |
| predicted_RBI | 0.990 | 0.470 |
| predicted_SLG | 0.348 | -0.007 |
| predicted_SO | 2.269 | 1.081 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.246 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 7.593 | 0.000 |
| predicted_AVG | 0.182 | -0.005 |
| predicted_BB | 0.923 | 0.005 |
| predicted_H | 1.383 | 0.012 |
| predicted_HBP | 0.109 | 0.000 |
| predicted_HR | 0.337 | 0.003 |
| predicted_OBP | 0.271 | 0.010 |
| predicted_R | 0.932 | 0.017 |
| predicted_RBI | 1.008 | 0.018 |
| predicted_SLG | 0.348 | 0.000 |
| predicted_SO | 2.257 | -0.012 |
AB rounded to 8 (raw=7.59), rates preserved: AVG=0.182 HR/AB=0.044
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 8.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=23.0, weight=0.174, BvP AVG=0.391)
| 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 | 1.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.246 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 8.000 | 0.407 |
| predicted_AVG | 0.250 | 0.068 |
| predicted_BB | 1.000 | 0.077 |
| predicted_H | 2.000 | 0.617 |
| predicted_HR | 0.000 | -0.337 |
| predicted_OBP | 0.333 | 0.062 |
| predicted_R | 1.000 | 0.068 |
| predicted_RBI | 1.000 | -0.008 |
| predicted_SLG | 0.250 | -0.098 |
| predicted_SO | 2.000 | -0.257 |
Attached 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 | 1.000 | 1.000 |
| PA | 5.000 | - |
| R | 1.000 | 0.000 |
| RBI | 3.000 | 2.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 | 0.000 | 1.000 | 3.000 | 1.000 | 1.000 | 6.000 | 0.1429 | 0.1818 | 0.2857 | 0.1429 | 0.0476 | 0.1429 | 0.0476 | 0.2857 |
| last_10 | 0.20 | 6 | - | 41.000 | 3.000 | 0.000 | 0.000 | 1.000 | 5.000 | 3.000 | 1.000 | 14.000 | 0.0732 | 0.0952 | 0.1463 | 0.0732 | 0.0244 | 0.1220 | 0.0244 | 0.3415 |
| season | 0.60 | 46 | - | 697.000 | 127.000 | 29.000 | 0.000 | 33.000 | 92.000 | 100.000 | 103.000 | 221.000 | 0.1822 | 0.2922 | 0.3659 | 0.1822 | 0.0474 | 0.1320 | 0.1478 | 0.3171 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3600 |
| predicted_3B | 0.0020 |
| predicted_AB | 11.8550 |
| predicted_AVG | 0.1706 |
| predicted_BB | 1.3820 |
| predicted_H | 2.0220 |
| predicted_HBP | 0.1090 |
| predicted_HR | 0.5440 |
| predicted_OBP | 0.2585 |
| predicted_R | 1.3960 |
| predicted_RBI | 1.5890 |
| predicted_SLG | 0.3389 |
| predicted_SO | 3.6460 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1560 | 0.3600 | 0.2457 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 4.2500 | 11.8550 | 7.5935 | model_form_blend |
| predicted_AVG | 0.2010 | 0.1706 | 0.1876 | model_form_blend |
| predicted_BB | 0.5540 | 1.3820 | 0.9180 | model_form_blend |
| predicted_H | 0.8600 | 2.0220 | 1.3709 | model_form_blend |
| predicted_HBP | - | 0.1090 | 0.1090 | form_only |
| predicted_HR | 0.1700 | 0.5440 | 0.3344 | model_form_blend |
| predicted_OBP | 0.2630 | 0.2585 | 0.2610 | model_form_blend |
| predicted_R | 0.5380 | 1.3960 | 0.9152 | model_form_blend |
| predicted_RBI | 0.5200 | 1.5890 | 0.9900 | model_form_blend |
| predicted_SLG | 0.3550 | 0.3389 | 0.3479 | model_form_blend |
| predicted_SO | 1.1880 | 3.6460 | 2.2686 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 186 |
| Season rows before report date | 186 |
| Report year | 2026 |
| Profile rows used | 186 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 3 |
| 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 | 5 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 1 |
| 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 | 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 | 20260610_TEX@KC |
| game_type | full |
| mlbID | 608369 |
| playerID | 608369 |
| playerName | Corey Seager |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.0 |
| sl_bb_percent | 11.5 |
| sl_woba | 0.281 |
| sl_xwoba | 0.333 |
| sl_xba | 0.227 |
| sl_xslg | 0.452 |
| sl_sweet_spot_percent | 33.9 |
| sl_barrel_batted_rate | 15.7 |
| sl_hard_hit_percent | 44.6 |
| sl_exit_velocity_avg | 91.1 |
| sl_launch_angle_avg | 12.3 |
| sl_whiff_percent | 35.2 |
| 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.303 | 0.000 | 0.000 | Hitting_2B | 0.299 | 0.000 | -0.299 | 0.000 |
| predicted_3B | 0.034 | 0.000 | 0.000 | Hitting_3B | 0.034 | 0.000 | -0.034 | 0.000 |
| predicted_AB | 3.503 | 3.000 | 5.000 | Hitting_AB | 3.463 | 4.000 | -0.463 | -1.000 |
| predicted_AVG | 0.259 | 0.333 | 0.200 | Hitting_AVG | 0.303 | 0.250 | 0.030 | 0.083 |
| predicted_BB | 0.326 | 1.000 | 0.000 | Hitting_BB | 0.322 | 0.000 | 0.678 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.028 | 0.000 | -0.028 | 0.000 |
| predicted_H | 0.360 | 1.000 | 1.000 | Hitting_H | 1.051 | 1.000 | -0.051 | 0.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.079 | 0.000 | -0.079 | 0.000 |
| predicted_OBP | 0.315 | 0.500 | 0.200 | Hitting_OBP | 0.359 | 0.400 | 0.141 | 0.100 |
| predicted_R | 0.514 | 0.000 | 1.000 | Hitting_R | 0.508 | 1.000 | -0.508 | -1.000 |
| predicted_RBI | 0.240 | 0.000 | 1.000 | Hitting_RBI | 0.638 | 0.000 | -0.638 | 0.000 |
| predicted_SLG | 0.417 | 0.333 | 0.200 | Hitting_SLG | 0.478 | 0.250 | -0.145 | 0.083 |
| predicted_SO | 0.869 | 0.000 | 1.000 | Hitting_SO | 0.859 | 3.000 | -0.859 | -3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.3260 -> 1.0000 (boost 0.6740, better) |
| Biggest Deboost | predicted_SO: 0.8690 -> 0.0000 (deboost -0.8690, 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.5030 -> 5.3581 (boost 1.8551, 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.4358 -> 0.3826 (deboost -0.0532, 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_RBI: 0.7576 -> 1.0000 (boost 0.2424, better) | predicted_2B: 0.4706 -> 0.0000 (deboost -0.4706, worse) | AB rounded to 5 (raw=5.36), rates preserved: AVG=0.233 HR/AB=0.014 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7492 -> 1.0000 (boost 0.2508, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.3826 -> 0.2000 (deboost -0.1826, 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 -> 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.3826 (boost 0.1826, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677649",
"player_name": "Ezequiel Duran",
"position": "RF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.303,
"predicted_3B": 0.034,
"predicted_AB": 3.503,
"predicted_AVG": 0.259,
"predicted_BB": 0.326,
"predicted_H": 0.36,
"predicted_HR": 0.04,
"predicted_OBP": 0.315,
"predicted_R": 0.514,
"predicted_RBI": 0.24,
"predicted_SLG": 0.417,
"predicted_SO": 0.869
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4706,
"predicted_3B": 0.0563,
"predicted_AB": 5.3581,
"predicted_AVG": 0.2794,
"predicted_BB": 0.4643,
"predicted_H": 1.2383,
"predicted_HBP": 0.133,
"predicted_HR": 0.0719,
"predicted_OBP": 0.3374,
"predicted_R": 0.7354,
"predicted_RBI": 0.7437,
"predicted_SLG": 0.4358,
"predicted_SO": 1.3587
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.303,
"after": 0.4706,
"delta": 0.1676,
"percent_delta": 0.5531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0563,
"delta": 0.0223,
"percent_delta": 0.6559,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.503,
"after": 5.3581,
"delta": 1.8551,
"percent_delta": 0.5296,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2794,
"delta": 0.0204,
"percent_delta": 0.0788,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.326,
"after": 0.4643,
"delta": 0.1383,
"percent_delta": 0.4242,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.36,
"after": 1.2383,
"delta": 0.8783,
"percent_delta": 2.4397,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0719,
"delta": 0.0319,
"percent_delta": 0.7975,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.315,
"after": 0.3374,
"delta": 0.0224,
"percent_delta": 0.0711,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.514,
"after": 0.7354,
"delta": 0.2214,
"percent_delta": 0.4307,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.7437,
"delta": 0.5037,
"percent_delta": 2.0988,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.417,
"after": 0.4358,
"delta": 0.0188,
"percent_delta": 0.0451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.869,
"after": 1.3587,
"delta": 0.4897,
"percent_delta": 0.5635,
"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.503,
"after": 5.3581,
"delta": 1.8551,
"percent_delta": 0.5296,
"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.4706,
"predicted_3B": 0.0563,
"predicted_AB": 5.3581,
"predicted_AVG": 0.2332,
"predicted_BB": 0.4667,
"predicted_H": 1.2494,
"predicted_HBP": 0.133,
"predicted_HR": 0.0725,
"predicted_OBP": 0.2946,
"predicted_R": 0.7492,
"predicted_RBI": 0.7576,
"predicted_SLG": 0.3826,
"predicted_SO": 1.3518
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4706,
"after": 0.4706,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0563,
"after": 0.0563,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3581,
"after": 5.3581,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2794,
"after": 0.2332,
"delta": -0.0462,
"percent_delta": -0.1654,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4643,
"after": 0.4667,
"delta": 0.0024,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2383,
"after": 1.2494,
"delta": 0.0111,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.0719,
"after": 0.0725,
"delta": 0.0006,
"percent_delta": 0.0083,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3374,
"after": 0.2946,
"delta": -0.0428,
"percent_delta": -0.1269,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7354,
"after": 0.7492,
"delta": 0.0138,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7437,
"after": 0.7576,
"delta": 0.0139,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4358,
"after": 0.3826,
"delta": -0.0532,
"percent_delta": -0.1221,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3587,
"after": 1.3518,
"delta": -0.0069,
"percent_delta": -0.0051,
"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.4358,
"after": 0.3826,
"delta": -0.0532,
"percent_delta": -0.1221,
"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.233 HR/AB=0.014",
"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.4706,
"after": 0.0,
"delta": -0.4706,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0563,
"after": 0.0,
"delta": -0.0563,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 5.3581,
"after": 5.0,
"delta": -0.3581,
"percent_delta": -0.0668,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4667,
"after": 0.0,
"delta": -0.4667,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.2494,
"after": 1.0,
"delta": -0.2494,
"percent_delta": -0.1996,
"direction": "deboost",
"projection_effect": "worse",
"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.0725,
"after": 0.0,
"delta": -0.0725,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7576,
"after": 1.0,
"delta": 0.2424,
"percent_delta": 0.32,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.3518,
"after": 1.0,
"delta": -0.3518,
"percent_delta": -0.2602,
"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.7576,
"after": 1.0,
"delta": 0.2424,
"percent_delta": 0.32,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4706,
"after": 0.0,
"delta": -0.4706,
"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.7492,
"after": 1.0,
"delta": 0.2508,
"percent_delta": 0.3348,
"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.7492,
"after": 1.0,
"delta": 0.2508,
"percent_delta": 0.3348,
"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.2332,
"after": 0.2,
"delta": -0.0332,
"percent_delta": -0.1424,
"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.2946,
"after": 0.2,
"delta": -0.0946,
"percent_delta": -0.3211,
"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.3826,
"after": 0.2,
"delta": -0.1826,
"percent_delta": -0.4773,
"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.3826,
"after": 0.2,
"delta": -0.1826,
"percent_delta": -0.4773,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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.2332,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2946,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3826,
"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.2,
"after": 0.2332,
"delta": 0.0332,
"percent_delta": 0.1659,
"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.2946,
"delta": 0.0946,
"percent_delta": 0.4731,
"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.3826,
"delta": 0.1826,
"percent_delta": 0.913,
"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.3826,
"delta": 0.1826,
"percent_delta": 0.913,
"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.303,
"after": 0.0,
"delta": -0.303,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0,
"delta": -0.034,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.503,
"after": 3.0,
"delta": -0.503,
"percent_delta": -0.1436,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2332,
"delta": -0.0258,
"percent_delta": -0.0996,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.326,
"after": 1.0,
"delta": 0.674,
"percent_delta": 2.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.36,
"after": 1.0,
"delta": 0.64,
"percent_delta": 1.7778,
"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.2946,
"delta": -0.0204,
"percent_delta": -0.0648,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.514,
"after": 0.0,
"delta": -0.514,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.24,
"after": 0.0,
"delta": -0.24,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.417,
"after": 0.3826,
"delta": -0.0344,
"percent_delta": -0.0825,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.869,
"after": 0.0,
"delta": -0.869,
"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.326,
"after": 1.0,
"delta": 0.674,
"percent_delta": 2.0675,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.869,
"after": 0.0,
"delta": -0.869,
"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.303 | - |
| predicted_3B | 0.034 | - |
| predicted_AB | 3.503 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.326 | - |
| predicted_H | 0.360 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.315 | - |
| predicted_R | 0.514 | - |
| predicted_RBI | 0.240 | - |
| predicted_SLG | 0.417 | - |
| predicted_SO | 0.869 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.471 | 0.168 |
| predicted_3B | 0.056 | 0.022 |
| predicted_AB | 5.358 | 1.855 |
| predicted_AVG | 0.279 | 0.020 |
| predicted_BB | 0.464 | 0.138 |
| predicted_H | 1.238 | 0.878 |
| predicted_HBP | 0.133 | - |
| predicted_HR | 0.072 | 0.032 |
| predicted_OBP | 0.337 | 0.022 |
| predicted_R | 0.735 | 0.221 |
| predicted_RBI | 0.744 | 0.504 |
| predicted_SLG | 0.436 | 0.019 |
| predicted_SO | 1.359 | 0.490 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.471 | 0.000 |
| predicted_3B | 0.056 | 0.000 |
| predicted_AB | 5.358 | 0.000 |
| predicted_AVG | 0.233 | -0.046 |
| predicted_BB | 0.467 | 0.002 |
| predicted_H | 1.249 | 0.011 |
| predicted_HBP | 0.133 | 0.000 |
| predicted_HR | 0.072 | 0.001 |
| predicted_OBP | 0.295 | -0.043 |
| predicted_R | 0.749 | 0.014 |
| predicted_RBI | 0.758 | 0.014 |
| predicted_SLG | 0.383 | -0.053 |
| predicted_SO | 1.352 | -0.007 |
AB rounded to 5 (raw=5.36), rates preserved: AVG=0.233 HR/AB=0.014
| 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.471 |
| predicted_3B | 0.000 | -0.056 |
| predicted_AB | 5.000 | -0.358 |
| predicted_AVG | 0.200 | -0.033 |
| predicted_BB | 0.000 | -0.467 |
| predicted_H | 1.000 | -0.249 |
| predicted_HR | 0.000 | -0.072 |
| predicted_OBP | 0.200 | -0.095 |
| predicted_R | 1.000 | 0.251 |
| predicted_RBI | 1.000 | 0.242 |
| predicted_SLG | 0.200 | -0.183 |
| predicted_SO | 1.000 | -0.352 |
Attached 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 | 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 | 2.000 | 0.000 | 0.000 | 3.000 | 2.000 | 1.000 | 5.000 | 0.3333 | 0.4000 | 0.4444 | 0.3333 | 0.0000 | 0.1667 | 0.0556 | 0.2778 |
| last_10 | 0.20 | 10 | - | 37.000 | 11.000 | 3.000 | 1.000 | 0.000 | 7.000 | 4.000 | 3.000 | 10.000 | 0.2973 | 0.3659 | 0.4324 | 0.2973 | 0.0000 | 0.1892 | 0.0811 | 0.2703 |
| season | 0.60 | 57 | - | 613.000 | 186.000 | 53.000 | 6.000 | 14.000 | 113.000 | 90.000 | 57.000 | 152.000 | 0.3034 | 0.3588 | 0.4780 | 0.3034 | 0.0228 | 0.1843 | 0.0930 | 0.2480 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6860 |
| predicted_3B | 0.0850 |
| predicted_AB | 7.7420 |
| predicted_AVG | 0.3057 |
| predicted_BB | 0.6420 |
| predicted_H | 2.3670 |
| predicted_HBP | 0.1330 |
| predicted_HR | 0.1130 |
| predicted_OBP | 0.3661 |
| predicted_R | 1.0200 |
| predicted_RBI | 1.3910 |
| predicted_SLG | 0.4599 |
| predicted_SO | 1.9880 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3030 | 0.6860 | 0.4706 | model_form_blend |
| predicted_3B | 0.0340 | 0.0850 | 0.0563 | model_form_blend |
| predicted_AB | 3.5030 | 7.7420 | 5.3581 | model_form_blend |
| predicted_AVG | 0.2590 | 0.3057 | 0.2794 | model_form_blend |
| predicted_BB | 0.3260 | 0.6420 | 0.4643 | model_form_blend |
| predicted_H | 0.3600 | 2.3670 | 1.2383 | model_form_blend |
| predicted_HBP | - | 0.1330 | 0.1330 | form_only |
| predicted_HR | 0.0400 | 0.1130 | 0.0719 | model_form_blend |
| predicted_OBP | 0.3150 | 0.3661 | 0.3374 | model_form_blend |
| predicted_R | 0.5140 | 1.0200 | 0.7354 | model_form_blend |
| predicted_RBI | 0.2400 | 1.3910 | 0.7437 | model_form_blend |
| predicted_SLG | 0.4170 | 0.4599 | 0.4358 | model_form_blend |
| predicted_SO | 0.8690 | 1.9880 | 1.3587 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 175 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 0 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.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 | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 3 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 6 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 1B |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 677649 |
| playerID | 677649 |
| playerName | Ezequiel Duran |
| pos | 2B |
| started | True |
| startingPosition | 1B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.1 |
| sl_bb_percent | 7.5 |
| sl_woba | 0.35 |
| sl_xwoba | 0.315 |
| sl_xba | 0.264 |
| sl_xslg | 0.381 |
| sl_sweet_spot_percent | 36.1 |
| sl_barrel_batted_rate | 6.3 |
| sl_hard_hit_percent | 38.9 |
| sl_exit_velocity_avg | 90.2 |
| sl_launch_angle_avg | 11.6 |
| sl_whiff_percent | 29.7 |
| sl_swing_percent | 48.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.157 | 0.000 | 0.000 | Hitting_2B | 0.157 | 0.000 | -0.157 | 0.000 |
| predicted_3B | 0.101 | 0.000 | 0.000 | Hitting_3B | 0.101 | 0.000 | -0.101 | 0.000 |
| predicted_AB | 4.550 | 4.000 | 7.000 | Hitting_AB | 4.157 | 5.000 | -0.157 | -1.000 |
| predicted_AVG | 0.224 | 0.250 | 0.286 | Hitting_AVG | 0.241 | 0.200 | 0.009 | 0.050 |
| predicted_BB | 0.202 | 1.000 | 0.000 | Hitting_BB | 0.202 | 0.000 | 0.798 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 1.020 | 1.000 | 2.000 | Hitting_H | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.045 | 0.000 | -0.045 | 0.000 |
| predicted_OBP | 0.295 | 0.400 | 0.286 | Hitting_OBP | 0.276 | 0.200 | 0.124 | 0.200 |
| predicted_R | 0.506 | 1.000 | 1.000 | Hitting_R | 0.506 | 1.000 | 0.494 | 0.000 |
| predicted_RBI | 0.360 | 0.000 | 0.000 | Hitting_RBI | 0.202 | 0.000 | -0.202 | 0.000 |
| predicted_SLG | 0.389 | 0.250 | 0.286 | Hitting_SLG | 0.359 | 0.200 | -0.109 | 0.050 |
| predicted_SO | 0.989 | 1.000 | 2.000 | Hitting_SO | 0.989 | 2.000 | 0.011 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 9 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_BB: 0.2020 -> 1.0000 (boost 0.7980, better) |
| Biggest Deboost | predicted_AB: 4.5500 -> 4.0000 (deboost -0.5500, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 10 | 8 | 2 | 7 | 3 | predicted_AB: 4.5500 -> 7.2265 (boost 2.6765, better) | predicted_SLG: 0.3890 -> 0.3788 (deboost -0.0102, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 1 | 0 | 1 | 0 | 1 | - | predicted_OBP: 0.2856 -> 0.2691 (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 | 8 | 2 | 6 | 1 | 7 | predicted_H: 1.6205 -> 2.0000 (boost 0.3795, better) | predicted_RBI: 0.4668 -> 0.0000 (deboost -0.4668, worse) | AB rounded to 7 (raw=7.23), rates preserved: AVG=0.224 HR/AB=0.026 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | 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_AVG: 0.2242 -> 0.2860 (boost 0.0618, better) | predicted_SLG: 0.3763 -> 0.2860 (deboost -0.0903, 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: 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3763 (boost 0.0903, better) | predicted_AVG: 0.2860 -> 0.2242 (deboost -0.0618, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "694671",
"player_name": "Wyatt Langford",
"position": "LF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.157,
"predicted_3B": 0.101,
"predicted_AB": 4.55,
"predicted_AVG": 0.224,
"predicted_BB": 0.202,
"predicted_H": 1.02,
"predicted_HR": 0.13,
"predicted_OBP": 0.295,
"predicted_R": 0.506,
"predicted_RBI": 0.36,
"predicted_SLG": 0.389,
"predicted_SO": 0.989
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2831,
"predicted_3B": 0.1302,
"predicted_AB": 7.2265,
"predicted_AVG": 0.2228,
"predicted_BB": 0.441,
"predicted_H": 1.606,
"predicted_HBP": 0.007,
"predicted_HR": 0.1836,
"predicted_OBP": 0.2856,
"predicted_R": 0.9903,
"predicted_RBI": 0.4582,
"predicted_SLG": 0.3788,
"predicted_SO": 1.7947
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.157,
"after": 0.2831,
"delta": 0.1261,
"percent_delta": 0.8032,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.101,
"after": 0.1302,
"delta": 0.0292,
"percent_delta": 0.2891,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.55,
"after": 7.2265,
"delta": 2.6765,
"percent_delta": 0.5882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.2228,
"delta": -0.0012,
"percent_delta": -0.0054,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.202,
"after": 0.441,
"delta": 0.239,
"percent_delta": 1.1832,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.606,
"delta": 0.586,
"percent_delta": 0.5745,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1836,
"delta": 0.0536,
"percent_delta": 0.4123,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.2856,
"delta": -0.0094,
"percent_delta": -0.0319,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.506,
"after": 0.9903,
"delta": 0.4843,
"percent_delta": 0.9571,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.4582,
"delta": 0.0982,
"percent_delta": 0.2728,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3788,
"delta": -0.0102,
"percent_delta": -0.0262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.989,
"after": 1.7947,
"delta": 0.8057,
"percent_delta": 0.8147,
"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.55,
"after": 7.2265,
"delta": 2.6765,
"percent_delta": 0.5882,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3788,
"delta": -0.0102,
"percent_delta": -0.0262,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 7,
"season": 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.2831,
"predicted_3B": 0.1302,
"predicted_AB": 7.2265,
"predicted_AVG": 0.2242,
"predicted_BB": 0.4432,
"predicted_H": 1.6205,
"predicted_HBP": 0.007,
"predicted_HR": 0.1851,
"predicted_OBP": 0.2691,
"predicted_R": 1.0088,
"predicted_RBI": 0.4668,
"predicted_SLG": 0.3763,
"predicted_SO": 1.7855
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2831,
"after": 0.2831,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.1302,
"after": 0.1302,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.2265,
"after": 7.2265,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2228,
"after": 0.2242,
"delta": 0.0014,
"percent_delta": 0.0063,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.441,
"after": 0.4432,
"delta": 0.0022,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.606,
"after": 1.6205,
"delta": 0.0145,
"percent_delta": 0.009,
"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.1836,
"after": 0.1851,
"delta": 0.0015,
"percent_delta": 0.0082,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2856,
"after": 0.2691,
"delta": -0.0165,
"percent_delta": -0.0578,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.9903,
"after": 1.0088,
"delta": 0.0185,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4582,
"after": 0.4668,
"delta": 0.0086,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3788,
"after": 0.3763,
"delta": -0.0025,
"percent_delta": -0.0066,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.7947,
"after": 1.7855,
"delta": -0.0092,
"percent_delta": -0.0051,
"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.2856,
"after": 0.2691,
"delta": -0.0165,
"percent_delta": -0.0578,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.23), rates preserved: AVG=0.224 HR/AB=0.026",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2831,
"after": 0.0,
"delta": -0.2831,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.1302,
"after": 0.0,
"delta": -0.1302,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 7.2265,
"after": 7.0,
"delta": -0.2265,
"percent_delta": -0.0313,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.4432,
"after": 0.0,
"delta": -0.4432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6205,
"after": 2.0,
"delta": 0.3795,
"percent_delta": 0.2342,
"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.1851,
"after": 0.0,
"delta": -0.1851,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4668,
"after": 0.0,
"delta": -0.4668,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7855,
"after": 2.0,
"delta": 0.2145,
"percent_delta": 0.1201,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 2,
"deboosted_metrics": 6,
"better_metrics": 1,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_H",
"before": 1.6205,
"after": 2.0,
"delta": 0.3795,
"percent_delta": 0.2342,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4668,
"after": 0.0,
"delta": -0.4668,
"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.300)",
"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": 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_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": 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.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": 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": 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.0088,
"after": 1.0,
"delta": -0.0088,
"percent_delta": -0.0087,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"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": 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": 0.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.2242,
"after": 0.286,
"delta": 0.0618,
"percent_delta": 0.2756,
"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.2691,
"after": 0.286,
"delta": 0.0169,
"percent_delta": 0.0628,
"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.3763,
"after": 0.286,
"delta": -0.0903,
"percent_delta": -0.24,
"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.2242,
"after": 0.286,
"delta": 0.0618,
"percent_delta": 0.2756,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3763,
"after": 0.286,
"delta": -0.0903,
"percent_delta": -0.24,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 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": 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": 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": 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": 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": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2242,
"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.2691,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3763,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.2242,
"delta": -0.0618,
"percent_delta": -0.216,
"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.286,
"after": 0.2691,
"delta": -0.0169,
"percent_delta": -0.0592,
"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.3763,
"delta": 0.0903,
"percent_delta": 0.3156,
"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.3763,
"delta": 0.0903,
"percent_delta": 0.3156,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2242,
"delta": -0.0618,
"percent_delta": -0.216,
"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.157,
"after": 0.0,
"delta": -0.157,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.101,
"after": 0.0,
"delta": -0.101,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.55,
"after": 4.0,
"delta": -0.55,
"percent_delta": -0.1209,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.224,
"after": 0.2242,
"delta": 0.0002,
"percent_delta": 0.0009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.202,
"after": 1.0,
"delta": 0.798,
"percent_delta": 3.9505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.02,
"after": 1.0,
"delta": -0.02,
"percent_delta": -0.0196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.295,
"after": 0.2691,
"delta": -0.0259,
"percent_delta": -0.0878,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.506,
"after": 1.0,
"delta": 0.494,
"percent_delta": 0.9763,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.36,
"after": 0.0,
"delta": -0.36,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.389,
"after": 0.3763,
"delta": -0.0127,
"percent_delta": -0.0326,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.989,
"after": 1.0,
"delta": 0.011,
"percent_delta": 0.0111,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 9,
"boosted_metrics": 2,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.202,
"after": 1.0,
"delta": 0.798,
"percent_delta": 3.9505,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.55,
"after": 4.0,
"delta": -0.55,
"percent_delta": -0.1209,
"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.157 | - |
| predicted_3B | 0.101 | - |
| predicted_AB | 4.550 | - |
| predicted_AVG | 0.224 | - |
| predicted_BB | 0.202 | - |
| predicted_H | 1.020 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.295 | - |
| predicted_R | 0.506 | - |
| predicted_RBI | 0.360 | - |
| predicted_SLG | 0.389 | - |
| predicted_SO | 0.989 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.283 | 0.126 |
| predicted_3B | 0.130 | 0.029 |
| predicted_AB | 7.226 | 2.676 |
| predicted_AVG | 0.223 | -0.001 |
| predicted_BB | 0.441 | 0.239 |
| predicted_H | 1.606 | 0.586 |
| predicted_HBP | 0.007 | - |
| predicted_HR | 0.184 | 0.054 |
| predicted_OBP | 0.286 | -0.009 |
| predicted_R | 0.990 | 0.484 |
| predicted_RBI | 0.458 | 0.098 |
| predicted_SLG | 0.379 | -0.010 |
| predicted_SO | 1.795 | 0.806 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.283 | 0.000 |
| predicted_3B | 0.130 | 0.000 |
| predicted_AB | 7.226 | 0.000 |
| predicted_AVG | 0.224 | 0.001 |
| predicted_BB | 0.443 | 0.002 |
| predicted_H | 1.621 | 0.014 |
| predicted_HBP | 0.007 | 0.000 |
| predicted_HR | 0.185 | 0.001 |
| predicted_OBP | 0.269 | -0.017 |
| predicted_R | 1.009 | 0.018 |
| predicted_RBI | 0.467 | 0.009 |
| predicted_SLG | 0.376 | -0.003 |
| predicted_SO | 1.786 | -0.009 |
AB rounded to 7 (raw=7.23), rates preserved: AVG=0.224 HR/AB=0.026
| 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 | 0.000 | - |
| SB | 0.000 | - |
| SO | 2.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 | 7.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 2.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.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 | 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 | 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.283 |
| predicted_3B | 0.000 | -0.130 |
| predicted_AB | 7.000 | -0.226 |
| predicted_AVG | 0.286 | 0.062 |
| predicted_BB | 0.000 | -0.443 |
| predicted_H | 2.000 | 0.379 |
| predicted_HR | 0.000 | -0.185 |
| predicted_OBP | 0.286 | 0.017 |
| predicted_R | 1.000 | -0.009 |
| predicted_RBI | 0.000 | -0.467 |
| predicted_SLG | 0.286 | -0.090 |
| predicted_SO | 2.000 | 0.214 |
Attached 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 | 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 | 1.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 18.000 | 3.000 | 1.000 | 0.000 | 1.000 | 1.000 | 4.000 | 2.000 | 6.000 | 0.1667 | 0.2500 | 0.3889 | 0.1667 | 0.0556 | 0.0556 | 0.1111 | 0.3333 |
| last_10 | 0.20 | 7 | - | 32.000 | 6.000 | 1.000 | 0.000 | 1.000 | 1.000 | 7.000 | 4.000 | 11.000 | 0.1875 | 0.2778 | 0.3125 | 0.1875 | 0.0312 | 0.0312 | 0.1250 | 0.3438 |
| season | 0.60 | 25 | - | 370.000 | 89.000 | 14.000 | 9.000 | 4.000 | 18.000 | 45.000 | 18.000 | 88.000 | 0.2405 | 0.2758 | 0.3595 | 0.2405 | 0.0108 | 0.0486 | 0.0486 | 0.2378 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4510 |
| predicted_3B | 0.1690 |
| predicted_AB | 10.7890 |
| predicted_AVG | 0.2212 |
| predicted_BB | 0.7590 |
| predicted_H | 2.3860 |
| predicted_HBP | 0.0070 |
| predicted_HR | 0.2550 |
| predicted_OBP | 0.2732 |
| predicted_R | 1.6350 |
| predicted_RBI | 0.5890 |
| predicted_SLG | 0.3653 |
| predicted_SO | 2.8670 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1570 | 0.4510 | 0.2831 | model_form_blend |
| predicted_3B | 0.1010 | 0.1690 | 0.1302 | model_form_blend |
| predicted_AB | 4.5500 | 10.7890 | 7.2265 | model_form_blend |
| predicted_AVG | 0.2240 | 0.2212 | 0.2228 | model_form_blend |
| predicted_BB | 0.2020 | 0.7590 | 0.4410 | model_form_blend |
| predicted_H | 1.0200 | 2.3860 | 1.6060 | model_form_blend |
| predicted_HBP | - | 0.0070 | 0.0070 | form_only |
| predicted_HR | 0.1300 | 0.2550 | 0.1836 | model_form_blend |
| predicted_OBP | 0.2950 | 0.2732 | 0.2856 | model_form_blend |
| predicted_R | 0.5060 | 1.6350 | 0.9903 | model_form_blend |
| predicted_RBI | 0.3600 | 0.5890 | 0.4582 | model_form_blend |
| predicted_SLG | 0.3890 | 0.3653 | 0.3788 | model_form_blend |
| predicted_SO | 0.9890 | 2.8670 | 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 | 89 |
| Season rows before report date | 89 |
| Report year | 2026 |
| Profile rows used | 89 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 5 |
| AB | 4 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.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 | 5 |
| Hitting_AVG | 0.2 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 2 |
| Hitting_TB | 1 |
| Hitting_battingOrder | 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 | 20260610_TEX@KC |
| game_type | full |
| mlbID | 694671 |
| playerID | 694671 |
| playerName | Wyatt Langford |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 24.0 |
| sl_bb_percent | 5.8 |
| sl_woba | 0.281 |
| sl_xwoba | 0.284 |
| sl_xba | 0.238 |
| sl_xslg | 0.363 |
| sl_sweet_spot_percent | 27.4 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 37.0 |
| sl_exit_velocity_avg | 89.6 |
| sl_launch_angle_avg | 14.9 |
| sl_whiff_percent | 26.8 |
| sl_swing_percent | 46.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.294 | 0.000 | 0.000 | Hitting_2B | 0.294 | 0.000 | -0.294 | 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.890 | 5.000 | 1.110 | 0.000 |
| predicted_AVG | 0.268 | 0.000 | 0.286 | Hitting_AVG | 0.307 | 0.200 | -0.307 | -0.200 |
| predicted_BB | 0.326 | 0.000 | 1.000 | Hitting_BB | 0.326 | 1.000 | -0.326 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.018 | 0.000 | -0.018 | 0.000 |
| predicted_H | 1.160 | 0.000 | 2.000 | Hitting_H | 1.193 | 1.000 | -1.193 | -1.000 |
| predicted_HR | 0.140 | 0.000 | 0.000 | Hitting_HR | 0.128 | 0.000 | -0.128 | 0.000 |
| predicted_OBP | 0.359 | 0.000 | 0.375 | Hitting_OBP | 0.364 | 0.333 | -0.364 | -0.333 |
| predicted_R | 0.491 | 0.000 | 1.000 | Hitting_R | 0.491 | 0.000 | -0.491 | 0.000 |
| predicted_RBI | 0.540 | 0.000 | 1.000 | Hitting_RBI | 0.459 | 1.000 | -0.459 | -1.000 |
| predicted_SLG | 0.456 | 0.000 | 0.286 | Hitting_SLG | 0.481 | 0.200 | -0.481 | -0.200 |
| predicted_SO | 0.624 | 0.000 | 1.000 | Hitting_SO | 0.624 | 2.000 | -0.624 | -2.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 4 |
| Worse Metrics | 6 |
| Biggest Boost | predicted_AB: 4.3300 -> 5.0000 (boost 0.6700, 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 | 11 | 11 | 0 | 10 | 1 | predicted_AB: 4.3300 -> 6.6971 (boost 2.3671, 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.2949 -> 0.3097 (boost 0.0148, better) | predicted_OBP: 0.3701 -> 0.3613 (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 | 7 | 3 | 4 | 3 | 4 | predicted_BB: 0.5416 -> 1.0000 (boost 0.4584, better) | predicted_2B: 0.3782 -> 0.0000 (deboost -0.3782, worse) | AB rounded to 7 (raw=6.70), rates preserved: AVG=0.310 HR/AB=0.037 |
| 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.8576 -> 1.0000 (boost 0.1424, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.3613 -> 0.3750 (boost 0.0137, better) | predicted_SLG: 0.4762 -> 0.2860 (deboost -0.1902, 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 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2860 -> 0.4762 (boost 0.1902, better) | predicted_OBP: 0.3750 -> 0.3613 (deboost -0.0137, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "673962",
"player_name": "Josh Jung",
"position": "3B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.294,
"predicted_3B": 0.0,
"predicted_AB": 4.33,
"predicted_AVG": 0.268,
"predicted_BB": 0.326,
"predicted_H": 1.16,
"predicted_HR": 0.14,
"predicted_OBP": 0.359,
"predicted_R": 0.491,
"predicted_RBI": 0.54,
"predicted_SLG": 0.456,
"predicted_SO": 0.624
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3782,
"predicted_3B": 0.0004,
"predicted_AB": 6.6971,
"predicted_AVG": 0.2949,
"predicted_BB": 0.5389,
"predicted_H": 2.0554,
"predicted_HBP": 0.107,
"predicted_HR": 0.2436,
"predicted_OBP": 0.3701,
"predicted_R": 0.8419,
"predicted_RBI": 0.8491,
"predicted_SLG": 0.4734,
"predicted_SO": 0.9939
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.294,
"after": 0.3782,
"delta": 0.0842,
"percent_delta": 0.2864,
"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": 6.6971,
"delta": 2.3671,
"percent_delta": 0.5467,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.268,
"after": 0.2949,
"delta": 0.0269,
"percent_delta": 0.1004,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.326,
"after": 0.5389,
"delta": 0.2129,
"percent_delta": 0.6531,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.16,
"after": 2.0554,
"delta": 0.8954,
"percent_delta": 0.7719,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.14,
"after": 0.2436,
"delta": 0.1036,
"percent_delta": 0.74,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.359,
"after": 0.3701,
"delta": 0.0111,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.491,
"after": 0.8419,
"delta": 0.3509,
"percent_delta": 0.7147,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.54,
"after": 0.8491,
"delta": 0.3091,
"percent_delta": 0.5724,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.456,
"after": 0.4734,
"delta": 0.0174,
"percent_delta": 0.0382,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.624,
"after": 0.9939,
"delta": 0.3699,
"percent_delta": 0.5928,
"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": 6.6971,
"delta": 2.3671,
"percent_delta": 0.5467,
"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.3782,
"predicted_3B": 0.0004,
"predicted_AB": 6.6971,
"predicted_AVG": 0.3097,
"predicted_BB": 0.5416,
"predicted_H": 2.0739,
"predicted_HBP": 0.107,
"predicted_HR": 0.2455,
"predicted_OBP": 0.3613,
"predicted_R": 0.8576,
"predicted_RBI": 0.865,
"predicted_SLG": 0.4762,
"predicted_SO": 0.9888
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3782,
"after": 0.3782,
"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.6971,
"after": 6.6971,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2949,
"after": 0.3097,
"delta": 0.0148,
"percent_delta": 0.0502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5389,
"after": 0.5416,
"delta": 0.0027,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0554,
"after": 2.0739,
"delta": 0.0185,
"percent_delta": 0.009,
"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.2436,
"after": 0.2455,
"delta": 0.0019,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3701,
"after": 0.3613,
"delta": -0.0088,
"percent_delta": -0.0238,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8419,
"after": 0.8576,
"delta": 0.0157,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.8491,
"after": 0.865,
"delta": 0.0159,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4734,
"after": 0.4762,
"delta": 0.0028,
"percent_delta": 0.0059,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9939,
"after": 0.9888,
"delta": -0.0051,
"percent_delta": -0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 1,
"deboosted_metrics": 1,
"better_metrics": 1,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_AVG",
"before": 0.2949,
"after": 0.3097,
"delta": 0.0148,
"percent_delta": 0.0502,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.3701,
"after": 0.3613,
"delta": -0.0088,
"percent_delta": -0.0238,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.70), rates preserved: AVG=0.310 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.3782,
"after": 0.0,
"delta": -0.3782,
"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.6971,
"after": 7.0,
"delta": 0.3029,
"percent_delta": 0.0452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5416,
"after": 1.0,
"delta": 0.4584,
"percent_delta": 0.8464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 2.0739,
"after": 2.0,
"delta": -0.0739,
"percent_delta": -0.0356,
"direction": "deboost",
"projection_effect": "worse",
"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.2455,
"after": 0.0,
"delta": -0.2455,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.865,
"after": 1.0,
"delta": 0.135,
"percent_delta": 0.1561,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9888,
"after": 1.0,
"delta": 0.0112,
"percent_delta": 0.0113,
"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_BB",
"before": 0.5416,
"after": 1.0,
"delta": 0.4584,
"percent_delta": 0.8464,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3782,
"after": 0.0,
"delta": -0.3782,
"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": 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.8576,
"after": 1.0,
"delta": 0.1424,
"percent_delta": 0.166,
"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.8576,
"after": 1.0,
"delta": 0.1424,
"percent_delta": 0.166,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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.3097,
"after": 0.286,
"delta": -0.0237,
"percent_delta": -0.0765,
"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.3613,
"after": 0.375,
"delta": 0.0137,
"percent_delta": 0.0379,
"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.4762,
"after": 0.286,
"delta": -0.1902,
"percent_delta": -0.3994,
"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.3613,
"after": 0.375,
"delta": 0.0137,
"percent_delta": 0.0379,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4762,
"after": 0.286,
"delta": -0.1902,
"percent_delta": -0.3994,
"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": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 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.3097,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3613,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4762,
"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": 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.3097,
"delta": 0.0237,
"percent_delta": 0.0828,
"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.3613,
"delta": -0.0137,
"percent_delta": -0.0365,
"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.4762,
"delta": 0.1902,
"percent_delta": 0.6652,
"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.4762,
"delta": 0.1902,
"percent_delta": 0.6652,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3613,
"delta": -0.0137,
"percent_delta": -0.0365,
"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.294,
"after": 0.0,
"delta": -0.294,
"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.268,
"after": 0.3097,
"delta": 0.0417,
"percent_delta": 0.1556,
"direction": "boost",
"projection_effect": "better",
"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": 1.16,
"after": 0.0,
"delta": -1.16,
"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.359,
"after": 0.3613,
"delta": 0.0023,
"percent_delta": 0.0064,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.491,
"after": 0.0,
"delta": -0.491,
"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.456,
"after": 0.4762,
"delta": 0.0202,
"percent_delta": 0.0443,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.624,
"after": 0.0,
"delta": -0.624,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 4,
"worse_metrics": 6,
"biggest_boost": {
"metric": "predicted_AB",
"before": 4.33,
"after": 5.0,
"delta": 0.67,
"percent_delta": 0.1547,
"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.294 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 4.330 | - |
| predicted_AVG | 0.268 | - |
| predicted_BB | 0.326 | - |
| predicted_H | 1.160 | - |
| predicted_HR | 0.140 | - |
| predicted_OBP | 0.359 | - |
| predicted_R | 0.491 | - |
| predicted_RBI | 0.540 | - |
| predicted_SLG | 0.456 | - |
| predicted_SO | 0.624 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.378 | 0.084 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.697 | 2.367 |
| predicted_AVG | 0.295 | 0.027 |
| predicted_BB | 0.539 | 0.213 |
| predicted_H | 2.055 | 0.895 |
| predicted_HBP | 0.107 | - |
| predicted_HR | 0.244 | 0.104 |
| predicted_OBP | 0.370 | 0.011 |
| predicted_R | 0.842 | 0.351 |
| predicted_RBI | 0.849 | 0.309 |
| predicted_SLG | 0.473 | 0.017 |
| predicted_SO | 0.994 | 0.370 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.378 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.697 | 0.000 |
| predicted_AVG | 0.310 | 0.015 |
| predicted_BB | 0.542 | 0.003 |
| predicted_H | 2.074 | 0.018 |
| predicted_HBP | 0.107 | 0.000 |
| predicted_HR | 0.245 | 0.002 |
| predicted_OBP | 0.361 | -0.009 |
| predicted_R | 0.858 | 0.016 |
| predicted_RBI | 0.865 | 0.016 |
| predicted_SLG | 0.476 | 0.003 |
| predicted_SO | 0.989 | -0.005 |
AB rounded to 7 (raw=6.70), rates preserved: AVG=0.310 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 | - |
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 | 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.378 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 7.000 | 0.303 |
| predicted_AVG | 0.286 | -0.024 |
| predicted_BB | 1.000 | 0.458 |
| predicted_H | 2.000 | -0.074 |
| predicted_HR | 0.000 | -0.245 |
| predicted_OBP | 0.375 | 0.014 |
| predicted_R | 1.000 | 0.142 |
| predicted_RBI | 1.000 | 0.135 |
| predicted_SLG | 0.286 | -0.190 |
| predicted_SO | 1.000 | 0.011 |
Attached 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 | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 21.000 | 8.000 | 0.000 | 0.000 | 1.000 | 2.000 | 3.000 | 2.000 | 2.000 | 0.3810 | 0.4348 | 0.5238 | 0.3810 | 0.0476 | 0.0952 | 0.0952 | 0.0952 |
| last_10 | 0.20 | 10 | - | 42.000 | 15.000 | 1.000 | 0.000 | 2.000 | 8.000 | 6.000 | 3.000 | 7.000 | 0.3571 | 0.4043 | 0.5238 | 0.3571 | 0.0476 | 0.1905 | 0.0714 | 0.1667 |
| season | 0.60 | 62 | - | 848.000 | 260.000 | 64.000 | 0.000 | 28.000 | 100.000 | 107.000 | 71.000 | 136.000 | 0.3066 | 0.3644 | 0.4811 | 0.3066 | 0.0330 | 0.1179 | 0.0837 | 0.1604 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4850 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.6990 |
| predicted_AVG | 0.3290 |
| predicted_BB | 0.8090 |
| predicted_H | 3.1910 |
| predicted_HBP | 0.1070 |
| predicted_HR | 0.3750 |
| predicted_OBP | 0.3842 |
| predicted_R | 1.2870 |
| predicted_RBI | 1.2410 |
| predicted_SLG | 0.4954 |
| predicted_SO | 1.4630 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2940 | 0.4850 | 0.3782 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 4.3300 | 9.6990 | 6.6971 | model_form_blend |
| predicted_AVG | 0.2680 | 0.3290 | 0.2949 | model_form_blend |
| predicted_BB | 0.3260 | 0.8090 | 0.5389 | model_form_blend |
| predicted_H | 1.1600 | 3.1910 | 2.0554 | model_form_blend |
| predicted_HBP | - | 0.1070 | 0.1070 | form_only |
| predicted_HR | 0.1400 | 0.3750 | 0.2436 | model_form_blend |
| predicted_OBP | 0.3590 | 0.3842 | 0.3701 | model_form_blend |
| predicted_R | 0.4910 | 1.2870 | 0.8419 | model_form_blend |
| predicted_RBI | 0.5400 | 1.2410 | 0.8491 | model_form_blend |
| predicted_SLG | 0.4560 | 0.4954 | 0.4734 | model_form_blend |
| predicted_SO | 0.6240 | 1.4630 | 0.9939 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 5 |
| AB | 5 |
| H | 0 |
| 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 | 5 |
| Hitting_AVG | 0.2 |
| 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 | 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 | 20260610_TEX@KC |
| game_type | full |
| mlbID | 673962 |
| playerID | 673962 |
| playerName | Josh Jung |
| pos | 3B |
| started | True |
| startingPosition | 3B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 15.2 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.373 |
| sl_xwoba | 0.357 |
| sl_xba | 0.305 |
| sl_xslg | 0.455 |
| sl_sweet_spot_percent | 38.3 |
| sl_barrel_batted_rate | 5.5 |
| sl_hard_hit_percent | 43.8 |
| sl_exit_velocity_avg | 89.4 |
| sl_launch_angle_avg | 11.7 |
| sl_whiff_percent | 18.7 |
| 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.168 | 0.000 | 0.000 | Hitting_2B | 0.168 | 0.000 | -0.168 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.841 | 4.000 | 6.000 | Hitting_AB | 3.841 | 2.000 | 0.159 | 2.000 |
| predicted_AVG | 0.252 | 0.000 | 0.333 | Hitting_AVG | 0.238 | 1.000 | -0.238 | -1.000 |
| predicted_BB | 0.274 | 0.000 | 1.000 | Hitting_BB | 0.274 | 1.000 | -0.274 | -1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.960 | 0.000 | 2.000 | Hitting_H | 0.916 | 2.000 | -0.916 | -2.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.173 | 1.000 | -0.173 | -1.000 |
| predicted_OBP | 0.334 | 0.000 | 0.429 | Hitting_OBP | 0.291 | 0.750 | -0.291 | -0.750 |
| predicted_R | 0.482 | 0.000 | 1.000 | Hitting_R | 0.482 | 1.000 | -0.482 | -1.000 |
| predicted_RBI | 0.610 | 0.000 | 1.000 | Hitting_RBI | 0.673 | 2.000 | -0.673 | -2.000 |
| predicted_SLG | 0.444 | 0.000 | 0.333 | Hitting_SLG | 0.417 | 2.500 | -0.417 | -2.500 |
| predicted_SO | 1.150 | 3.000 | 2.000 | Hitting_SO | 1.150 | 0.000 | 1.850 | 3.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 4 |
| Deboosted Metrics | 6 |
| Better Metrics | 3 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_SO: 1.1500 -> 3.0000 (boost 1.8500, 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 | 10 | 10 | 0 | 9 | 1 | predicted_AB: 3.8410 -> 6.1622 (boost 2.3212, 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.2655 -> 0.2737 (boost 0.0082, 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.5776 -> 1.0000 (boost 0.4224, better) | predicted_2B: 0.3250 -> 0.0000 (deboost -0.3250, worse) | AB rounded to 6 (raw=6.16), rates preserved: AVG=0.274 HR/AB=0.044 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.286) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7623 -> 1.0000 (boost 0.2377, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3360 -> 0.4290 (boost 0.0930, better) | predicted_SLG: 0.4584 -> 0.3330 (deboost -0.1254, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 6 | 1 | 5 | 0 | 6 | predicted_SO: 2.0000 -> 3.0000 (boost 1.0000, worse) | 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.4584 (boost 0.1254, better) | predicted_OBP: 0.4290 -> 0.3360 (deboost -0.0930, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "669394",
"player_name": "Jake Burger",
"position": "1B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.168,
"predicted_3B": 0.0,
"predicted_AB": 3.841,
"predicted_AVG": 0.252,
"predicted_BB": 0.274,
"predicted_H": 0.96,
"predicted_HR": 0.15,
"predicted_OBP": 0.334,
"predicted_R": 0.482,
"predicted_RBI": 0.61,
"predicted_SLG": 0.444,
"predicted_SO": 1.15
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.325,
"predicted_3B": 0.0004,
"predicted_AB": 6.1622,
"predicted_AVG": 0.2655,
"predicted_BB": 0.5747,
"predicted_H": 1.6717,
"predicted_HBP": 0.033,
"predicted_HR": 0.2686,
"predicted_OBP": 0.3378,
"predicted_R": 0.7483,
"predicted_RBI": 1.0915,
"predicted_SLG": 0.4591,
"predicted_SO": 1.714
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.168,
"after": 0.325,
"delta": 0.157,
"percent_delta": 0.9345,
"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.841,
"after": 6.1622,
"delta": 2.3212,
"percent_delta": 0.6043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2655,
"delta": 0.0135,
"percent_delta": 0.0536,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.274,
"after": 0.5747,
"delta": 0.3007,
"percent_delta": 1.0974,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.96,
"after": 1.6717,
"delta": 0.7117,
"percent_delta": 0.7414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2686,
"delta": 0.1186,
"percent_delta": 0.7907,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3378,
"delta": 0.0038,
"percent_delta": 0.0114,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.482,
"after": 0.7483,
"delta": 0.2663,
"percent_delta": 0.5525,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.61,
"after": 1.0915,
"delta": 0.4815,
"percent_delta": 0.7893,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.444,
"after": 0.4591,
"delta": 0.0151,
"percent_delta": 0.034,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.15,
"after": 1.714,
"delta": 0.564,
"percent_delta": 0.4904,
"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.841,
"after": 6.1622,
"delta": 2.3212,
"percent_delta": 0.6043,
"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.325,
"predicted_3B": 0.0004,
"predicted_AB": 6.1622,
"predicted_AVG": 0.2737,
"predicted_BB": 0.5776,
"predicted_H": 1.6867,
"predicted_HBP": 0.033,
"predicted_HR": 0.2707,
"predicted_OBP": 0.336,
"predicted_R": 0.7623,
"predicted_RBI": 1.1119,
"predicted_SLG": 0.4584,
"predicted_SO": 1.7053
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.325,
"after": 0.325,
"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.1622,
"after": 6.1622,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2655,
"after": 0.2737,
"delta": 0.0082,
"percent_delta": 0.0309,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5747,
"after": 0.5776,
"delta": 0.0029,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6717,
"after": 1.6867,
"delta": 0.015,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.033,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2686,
"after": 0.2707,
"delta": 0.0021,
"percent_delta": 0.0078,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3378,
"after": 0.336,
"delta": -0.0018,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7483,
"after": 0.7623,
"delta": 0.014,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0915,
"after": 1.1119,
"delta": 0.0204,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4591,
"after": 0.4584,
"delta": -0.0007,
"percent_delta": -0.0015,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.714,
"after": 1.7053,
"delta": -0.0087,
"percent_delta": -0.0051,
"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.2655,
"after": 0.2737,
"delta": 0.0082,
"percent_delta": 0.0309,
"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.16), rates preserved: AVG=0.274 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": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.325,
"after": 0.0,
"delta": -0.325,
"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.1622,
"after": 6.0,
"delta": -0.1622,
"percent_delta": -0.0263,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5776,
"after": 1.0,
"delta": 0.4224,
"percent_delta": 0.7313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.6867,
"after": 2.0,
"delta": 0.3133,
"percent_delta": 0.1857,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.033,
"after": 0.0,
"delta": -0.033,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2707,
"after": 0.0,
"delta": -0.2707,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 1.1119,
"after": 1.0,
"delta": -0.1119,
"percent_delta": -0.1006,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.7053,
"after": 2.0,
"delta": 0.2947,
"percent_delta": 0.1728,
"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.5776,
"after": 1.0,
"delta": 0.4224,
"percent_delta": 0.7313,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.325,
"after": 0.0,
"delta": -0.325,
"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.286)",
"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": 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": 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": 0.7623,
"after": 1.0,
"delta": 0.2377,
"percent_delta": 0.3118,
"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.7623,
"after": 1.0,
"delta": 0.2377,
"percent_delta": 0.3118,
"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": 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.2737,
"after": 0.333,
"delta": 0.0593,
"percent_delta": 0.2167,
"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.336,
"after": 0.429,
"delta": 0.093,
"percent_delta": 0.2768,
"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.4584,
"after": 0.333,
"delta": -0.1254,
"percent_delta": -0.2736,
"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.336,
"after": 0.429,
"delta": 0.093,
"percent_delta": 0.2768,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4584,
"after": 0.333,
"delta": -0.1254,
"percent_delta": -0.2736,
"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": 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": 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": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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": 2.0,
"after": 3.0,
"delta": 1.0,
"percent_delta": 0.5,
"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": 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.2737,
"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.336,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4584,
"predicted_SO": 3.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.333,
"after": 0.2737,
"delta": -0.0593,
"percent_delta": -0.178,
"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.336,
"delta": -0.093,
"percent_delta": -0.2169,
"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.4584,
"delta": 0.1254,
"percent_delta": 0.3766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 1,
"deboosted_metrics": 2,
"better_metrics": 1,
"worse_metrics": 2,
"biggest_boost": {
"metric": "predicted_SLG",
"before": 0.333,
"after": 0.4584,
"delta": 0.1254,
"percent_delta": 0.3766,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.429,
"after": 0.336,
"delta": -0.093,
"percent_delta": -0.2169,
"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.168,
"after": 0.0,
"delta": -0.168,
"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.841,
"after": 4.0,
"delta": 0.159,
"percent_delta": 0.0414,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.252,
"after": 0.2737,
"delta": 0.0217,
"percent_delta": 0.0861,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.274,
"after": 0.0,
"delta": -0.274,
"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.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.336,
"delta": 0.002,
"percent_delta": 0.006,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.482,
"after": 0.0,
"delta": -0.482,
"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.444,
"after": 0.4584,
"delta": 0.0144,
"percent_delta": 0.0324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.15,
"after": 3.0,
"delta": 1.85,
"percent_delta": 1.6087,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 4,
"deboosted_metrics": 6,
"better_metrics": 3,
"worse_metrics": 7,
"biggest_boost": {
"metric": "predicted_SO",
"before": 1.15,
"after": 3.0,
"delta": 1.85,
"percent_delta": 1.6087,
"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.168 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.841 | - |
| predicted_AVG | 0.252 | - |
| predicted_BB | 0.274 | - |
| predicted_H | 0.960 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.482 | - |
| predicted_RBI | 0.610 | - |
| predicted_SLG | 0.444 | - |
| predicted_SO | 1.150 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.157 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 6.162 | 2.321 |
| predicted_AVG | 0.266 | 0.014 |
| predicted_BB | 0.575 | 0.301 |
| predicted_H | 1.672 | 0.712 |
| predicted_HBP | 0.033 | - |
| predicted_HR | 0.269 | 0.119 |
| predicted_OBP | 0.338 | 0.004 |
| predicted_R | 0.748 | 0.266 |
| predicted_RBI | 1.091 | 0.481 |
| predicted_SLG | 0.459 | 0.015 |
| predicted_SO | 1.714 | 0.564 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 6.162 | 0.000 |
| predicted_AVG | 0.274 | 0.008 |
| predicted_BB | 0.578 | 0.003 |
| predicted_H | 1.687 | 0.015 |
| predicted_HBP | 0.033 | 0.000 |
| predicted_HR | 0.271 | 0.002 |
| predicted_OBP | 0.336 | -0.002 |
| predicted_R | 0.762 | 0.014 |
| predicted_RBI | 1.112 | 0.020 |
| predicted_SLG | 0.458 | -0.001 |
| predicted_SO | 1.705 | -0.009 |
AB rounded to 6 (raw=6.16), rates preserved: AVG=0.274 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 | 1.000 | - |
| SB | 0.000 | - |
| SO | 2.000 | - |
Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.286)
| 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 | 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 | 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.325 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | -0.162 |
| predicted_AVG | 0.333 | 0.059 |
| predicted_BB | 1.000 | 0.422 |
| predicted_H | 2.000 | 0.313 |
| predicted_HR | 0.000 | -0.271 |
| predicted_OBP | 0.429 | 0.093 |
| predicted_R | 1.000 | 0.238 |
| predicted_RBI | 1.000 | -0.112 |
| predicted_SLG | 0.333 | -0.125 |
| 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 | -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 | 3.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 | 6.000 | 1.000 | 0.000 | 1.000 | 4.000 | 1.000 | 2.000 | 3.000 | 0.4000 | 0.4444 | 0.6667 | 0.4000 | 0.0667 | 0.2667 | 0.1333 | 0.2000 |
| last_10 | 0.20 | 10 | - | 33.000 | 10.000 | 3.000 | 0.000 | 1.000 | 5.000 | 5.000 | 6.000 | 8.000 | 0.3030 | 0.4000 | 0.4848 | 0.3030 | 0.0303 | 0.1515 | 0.1818 | 0.2424 |
| season | 0.60 | 65 | - | 868.000 | 207.000 | 38.000 | 0.000 | 39.000 | 152.000 | 109.000 | 62.000 | 260.000 | 0.2385 | 0.2912 | 0.4171 | 0.2385 | 0.0449 | 0.1751 | 0.0714 | 0.2995 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5240 |
| predicted_3B | 0.0010 |
| predicted_AB | 9.1050 |
| predicted_AVG | 0.2827 |
| predicted_BB | 0.9560 |
| predicted_H | 2.5740 |
| predicted_HBP | 0.0330 |
| predicted_HR | 0.4190 |
| predicted_OBP | 0.3427 |
| predicted_R | 1.0860 |
| predicted_RBI | 1.7020 |
| predicted_SLG | 0.4783 |
| predicted_SO | 2.4290 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1680 | 0.5240 | 0.3250 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8410 | 9.1050 | 6.1622 | model_form_blend |
| predicted_AVG | 0.2520 | 0.2827 | 0.2655 | model_form_blend |
| predicted_BB | 0.2740 | 0.9560 | 0.5747 | model_form_blend |
| predicted_H | 0.9600 | 2.5740 | 1.6717 | model_form_blend |
| predicted_HBP | - | 0.0330 | 0.0330 | form_only |
| predicted_HR | 0.1500 | 0.4190 | 0.2686 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3427 | 0.3378 | model_form_blend |
| predicted_R | 0.4820 | 1.0860 | 0.7483 | model_form_blend |
| predicted_RBI | 0.6100 | 1.7020 | 1.0915 | model_form_blend |
| predicted_SLG | 0.4440 | 0.4783 | 0.4591 | model_form_blend |
| predicted_SO | 1.1500 | 2.4290 | 1.7140 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 3 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.238 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 2 |
| Hitting_AVG | 1.0 |
| 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 | 1 |
| Hitting_SO | 0 |
| Hitting_TB | 5 |
| Hitting_battingOrder | 1 |
| 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 | 20260610_TEX@KC |
| game_type | ph |
| mlbID | 669394 |
| note | Walked for Pederson in the 5th. |
| playerID | 669394 |
| playerName | Jake Burger |
| pos | 1B |
| started | False |
| startingPosition | PH |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.9 |
| sl_bb_percent | 7.2 |
| sl_woba | 0.321 |
| sl_xwoba | 0.309 |
| sl_xba | 0.246 |
| sl_xslg | 0.408 |
| sl_sweet_spot_percent | 33.1 |
| sl_barrel_batted_rate | 9.8 |
| sl_hard_hit_percent | 47.4 |
| sl_exit_velocity_avg | 90.3 |
| sl_launch_angle_avg | 12.1 |
| sl_whiff_percent | 35.0 |
| 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.179 | 0.000 | 0.000 | Hitting_2B | 0.179 | 0.000 | -0.179 | 0.000 |
| predicted_3B | 0.037 | 0.000 | 0.000 | Hitting_3B | 0.037 | 0.000 | -0.037 | 0.000 |
| predicted_AB | 4.210 | 2.000 | 7.000 | Hitting_AB | 3.959 | 6.000 | -1.959 | -4.000 |
| predicted_AVG | 0.239 | 0.000 | 0.286 | Hitting_AVG | 0.262 | 0.333 | -0.262 | -0.333 |
| predicted_BB | 0.398 | 2.000 | 1.000 | Hitting_BB | 0.398 | 0.000 | 1.602 | 2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_H | 1.010 | 0.000 | 2.000 | Hitting_H | 1.037 | 2.000 | -1.037 | -2.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.118 | 0.000 | -0.118 | 0.000 |
| predicted_OBP | 0.317 | 0.500 | 0.375 | Hitting_OBP | 0.344 | 0.333 | 0.156 | 0.167 |
| predicted_R | 0.443 | 0.000 | 1.000 | Hitting_R | 0.443 | 1.000 | -0.443 | -1.000 |
| predicted_RBI | 0.350 | 0.000 | 1.000 | Hitting_RBI | 0.378 | 0.000 | -0.378 | 0.000 |
| predicted_SLG | 0.393 | 0.000 | 0.286 | Hitting_SLG | 0.415 | 0.333 | -0.415 | -0.333 |
| predicted_SO | 0.915 | 2.000 | 2.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 | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.3980 -> 2.0000 (boost 1.6020, better) |
| Biggest Deboost | predicted_AB: 4.2100 -> 2.0000 (deboost -2.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 | 9 | 8 | 1 | 7 | 2 | predicted_AB: 4.2100 -> 6.9015 (boost 2.6915, better) | predicted_SLG: 0.3930 -> 0.3802 (deboost -0.0128, worse) | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2459 -> 0.2519 (boost 0.0060, better) | predicted_SLG: 0.3802 -> 0.3717 (deboost -0.0085, 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_RBI: 0.4975 -> 1.0000 (boost 0.5025, better) | predicted_SO: 1.4757 -> 1.0000 (deboost -0.4757, better) | AB rounded to 7 (raw=6.90), rates preserved: AVG=0.252 HR/AB=0.021 |
| 5 | bvp_blend | 1 | 1 | 0 | 0 | 1 | predicted_SO: 1.0000 -> 2.0000 (boost 1.0000, worse) | - | Sample-size BvP blend (BvP AB=7.0, weight=0.076, BvP AVG=0.143) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7662 -> 1.0000 (boost 0.2338, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3160 -> 0.3750 (boost 0.0590, better) | predicted_SLG: 0.3717 -> 0.2860 (deboost -0.0857, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 5 | 1 | 4 | 1 | 4 | predicted_BB: 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2860 -> 0.3717 (boost 0.0857, better) | predicted_OBP: 0.3750 -> 0.3160 (deboost -0.0590, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "607043",
"player_name": "Brandon Nimmo",
"position": "DH",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.179,
"predicted_3B": 0.037,
"predicted_AB": 4.21,
"predicted_AVG": 0.239,
"predicted_BB": 0.398,
"predicted_H": 1.01,
"predicted_HR": 0.11,
"predicted_OBP": 0.317,
"predicted_R": 0.443,
"predicted_RBI": 0.35,
"predicted_SLG": 0.393,
"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.2984,
"predicted_3B": 0.0458,
"predicted_AB": 6.9015,
"predicted_AVG": 0.2459,
"predicted_BB": 0.6439,
"predicted_H": 1.7229,
"predicted_HBP": 0.216,
"predicted_HR": 0.1445,
"predicted_OBP": 0.3219,
"predicted_R": 0.7521,
"predicted_RBI": 0.4884,
"predicted_SLG": 0.3802,
"predicted_SO": 1.4833
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.179,
"after": 0.2984,
"delta": 0.1194,
"percent_delta": 0.667,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.037,
"after": 0.0458,
"delta": 0.0088,
"percent_delta": 0.2378,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 6.9015,
"delta": 2.6915,
"percent_delta": 0.6393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2459,
"delta": 0.0069,
"percent_delta": 0.0289,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.398,
"after": 0.6439,
"delta": 0.2459,
"percent_delta": 0.6178,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.01,
"after": 1.7229,
"delta": 0.7129,
"percent_delta": 0.7058,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1445,
"delta": 0.0345,
"percent_delta": 0.3136,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.3219,
"delta": 0.0049,
"percent_delta": 0.0155,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.443,
"after": 0.7521,
"delta": 0.3091,
"percent_delta": 0.6977,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.4884,
"delta": 0.1384,
"percent_delta": 0.3954,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.393,
"after": 0.3802,
"delta": -0.0128,
"percent_delta": -0.0326,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.915,
"after": 1.4833,
"delta": 0.5683,
"percent_delta": 0.6211,
"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.21,
"after": 6.9015,
"delta": 2.6915,
"percent_delta": 0.6393,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.393,
"after": 0.3802,
"delta": -0.0128,
"percent_delta": -0.0326,
"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.0458,
"predicted_AB": 6.9015,
"predicted_AVG": 0.2519,
"predicted_BB": 0.6472,
"predicted_H": 1.7384,
"predicted_HBP": 0.216,
"predicted_HR": 0.1456,
"predicted_OBP": 0.316,
"predicted_R": 0.7662,
"predicted_RBI": 0.4975,
"predicted_SLG": 0.3717,
"predicted_SO": 1.4757
},
"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.0458,
"after": 0.0458,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9015,
"after": 6.9015,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2459,
"after": 0.2519,
"delta": 0.006,
"percent_delta": 0.0244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6439,
"after": 0.6472,
"delta": 0.0033,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.7229,
"after": 1.7384,
"delta": 0.0155,
"percent_delta": 0.009,
"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.1445,
"after": 0.1456,
"delta": 0.0011,
"percent_delta": 0.0076,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3219,
"after": 0.316,
"delta": -0.0059,
"percent_delta": -0.0183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7521,
"after": 0.7662,
"delta": 0.0141,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4884,
"after": 0.4975,
"delta": 0.0091,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3802,
"after": 0.3717,
"delta": -0.0085,
"percent_delta": -0.0224,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4833,
"after": 1.4757,
"delta": -0.0076,
"percent_delta": -0.0051,
"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.2459,
"after": 0.2519,
"delta": 0.006,
"percent_delta": 0.0244,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3802,
"after": 0.3717,
"delta": -0.0085,
"percent_delta": -0.0224,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.90), rates preserved: AVG=0.252 HR/AB=0.021",
"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.2984,
"after": 0.0,
"delta": -0.2984,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0458,
"after": 0.0,
"delta": -0.0458,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.9015,
"after": 7.0,
"delta": 0.0985,
"percent_delta": 0.0143,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6472,
"after": 1.0,
"delta": 0.3528,
"percent_delta": 0.5451,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.7384,
"after": 2.0,
"delta": 0.2616,
"percent_delta": 0.1505,
"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.1456,
"after": 0.0,
"delta": -0.1456,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4975,
"after": 1.0,
"delta": 0.5025,
"percent_delta": 1.0101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.4757,
"after": 1.0,
"delta": -0.4757,
"percent_delta": -0.3224,
"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_RBI",
"before": 0.4975,
"after": 1.0,
"delta": 0.5025,
"percent_delta": 1.0101,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.4757,
"after": 1.0,
"delta": -0.4757,
"percent_delta": -0.3224,
"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.143)",
"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": 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.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": 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.7662,
"after": 1.0,
"delta": 0.2338,
"percent_delta": 0.3051,
"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.7662,
"after": 1.0,
"delta": 0.2338,
"percent_delta": 0.3051,
"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.2519,
"after": 0.286,
"delta": 0.0341,
"percent_delta": 0.1354,
"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.316,
"after": 0.375,
"delta": 0.059,
"percent_delta": 0.1867,
"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.3717,
"after": 0.286,
"delta": -0.0857,
"percent_delta": -0.2306,
"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.316,
"after": 0.375,
"delta": 0.059,
"percent_delta": 0.1867,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3717,
"after": 0.286,
"delta": -0.0857,
"percent_delta": -0.2306,
"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": 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": 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": 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": 1,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 4,
"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.2519,
"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.316,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3717,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2519,
"delta": -0.0341,
"percent_delta": -0.1193,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.316,
"delta": -0.059,
"percent_delta": -0.1573,
"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.3717,
"delta": 0.0857,
"percent_delta": 0.2997,
"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.3717,
"delta": 0.0857,
"percent_delta": 0.2997,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.316,
"delta": -0.059,
"percent_delta": -0.1573,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.179,
"after": 0.0,
"delta": -0.179,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.037,
"after": 0.0,
"delta": -0.037,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.21,
"after": 2.0,
"delta": -2.21,
"percent_delta": -0.5249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.239,
"after": 0.2519,
"delta": 0.0129,
"percent_delta": 0.054,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.398,
"after": 2.0,
"delta": 1.602,
"percent_delta": 4.0251,
"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.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.317,
"after": 0.316,
"delta": -0.001,
"percent_delta": -0.0032,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.443,
"after": 0.0,
"delta": -0.443,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.35,
"after": 0.0,
"delta": -0.35,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.393,
"after": 0.3717,
"delta": -0.0213,
"percent_delta": -0.0542,
"direction": "deboost",
"projection_effect": "worse",
"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": 10,
"boosted_metrics": 3,
"deboosted_metrics": 7,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.398,
"after": 2.0,
"delta": 1.602,
"percent_delta": 4.0251,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.21,
"after": 2.0,
"delta": -2.21,
"percent_delta": -0.5249,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.179 | - |
| predicted_3B | 0.037 | - |
| predicted_AB | 4.210 | - |
| predicted_AVG | 0.239 | - |
| predicted_BB | 0.398 | - |
| predicted_H | 1.010 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.317 | - |
| predicted_R | 0.443 | - |
| predicted_RBI | 0.350 | - |
| predicted_SLG | 0.393 | - |
| 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.298 | 0.119 |
| predicted_3B | 0.046 | 0.009 |
| predicted_AB | 6.902 | 2.692 |
| predicted_AVG | 0.246 | 0.007 |
| predicted_BB | 0.644 | 0.246 |
| predicted_H | 1.723 | 0.713 |
| predicted_HBP | 0.216 | - |
| predicted_HR | 0.144 | 0.034 |
| predicted_OBP | 0.322 | 0.005 |
| predicted_R | 0.752 | 0.309 |
| predicted_RBI | 0.488 | 0.138 |
| predicted_SLG | 0.380 | -0.013 |
| predicted_SO | 1.483 | 0.568 |
Step 3: 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.046 | 0.000 |
| predicted_AB | 6.902 | 0.000 |
| predicted_AVG | 0.252 | 0.006 |
| predicted_BB | 0.647 | 0.003 |
| predicted_H | 1.738 | 0.015 |
| predicted_HBP | 0.216 | 0.000 |
| predicted_HR | 0.146 | 0.001 |
| predicted_OBP | 0.316 | -0.006 |
| predicted_R | 0.766 | 0.014 |
| predicted_RBI | 0.497 | 0.009 |
| predicted_SLG | 0.372 | -0.009 |
| predicted_SO | 1.476 | -0.008 |
AB rounded to 7 (raw=6.90), rates preserved: AVG=0.252 HR/AB=0.021
| 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=7.0, weight=0.076, BvP AVG=0.143)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 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 | 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 | 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.046 |
| predicted_AB | 7.000 | 0.098 |
| predicted_AVG | 0.286 | 0.034 |
| predicted_BB | 1.000 | 0.353 |
| predicted_H | 2.000 | 0.262 |
| predicted_HR | 0.000 | -0.146 |
| predicted_OBP | 0.375 | 0.059 |
| predicted_R | 1.000 | 0.234 |
| predicted_RBI | 1.000 | 0.502 |
| predicted_SLG | 0.286 | -0.086 |
| predicted_SO | 2.000 | 0.524 |
Attached 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 | -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 | - | 18.000 | 5.000 | 1.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 0.2778 | 0.3500 | 0.3333 | 0.2778 | 0.0000 | 0.0000 | 0.1111 | 0.1111 |
| last_10 | 0.20 | 10 | - | 38.000 | 8.000 | 1.000 | 0.000 | 0.000 | 1.000 | 4.000 | 2.000 | 10.000 | 0.2105 | 0.2619 | 0.2368 | 0.2105 | 0.0000 | 0.0263 | 0.0526 | 0.2632 |
| season | 0.60 | 65 | - | 974.000 | 255.000 | 44.000 | 9.000 | 29.000 | 93.000 | 109.000 | 98.000 | 225.000 | 0.2618 | 0.3436 | 0.4148 | 0.2618 | 0.0298 | 0.0955 | 0.1006 | 0.2310 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4490 |
| predicted_3B | 0.0570 |
| predicted_AB | 10.2960 |
| predicted_AVG | 0.2546 |
| predicted_BB | 0.9540 |
| predicted_H | 2.6220 |
| predicted_HBP | 0.2160 |
| predicted_HR | 0.1880 |
| predicted_OBP | 0.3281 |
| predicted_R | 1.1420 |
| predicted_RBI | 0.6630 |
| predicted_SLG | 0.3641 |
| predicted_SO | 2.2000 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1790 | 0.4490 | 0.2984 | model_form_blend |
| predicted_3B | 0.0370 | 0.0570 | 0.0458 | model_form_blend |
| predicted_AB | 4.2100 | 10.2960 | 6.9015 | model_form_blend |
| predicted_AVG | 0.2390 | 0.2546 | 0.2459 | model_form_blend |
| predicted_BB | 0.3980 | 0.9540 | 0.6439 | model_form_blend |
| predicted_H | 1.0100 | 2.6220 | 1.7229 | model_form_blend |
| predicted_HBP | - | 0.2160 | 0.2160 | form_only |
| predicted_HR | 0.1100 | 0.1880 | 0.1445 | model_form_blend |
| predicted_OBP | 0.3170 | 0.3281 | 0.3219 | model_form_blend |
| predicted_R | 0.4430 | 1.1420 | 0.7521 | model_form_blend |
| predicted_RBI | 0.3500 | 0.6630 | 0.4884 | model_form_blend |
| predicted_SLG | 0.3930 | 0.3641 | 0.3802 | model_form_blend |
| predicted_SO | 0.9150 | 2.2000 | 1.4833 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 246 |
| Season rows before report date | 246 |
| Report year | 2026 |
| Profile rows used | 246 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 2 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.262 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 6 |
| Hitting_AVG | 0.333 |
| 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 | 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 | RF |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 607043 |
| playerID | 607043 |
| playerName | Brandon Nimmo |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 20.5 |
| sl_bb_percent | 8.5 |
| sl_woba | 0.325 |
| sl_xwoba | 0.377 |
| sl_xba | 0.286 |
| sl_xslg | 0.509 |
| sl_sweet_spot_percent | 34.4 |
| sl_barrel_batted_rate | 11.3 |
| sl_hard_hit_percent | 52.3 |
| sl_exit_velocity_avg | 92.1 |
| sl_launch_angle_avg | 11.5 |
| sl_whiff_percent | 22.9 |
| 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.114 | 0.000 | 0.000 | Hitting_2B | 0.113 | 0.000 | -0.113 | 0.000 |
| predicted_3B | 0.030 | 0.000 | 0.000 | Hitting_3B | 0.029 | 0.000 | -0.029 | 0.000 |
| predicted_AB | 3.208 | 4.000 | 5.000 | Hitting_AB | 3.176 | 3.000 | 0.824 | 1.000 |
| predicted_AVG | 0.226 | 0.250 | 0.200 | Hitting_AVG | 0.185 | 0.333 | 0.065 | -0.083 |
| predicted_BB | 0.500 | 0.000 | 1.000 | Hitting_BB | 0.515 | 2.000 | -0.515 | -2.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.270 | 1.000 | 1.000 | Hitting_H | 0.588 | 1.000 | 0.412 | 0.000 |
| predicted_HR | 0.040 | 0.000 | 0.000 | Hitting_HR | 0.123 | 0.000 | -0.123 | 0.000 |
| predicted_OBP | 0.283 | 0.250 | 0.333 | Hitting_OBP | 0.305 | 0.600 | -0.055 | -0.350 |
| predicted_R | 0.431 | 0.000 | 1.000 | Hitting_R | 0.436 | 1.000 | -0.436 | -1.000 |
| predicted_RBI | 0.170 | 0.000 | 0.000 | Hitting_RBI | 0.348 | 1.000 | -0.348 | -1.000 |
| predicted_SLG | 0.330 | 0.250 | 0.200 | Hitting_SLG | 0.355 | 0.333 | -0.105 | -0.083 |
| predicted_SO | 0.876 | 1.000 | 1.000 | Hitting_SO | 0.868 | 0.000 | 0.132 | 1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 7 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_AB: 3.2080 -> 4.0000 (boost 0.7920, better) |
| Biggest Deboost | predicted_BB: 0.5000 -> 0.0000 (deboost -0.5000, 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.2080 -> 4.9014 (boost 1.6934, better) | predicted_AVG: 0.2260 -> 0.2146 (deboost -0.0114, 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.3217 -> 0.2633 (deboost -0.0584, 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_BB: 0.7381 -> 1.0000 (boost 0.2619, better) | predicted_RBI: 0.4589 -> 0.0000 (deboost -0.4589, worse) | AB rounded to 5 (raw=4.90), rates preserved: AVG=0.159 HR/AB=0.020 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.375) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7207 -> 1.0000 (boost 0.2793, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.2690 -> 0.3330 (boost 0.0640, better) | predicted_SLG: 0.2633 -> 0.2000 (deboost -0.0633, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 0 | 3 | 0 | 3 | - | predicted_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.2633 (boost 0.0633, 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": "694497",
"player_name": "Evan Carter",
"position": "CF",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.114,
"predicted_3B": 0.03,
"predicted_AB": 3.208,
"predicted_AVG": 0.226,
"predicted_BB": 0.5,
"predicted_H": 0.27,
"predicted_HR": 0.04,
"predicted_OBP": 0.283,
"predicted_R": 0.431,
"predicted_RBI": 0.17,
"predicted_SLG": 0.33,
"predicted_SO": 0.876
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1553,
"predicted_3B": 0.034,
"predicted_AB": 4.9014,
"predicted_AVG": 0.2146,
"predicted_BB": 0.7344,
"predicted_H": 0.7722,
"predicted_HBP": 0.16,
"predicted_HR": 0.0953,
"predicted_OBP": 0.2969,
"predicted_R": 0.7075,
"predicted_RBI": 0.4505,
"predicted_SLG": 0.3217,
"predicted_SO": 1.2829
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.114,
"after": 0.1553,
"delta": 0.0413,
"percent_delta": 0.3623,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.03,
"after": 0.034,
"delta": 0.004,
"percent_delta": 0.1333,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.208,
"after": 4.9014,
"delta": 1.6934,
"percent_delta": 0.5279,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2146,
"delta": -0.0114,
"percent_delta": -0.0504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 0.7344,
"delta": 0.2344,
"percent_delta": 0.4688,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.27,
"after": 0.7722,
"delta": 0.5022,
"percent_delta": 1.86,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.04,
"after": 0.0953,
"delta": 0.0553,
"percent_delta": 1.3825,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.283,
"after": 0.2969,
"delta": 0.0139,
"percent_delta": 0.0491,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.431,
"after": 0.7075,
"delta": 0.2765,
"percent_delta": 0.6415,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.17,
"after": 0.4505,
"delta": 0.2805,
"percent_delta": 1.65,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.33,
"after": 0.3217,
"delta": -0.0083,
"percent_delta": -0.0252,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.876,
"after": 1.2829,
"delta": 0.4069,
"percent_delta": 0.4645,
"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.208,
"after": 4.9014,
"delta": 1.6934,
"percent_delta": 0.5279,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.2146,
"delta": -0.0114,
"percent_delta": -0.0504,
"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.1553,
"predicted_3B": 0.034,
"predicted_AB": 4.9014,
"predicted_AVG": 0.159,
"predicted_BB": 0.7381,
"predicted_H": 0.7791,
"predicted_HBP": 0.16,
"predicted_HR": 0.0961,
"predicted_OBP": 0.269,
"predicted_R": 0.7207,
"predicted_RBI": 0.4589,
"predicted_SLG": 0.2633,
"predicted_SO": 1.2764
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1553,
"after": 0.1553,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.034,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9014,
"after": 4.9014,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2146,
"after": 0.159,
"delta": -0.0556,
"percent_delta": -0.2591,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7344,
"after": 0.7381,
"delta": 0.0037,
"percent_delta": 0.005,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.7722,
"after": 0.7791,
"delta": 0.0069,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.16,
"after": 0.16,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0953,
"after": 0.0961,
"delta": 0.0008,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2969,
"after": 0.269,
"delta": -0.0279,
"percent_delta": -0.094,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7075,
"after": 0.7207,
"delta": 0.0132,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4505,
"after": 0.4589,
"delta": 0.0084,
"percent_delta": 0.0186,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3217,
"after": 0.2633,
"delta": -0.0584,
"percent_delta": -0.1815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2829,
"after": 1.2764,
"delta": -0.0065,
"percent_delta": -0.0051,
"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.3217,
"after": 0.2633,
"delta": -0.0584,
"percent_delta": -0.1815,
"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.159 HR/AB=0.020",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1553,
"after": 0.0,
"delta": -0.1553,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.034,
"after": 0.0,
"delta": -0.034,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.9014,
"after": 5.0,
"delta": 0.0986,
"percent_delta": 0.0201,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7381,
"after": 1.0,
"delta": 0.2619,
"percent_delta": 0.3548,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7791,
"after": 1.0,
"delta": 0.2209,
"percent_delta": 0.2835,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.16,
"after": 0.0,
"delta": -0.16,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0961,
"after": 0.0,
"delta": -0.0961,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4589,
"after": 0.0,
"delta": -0.4589,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2764,
"after": 1.0,
"delta": -0.2764,
"percent_delta": -0.2165,
"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.7381,
"after": 1.0,
"delta": 0.2619,
"percent_delta": 0.3548,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4589,
"after": 0.0,
"delta": -0.4589,
"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.375)",
"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": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"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": 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": 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.7207,
"after": 1.0,
"delta": 0.2793,
"percent_delta": 0.3875,
"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.7207,
"after": 1.0,
"delta": 0.2793,
"percent_delta": 0.3875,
"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": 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.159,
"after": 0.2,
"delta": 0.041,
"percent_delta": 0.2579,
"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.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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.2633,
"after": 0.2,
"delta": -0.0633,
"percent_delta": -0.2404,
"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.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.2633,
"after": 0.2,
"delta": -0.0633,
"percent_delta": -0.2404,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 8,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.0,
"after": 4.0,
"delta": -1.0,
"percent_delta": -0.2,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"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": 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.159,
"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.269,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2633,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.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.159,
"delta": -0.041,
"percent_delta": -0.2052,
"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.269,
"delta": -0.064,
"percent_delta": -0.1921,
"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.2633,
"delta": 0.0633,
"percent_delta": 0.3166,
"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.2633,
"delta": 0.0633,
"percent_delta": 0.3166,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.269,
"delta": -0.064,
"percent_delta": -0.1921,
"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.03,
"after": 0.0,
"delta": -0.03,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.208,
"after": 4.0,
"delta": 0.792,
"percent_delta": 0.2469,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.226,
"after": 0.159,
"delta": -0.067,
"percent_delta": -0.2965,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"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.04,
"after": 0.0,
"delta": -0.04,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.283,
"after": 0.269,
"delta": -0.014,
"percent_delta": -0.0495,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.431,
"after": 0.0,
"delta": -0.431,
"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.33,
"after": 0.2633,
"delta": -0.0667,
"percent_delta": -0.2021,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.876,
"after": 1.0,
"delta": 0.124,
"percent_delta": 0.1416,
"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.208,
"after": 4.0,
"delta": 0.792,
"percent_delta": 0.2469,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.5,
"after": 0.0,
"delta": -0.5,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.114 | - |
| predicted_3B | 0.030 | - |
| predicted_AB | 3.208 | - |
| predicted_AVG | 0.226 | - |
| predicted_BB | 0.500 | - |
| predicted_H | 0.270 | - |
| predicted_HR | 0.040 | - |
| predicted_OBP | 0.283 | - |
| predicted_R | 0.431 | - |
| predicted_RBI | 0.170 | - |
| predicted_SLG | 0.330 | - |
| predicted_SO | 0.876 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.155 | 0.041 |
| predicted_3B | 0.034 | 0.004 |
| predicted_AB | 4.901 | 1.693 |
| predicted_AVG | 0.215 | -0.011 |
| predicted_BB | 0.734 | 0.234 |
| predicted_H | 0.772 | 0.502 |
| predicted_HBP | 0.160 | - |
| predicted_HR | 0.095 | 0.055 |
| predicted_OBP | 0.297 | 0.014 |
| predicted_R | 0.708 | 0.277 |
| predicted_RBI | 0.451 | 0.280 |
| predicted_SLG | 0.322 | -0.008 |
| predicted_SO | 1.283 | 0.407 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.155 | 0.000 |
| predicted_3B | 0.034 | 0.000 |
| predicted_AB | 4.901 | 0.000 |
| predicted_AVG | 0.159 | -0.056 |
| predicted_BB | 0.738 | 0.004 |
| predicted_H | 0.779 | 0.007 |
| predicted_HBP | 0.160 | 0.000 |
| predicted_HR | 0.096 | 0.001 |
| predicted_OBP | 0.269 | -0.028 |
| predicted_R | 0.721 | 0.013 |
| predicted_RBI | 0.459 | 0.008 |
| predicted_SLG | 0.263 | -0.058 |
| predicted_SO | 1.276 | -0.006 |
AB rounded to 5 (raw=4.90), rates preserved: AVG=0.159 HR/AB=0.020
| 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 | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=8.0, weight=0.084, BvP AVG=0.375)
| 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 | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 5.000 | 0.000 |
| BB | 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.155 |
| predicted_3B | 0.000 | -0.034 |
| predicted_AB | 5.000 | 0.099 |
| predicted_AVG | 0.200 | 0.041 |
| predicted_BB | 1.000 | 0.262 |
| predicted_H | 1.000 | 0.221 |
| predicted_HR | 0.000 | -0.096 |
| predicted_OBP | 0.333 | 0.064 |
| predicted_R | 1.000 | 0.279 |
| predicted_RBI | 0.000 | -0.459 |
| predicted_SLG | 0.200 | -0.063 |
| predicted_SO | 1.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 | 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 | 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 | - | 12.000 | 3.000 | 0.000 | 0.000 | 0.000 | 2.000 | 2.000 | 2.000 | 2.000 | 0.2500 | 0.3571 | 0.2500 | 0.2500 | 0.0000 | 0.1667 | 0.1667 | 0.1667 |
| last_10 | 0.20 | 10 | - | 27.000 | 5.000 | 1.000 | 0.000 | 0.000 | 2.000 | 5.000 | 3.000 | 8.000 | 0.1852 | 0.3125 | 0.2222 | 0.1852 | 0.0000 | 0.0741 | 0.1111 | 0.2963 |
| season | 0.60 | 63 | - | 648.000 | 120.000 | 23.000 | 6.000 | 25.000 | 71.000 | 87.000 | 101.000 | 177.000 | 0.1852 | 0.3014 | 0.3549 | 0.1852 | 0.0386 | 0.1096 | 0.1559 | 0.2732 |
| Metric | Value |
|---|---|
| predicted_2B | 0.2080 |
| predicted_3B | 0.0390 |
| predicted_AB | 7.0660 |
| predicted_AVG | 0.2001 |
| predicted_BB | 1.0340 |
| predicted_H | 1.4140 |
| predicted_HBP | 0.1600 |
| predicted_HR | 0.1660 |
| predicted_OBP | 0.3147 |
| predicted_R | 1.0610 |
| predicted_RBI | 0.8090 |
| predicted_SLG | 0.3112 |
| predicted_SO | 1.8030 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1140 | 0.2080 | 0.1553 | model_form_blend |
| predicted_3B | 0.0300 | 0.0390 | 0.0340 | model_form_blend |
| predicted_AB | 3.2080 | 7.0660 | 4.9014 | model_form_blend |
| predicted_AVG | 0.2260 | 0.2001 | 0.2146 | model_form_blend |
| predicted_BB | 0.5000 | 1.0340 | 0.7344 | model_form_blend |
| predicted_H | 0.2700 | 1.4140 | 0.7722 | model_form_blend |
| predicted_HBP | - | 0.1600 | 0.1600 | form_only |
| predicted_HR | 0.0400 | 0.1660 | 0.0953 | model_form_blend |
| predicted_OBP | 0.2830 | 0.3147 | 0.2969 | model_form_blend |
| predicted_R | 0.4310 | 1.0610 | 0.7075 | model_form_blend |
| predicted_RBI | 0.1700 | 0.8090 | 0.4505 | model_form_blend |
| predicted_SLG | 0.3300 | 0.3112 | 0.3217 | model_form_blend |
| predicted_SO | 0.8760 | 1.8030 | 1.2829 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 202 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.185 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 3 |
| Hitting_AVG | 0.333 |
| Hitting_BB | 2 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| 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 | CF |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 694497 |
| playerID | 694497 |
| playerName | Evan Carter |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 22.9 |
| sl_bb_percent | 13.0 |
| sl_woba | 0.286 |
| sl_xwoba | 0.299 |
| sl_xba | 0.201 |
| sl_xslg | 0.342 |
| sl_sweet_spot_percent | 30.7 |
| sl_barrel_batted_rate | 7.1 |
| sl_hard_hit_percent | 37.9 |
| sl_exit_velocity_avg | 87.9 |
| sl_launch_angle_avg | 19.7 |
| sl_whiff_percent | 25.4 |
| sl_swing_percent | 40.1 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.348 | 0.000 | 0.000 | Hitting_2B | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.957 | 4.000 | 4.000 | Hitting_AB | 2.500 | 1.000 | 1.500 | 3.000 |
| predicted_AVG | 0.273 | 0.250 | 0.250 | Hitting_AVG | 0.400 | 1.000 | -0.150 | -0.750 |
| predicted_BB | 0.174 | 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 | 1.000 | 1.000 | 0.000 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.293 | 0.250 | 0.250 | Hitting_OBP | 0.400 | 1.000 | -0.150 | -0.750 |
| predicted_R | 0.478 | 0.000 | 1.000 | Hitting_R | 1.000 | 1.000 | -1.000 | -1.000 |
| predicted_RBI | 0.390 | 0.000 | 1.000 | Hitting_RBI | 0.500 | 1.000 | -0.500 | -1.000 |
| predicted_SLG | 0.453 | 0.250 | 0.250 | Hitting_SLG | 0.600 | 2.000 | -0.350 | -1.750 |
| predicted_SO | 0.652 | 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 | 11 |
| Boosted Metrics | 3 |
| Deboosted Metrics | 8 |
| Better Metrics | 4 |
| Worse Metrics | 7 |
| Biggest Boost | predicted_AB: 2.9570 -> 4.0000 (boost 1.0430, better) |
| Biggest Deboost | predicted_SO: 0.6520 -> 0.0000 (deboost -0.6520, 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: 2.9570 -> 3.7996 (boost 0.8426, better) | predicted_AVG: 0.2730 -> 0.2613 (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 | 0 | 2 | 0 | 2 | - | predicted_AVG: 0.2613 -> 0.2206 (deboost -0.0407, 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.6261 -> 1.0000 (boost 0.3739, better) | predicted_2B: 0.3891 -> 0.0000 (deboost -0.3891, worse) | AB rounded to 4 (raw=3.80), rates preserved: AVG=0.221 HR/AB=0.049 |
| 5 | bvp_blend | 0 | 0 | 0 | 0 | 0 | - | - | Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.143) |
| 6 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6238 -> 1.0000 (boost 0.3762, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_AVG: 0.2206 -> 0.2500 (boost 0.0294, better) | predicted_SLG: 0.4725 -> 0.2500 (deboost -0.2225, 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_R: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 2 | 1 | 2 | 1 | predicted_SLG: 0.2500 -> 0.4725 (boost 0.2225, better) | predicted_AVG: 0.2500 -> 0.2206 (deboost -0.0294, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "553869",
"player_name": "Elias Díaz",
"position": "C",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.348,
"predicted_3B": 0.0,
"predicted_AB": 2.957,
"predicted_AVG": 0.273,
"predicted_BB": 0.174,
"predicted_H": 0.58,
"predicted_HR": 0.11,
"predicted_OBP": 0.293,
"predicted_R": 0.478,
"predicted_RBI": 0.39,
"predicted_SLG": 0.453,
"predicted_SO": 0.652
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3891,
"predicted_3B": 0.0022,
"predicted_AB": 3.7996,
"predicted_AVG": 0.2613,
"predicted_BB": 0.2111,
"predicted_H": 0.8308,
"predicted_HBP": 0.014,
"predicted_HR": 0.1864,
"predicted_OBP": 0.2884,
"predicted_R": 0.6123,
"predicted_RBI": 0.6146,
"predicted_SLG": 0.4747,
"predicted_SO": 0.9126
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.348,
"after": 0.3891,
"delta": 0.0411,
"percent_delta": 0.1181,
"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": 2.957,
"after": 3.7996,
"delta": 0.8426,
"percent_delta": 0.285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2613,
"delta": -0.0117,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.174,
"after": 0.2111,
"delta": 0.0371,
"percent_delta": 0.2132,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 0.8308,
"delta": 0.2508,
"percent_delta": 0.4324,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1864,
"delta": 0.0764,
"percent_delta": 0.6945,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2884,
"delta": -0.0046,
"percent_delta": -0.0157,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.478,
"after": 0.6123,
"delta": 0.1343,
"percent_delta": 0.281,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.39,
"after": 0.6146,
"delta": 0.2246,
"percent_delta": 0.5759,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.453,
"after": 0.4747,
"delta": 0.0217,
"percent_delta": 0.0479,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 0.9126,
"delta": 0.2606,
"percent_delta": 0.3997,
"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": 2.957,
"after": 3.7996,
"delta": 0.8426,
"percent_delta": 0.285,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2613,
"delta": -0.0117,
"percent_delta": -0.0429,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 4,
"last_10": 6,
"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.3891,
"predicted_3B": 0.0022,
"predicted_AB": 3.7996,
"predicted_AVG": 0.2206,
"predicted_BB": 0.2122,
"predicted_H": 0.8383,
"predicted_HBP": 0.014,
"predicted_HR": 0.1879,
"predicted_OBP": 0.2618,
"predicted_R": 0.6238,
"predicted_RBI": 0.6261,
"predicted_SLG": 0.4725,
"predicted_SO": 0.9079
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3891,
"after": 0.3891,
"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.7996,
"after": 3.7996,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2613,
"after": 0.2206,
"delta": -0.0407,
"percent_delta": -0.1558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2111,
"after": 0.2122,
"delta": 0.0011,
"percent_delta": 0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.8308,
"after": 0.8383,
"delta": 0.0075,
"percent_delta": 0.009,
"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.1864,
"after": 0.1879,
"delta": 0.0015,
"percent_delta": 0.008,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2884,
"after": 0.2618,
"delta": -0.0266,
"percent_delta": -0.0922,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6123,
"after": 0.6238,
"delta": 0.0115,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.6146,
"after": 0.6261,
"delta": 0.0115,
"percent_delta": 0.0187,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4747,
"after": 0.4725,
"delta": -0.0022,
"percent_delta": -0.0046,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.9126,
"after": 0.9079,
"delta": -0.0047,
"percent_delta": -0.0052,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.2613,
"after": 0.2206,
"delta": -0.0407,
"percent_delta": -0.1558,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.80), rates preserved: AVG=0.221 HR/AB=0.049",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3891,
"after": 0.0,
"delta": -0.3891,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0022,
"after": 0.0,
"delta": -0.0022,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.7996,
"after": 4.0,
"delta": 0.2004,
"percent_delta": 0.0527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2122,
"after": 0.0,
"delta": -0.2122,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8383,
"after": 1.0,
"delta": 0.1617,
"percent_delta": 0.1929,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.014,
"after": 0.0,
"delta": -0.014,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1879,
"after": 0.0,
"delta": -0.1879,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6261,
"after": 1.0,
"delta": 0.3739,
"percent_delta": 0.5972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9079,
"after": 1.0,
"delta": 0.0921,
"percent_delta": 0.1014,
"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.6261,
"after": 1.0,
"delta": 0.3739,
"percent_delta": 0.5972,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"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": "bvp_blend",
"description": "Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.143)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 1.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.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": 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.6238,
"after": 1.0,
"delta": 0.3762,
"percent_delta": 0.6031,
"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.6238,
"after": 1.0,
"delta": 0.3762,
"percent_delta": 0.6031,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.25,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2206,
"after": 0.25,
"delta": 0.0294,
"percent_delta": 0.1333,
"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.2618,
"after": 0.25,
"delta": -0.0118,
"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.4725,
"after": 0.25,
"delta": -0.2225,
"percent_delta": -0.4709,
"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.2206,
"after": 0.25,
"delta": 0.0294,
"percent_delta": 0.1333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.4725,
"after": 0.25,
"delta": -0.2225,
"percent_delta": -0.4709,
"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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 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_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 9,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.2206,
"predicted_BB": 0.0,
"predicted_C": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2618,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4725,
"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.2206,
"delta": -0.0294,
"percent_delta": -0.1175,
"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.2618,
"delta": 0.0118,
"percent_delta": 0.0474,
"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.4725,
"delta": 0.2225,
"percent_delta": 0.8901,
"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.4725,
"delta": 0.2225,
"percent_delta": 0.8901,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2206,
"delta": -0.0294,
"percent_delta": -0.1175,
"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.348,
"after": 0.0,
"delta": -0.348,
"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.957,
"after": 4.0,
"delta": 1.043,
"percent_delta": 0.3527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.273,
"after": 0.2206,
"delta": -0.0524,
"percent_delta": -0.1919,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.174,
"after": 0.0,
"delta": -0.174,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.58,
"after": 1.0,
"delta": 0.42,
"percent_delta": 0.7241,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.293,
"after": 0.2618,
"delta": -0.0312,
"percent_delta": -0.1065,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.478,
"after": 0.0,
"delta": -0.478,
"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.453,
"after": 0.4725,
"delta": 0.0195,
"percent_delta": 0.043,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.652,
"after": 0.0,
"delta": -0.652,
"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_AB",
"before": 2.957,
"after": 4.0,
"delta": 1.043,
"percent_delta": 0.3527,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.652,
"after": 0.0,
"delta": -0.652,
"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.348 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.957 | - |
| predicted_AVG | 0.273 | - |
| predicted_BB | 0.174 | - |
| predicted_H | 0.580 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.293 | - |
| predicted_R | 0.478 | - |
| predicted_RBI | 0.390 | - |
| predicted_SLG | 0.453 | - |
| predicted_SO | 0.652 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.389 | 0.041 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.800 | 0.843 |
| predicted_AVG | 0.261 | -0.012 |
| predicted_BB | 0.211 | 0.037 |
| predicted_H | 0.831 | 0.251 |
| predicted_HBP | 0.014 | - |
| predicted_HR | 0.186 | 0.076 |
| predicted_OBP | 0.288 | -0.005 |
| predicted_R | 0.612 | 0.134 |
| predicted_RBI | 0.615 | 0.225 |
| predicted_SLG | 0.475 | 0.022 |
| predicted_SO | 0.913 | 0.261 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.389 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.800 | 0.000 |
| predicted_AVG | 0.221 | -0.041 |
| predicted_BB | 0.212 | 0.001 |
| predicted_H | 0.838 | 0.008 |
| predicted_HBP | 0.014 | 0.000 |
| predicted_HR | 0.188 | 0.002 |
| predicted_OBP | 0.262 | -0.027 |
| predicted_R | 0.624 | 0.012 |
| predicted_RBI | 0.626 | 0.011 |
| predicted_SLG | 0.472 | -0.002 |
| predicted_SO | 0.908 | -0.005 |
AB rounded to 4 (raw=3.80), rates preserved: AVG=0.221 HR/AB=0.049
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 0.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 1.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=14.0, weight=0.127, BvP AVG=0.143)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HR | 0.000 | 0.000 |
| RBI | 1.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 1.000 | - |
| RBI | 1.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.389 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 4.000 | 0.200 |
| predicted_AVG | 0.250 | 0.029 |
| predicted_BB | 0.000 | -0.212 |
| predicted_H | 1.000 | 0.162 |
| predicted_HR | 0.000 | -0.188 |
| predicted_OBP | 0.250 | -0.012 |
| predicted_R | 1.000 | 0.376 |
| predicted_RBI | 1.000 | 0.374 |
| predicted_SLG | 0.250 | -0.222 |
| predicted_SO | 1.000 | 0.092 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 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 | 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 | 3.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 0.000 | 5.000 | 0.2500 | 0.2500 | 0.5833 | 0.2500 | 0.0833 | 0.2500 | 0.0000 | 0.4167 |
| last_10 | 0.20 | 6 | - | 27.000 | 3.000 | 1.000 | 0.000 | 1.000 | 3.000 | 3.000 | 0.000 | 11.000 | 0.1111 | 0.1111 | 0.2593 | 0.1111 | 0.0370 | 0.1111 | 0.0000 | 0.4074 |
| season | 0.60 | 10 | - | 68.000 | 17.000 | 8.000 | 0.000 | 5.000 | 15.000 | 11.000 | 4.000 | 15.000 | 0.2500 | 0.2917 | 0.5882 | 0.2500 | 0.0735 | 0.2206 | 0.0588 | 0.2206 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4610 |
| predicted_3B | 0.0060 |
| predicted_AB | 5.2720 |
| predicted_AVG | 0.2408 |
| predicted_BB | 0.2760 |
| predicted_H | 1.2690 |
| predicted_HBP | 0.0140 |
| predicted_HR | 0.3200 |
| predicted_OBP | 0.2804 |
| predicted_R | 0.8470 |
| predicted_RBI | 1.0070 |
| predicted_SLG | 0.5127 |
| predicted_SO | 1.3680 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.3480 | 0.4610 | 0.3891 | model_form_blend |
| predicted_3B | 0.0000 | 0.0060 | 0.0022 | model_form_blend |
| predicted_AB | 2.9570 | 5.2720 | 3.7996 | model_form_blend |
| predicted_AVG | 0.2730 | 0.2408 | 0.2613 | model_form_blend |
| predicted_BB | 0.1740 | 0.2760 | 0.2111 | model_form_blend |
| predicted_H | 0.5800 | 1.2690 | 0.8308 | model_form_blend |
| predicted_HBP | - | 0.0140 | 0.0140 | form_only |
| predicted_HR | 0.1100 | 0.3200 | 0.1864 | model_form_blend |
| predicted_OBP | 0.2930 | 0.2804 | 0.2884 | model_form_blend |
| predicted_R | 0.4780 | 0.8470 | 0.6123 | model_form_blend |
| predicted_RBI | 0.3900 | 1.0070 | 0.6146 | model_form_blend |
| predicted_SLG | 0.4530 | 0.5127 | 0.4747 | model_form_blend |
| predicted_SO | 0.6520 | 1.3680 | 0.9126 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 23 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.25 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 1 |
| Hitting_AVG | 1.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 1 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 2 |
| Hitting_battingOrder | 8 |
| 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 | 20260610_TEX@KC |
| game_type | short |
| mlbID | 553869 |
| playerID | 553869 |
| playerName | Elias Díaz |
| pos | C |
| started | False |
| startingPosition | C |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.0 |
| sl_bb_percent | 3.6 |
| sl_woba | 0.373 |
| sl_xwoba | 0.291 |
| sl_xba | 0.245 |
| sl_xslg | 0.399 |
| sl_sweet_spot_percent | 35.0 |
| sl_barrel_batted_rate | 15.0 |
| sl_hard_hit_percent | 45.0 |
| sl_exit_velocity_avg | 89.2 |
| sl_launch_angle_avg | 15.8 |
| sl_whiff_percent | 29.5 |
| sl_swing_percent | 56.5 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.050 | 0.000 | 0.000 | Hitting_2B | 0.067 | 1.000 | -0.067 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.700 | 3.000 | 3.000 | Hitting_AB | 3.000 | 3.000 | 0.000 | 0.000 |
| predicted_AVG | 0.267 | 0.667 | 0.333 | Hitting_AVG | 0.222 | 0.667 | 0.444 | 0.000 |
| predicted_BB | 0.250 | 1.000 | 0.000 | Hitting_BB | 0.333 | 1.000 | 0.667 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.240 | 2.000 | 1.000 | Hitting_H | 0.667 | 2.000 | 1.333 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.067 | 0.000 | -0.067 | 0.000 |
| predicted_OBP | 0.308 | 0.750 | 0.333 | Hitting_OBP | 0.314 | 0.800 | 0.436 | -0.050 |
| predicted_R | 0.250 | 1.000 | 0.000 | Hitting_R | 0.200 | 0.000 | 0.800 | 1.000 |
| predicted_RBI | 0.150 | 0.000 | 0.000 | Hitting_RBI | 0.333 | 1.000 | -0.333 | -1.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.398 | 0.667 | 0.333 | Hitting_SLG | 0.311 | 1.000 | 0.356 | -0.333 |
| predicted_SO | 0.700 | 1.000 | 1.000 | Hitting_SO | 0.667 | 0.000 | 0.333 | 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.2400 -> 2.0000 (boost 1.7600, better) |
| Biggest Deboost | predicted_SLG: 0.3980 -> 0.2371 (deboost -0.1609, 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: 2.7000 -> 3.0705 (boost 0.3705, better) | predicted_SLG: 0.3980 -> 0.3847 (deboost -0.0133, 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.3847 -> 0.2371 (deboost -0.1476, 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.7852 -> 1.0000 (boost 0.2148, worse) | predicted_H: 0.4919 -> 0.0000 (deboost -0.4919, worse) | AB rounded to 3 (raw=3.07), rates preserved: AVG=0.160 HR/AB=0.016 |
| 5 | bvp_blend | 1 | 1 | 0 | 1 | 0 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.231) |
| 6 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3042 -> 0.0000 (deboost -0.3042, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 7 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.1602 -> 0.3330 (boost 0.1728, better) | - | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 8 | simulation_box_score_reference | 3 | 3 | 0 | 3 | 0 | predicted_BB: 0.0000 -> 1.0000 (boost 1.0000, better) | - | Attached simulation box score without overwriting model prediction |
| 9 | current_json_final | 3 | 0 | 3 | 0 | 3 | - | predicted_AVG: 0.3330 -> 0.1602 (deboost -0.1728, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670032",
"player_name": "Nicky Lopez",
"position": "2B",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.05,
"predicted_3B": 0.0,
"predicted_AB": 2.7,
"predicted_AVG": 0.267,
"predicted_BB": 0.25,
"predicted_H": 0.24,
"predicted_HR": 0.03,
"predicted_OBP": 0.308,
"predicted_R": 0.25,
"predicted_RBI": 0.15,
"predicted_SLG": 0.398,
"predicted_SO": 0.7
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.0831,
"predicted_3B": 0.0018,
"predicted_AB": 3.0705,
"predicted_AVG": 0.2614,
"predicted_BB": 0.2757,
"predicted_H": 0.4875,
"predicted_HBP": 0.094,
"predicted_HR": 0.0494,
"predicted_OBP": 0.3144,
"predicted_R": 0.2986,
"predicted_RBI": 0.2589,
"predicted_SLG": 0.3847,
"predicted_SO": 0.7892
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.05,
"after": 0.0831,
"delta": 0.0331,
"percent_delta": 0.662,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0018,
"delta": 0.0018,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.7,
"after": 3.0705,
"delta": 0.3705,
"percent_delta": 0.1372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.2614,
"delta": -0.0056,
"percent_delta": -0.021,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.25,
"after": 0.2757,
"delta": 0.0257,
"percent_delta": 0.1028,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 0.4875,
"delta": 0.2475,
"percent_delta": 1.0312,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0494,
"delta": 0.0194,
"percent_delta": 0.6467,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.308,
"after": 0.3144,
"delta": 0.0064,
"percent_delta": 0.0208,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.25,
"after": 0.2986,
"delta": 0.0486,
"percent_delta": 0.1944,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.2589,
"delta": 0.1089,
"percent_delta": 0.726,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.3847,
"delta": -0.0133,
"percent_delta": -0.0334,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7,
"after": 0.7892,
"delta": 0.0892,
"percent_delta": 0.1274,
"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": 2.7,
"after": 3.0705,
"delta": 0.3705,
"percent_delta": 0.1372,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.3847,
"delta": -0.0133,
"percent_delta": -0.0334,
"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": 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.0831,
"predicted_3B": 0.0018,
"predicted_AB": 3.0705,
"predicted_AVG": 0.1602,
"predicted_BB": 0.2771,
"predicted_H": 0.4919,
"predicted_HBP": 0.094,
"predicted_HR": 0.0498,
"predicted_OBP": 0.2297,
"predicted_R": 0.3042,
"predicted_RBI": 0.2637,
"predicted_SLG": 0.2371,
"predicted_SO": 0.7852
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0831,
"after": 0.0831,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0018,
"after": 0.0018,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0705,
"after": 3.0705,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2614,
"after": 0.1602,
"delta": -0.1012,
"percent_delta": -0.3871,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2757,
"after": 0.2771,
"delta": 0.0014,
"percent_delta": 0.0051,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.4875,
"after": 0.4919,
"delta": 0.0044,
"percent_delta": 0.009,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.094,
"after": 0.094,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0494,
"after": 0.0498,
"delta": 0.0004,
"percent_delta": 0.0081,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3144,
"after": 0.2297,
"delta": -0.0847,
"percent_delta": -0.2694,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.2986,
"after": 0.3042,
"delta": 0.0056,
"percent_delta": 0.0188,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.2589,
"after": 0.2637,
"delta": 0.0048,
"percent_delta": 0.0185,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3847,
"after": 0.2371,
"delta": -0.1476,
"percent_delta": -0.3837,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7892,
"after": 0.7852,
"delta": -0.004,
"percent_delta": -0.0051,
"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.3847,
"after": 0.2371,
"delta": -0.1476,
"percent_delta": -0.3837,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 3 (raw=3.07), rates preserved: AVG=0.160 HR/AB=0.016",
"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.0831,
"after": 0.0,
"delta": -0.0831,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0018,
"after": 0.0,
"delta": -0.0018,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0705,
"after": 3.0,
"delta": -0.0705,
"percent_delta": -0.023,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.2771,
"after": 0.0,
"delta": -0.2771,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.4919,
"after": 0.0,
"delta": -0.4919,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.094,
"after": 0.0,
"delta": -0.094,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.2637,
"after": 0.0,
"delta": -0.2637,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7852,
"after": 1.0,
"delta": 0.2148,
"percent_delta": 0.2736,
"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.7852,
"after": 1.0,
"delta": 0.2148,
"percent_delta": 0.2736,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_H",
"before": 0.4919,
"after": 0.0,
"delta": -0.4919,
"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.231)",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 1,
"deboosted_metrics": 0,
"better_metrics": 1,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"model_expectation": 0.8791,
"bvp": 0.1209
},
"window_games": {}
},
{
"index": 6,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3042,
"after": 0.0,
"delta": -0.3042,
"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.3042,
"after": 0.0,
"delta": -0.3042,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_AVG": 0.333,
"predicted_BB": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.333,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.1602,
"after": 0.333,
"delta": 0.1728,
"percent_delta": 1.0787,
"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.2297,
"after": 0.333,
"delta": 0.1033,
"percent_delta": 0.4497,
"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.2371,
"after": 0.333,
"delta": 0.0959,
"percent_delta": 0.4045,
"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.1602,
"after": 0.333,
"delta": 0.1728,
"percent_delta": 1.0787,
"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": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 2.0,
"delta": 1.0,
"percent_delta": 1.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 3,
"boosted_metrics": 3,
"deboosted_metrics": 0,
"better_metrics": 3,
"worse_metrics": 0,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.0,
"after": 1.0,
"delta": 1.0,
"percent_delta": null,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 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.1602,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 2.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2297,
"predicted_R": 1.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.2371,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1602,
"delta": -0.1728,
"percent_delta": -0.5189,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.333,
"after": 0.2297,
"delta": -0.1033,
"percent_delta": -0.3102,
"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.2371,
"delta": -0.0959,
"percent_delta": -0.288,
"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.1602,
"delta": -0.1728,
"percent_delta": -0.5189,
"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.05,
"after": 0.0,
"delta": -0.05,
"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.7,
"after": 3.0,
"delta": 0.3,
"percent_delta": 0.1111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.267,
"after": 0.1602,
"delta": -0.1068,
"percent_delta": -0.4,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.25,
"after": 1.0,
"delta": 0.75,
"percent_delta": 3.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.24,
"after": 2.0,
"delta": 1.76,
"percent_delta": 7.3333,
"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.308,
"after": 0.2297,
"delta": -0.0783,
"percent_delta": -0.2542,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.25,
"after": 1.0,
"delta": 0.75,
"percent_delta": 3.0,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.2371,
"delta": -0.1609,
"percent_delta": -0.4043,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7,
"after": 1.0,
"delta": 0.3,
"percent_delta": 0.4286,
"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.24,
"after": 2.0,
"delta": 1.76,
"percent_delta": 7.3333,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.2371,
"delta": -0.1609,
"percent_delta": -0.4043,
"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.050 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.700 | - |
| predicted_AVG | 0.267 | - |
| predicted_BB | 0.250 | - |
| predicted_H | 0.240 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.308 | - |
| predicted_R | 0.250 | - |
| predicted_RBI | 0.150 | - |
| predicted_SLG | 0.398 | - |
| predicted_SO | 0.700 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.033 |
| predicted_3B | 0.002 | 0.002 |
| predicted_AB | 3.071 | 0.370 |
| predicted_AVG | 0.261 | -0.006 |
| predicted_BB | 0.276 | 0.026 |
| predicted_H | 0.487 | 0.247 |
| predicted_HBP | 0.094 | - |
| predicted_HR | 0.049 | 0.019 |
| predicted_OBP | 0.314 | 0.006 |
| predicted_R | 0.299 | 0.049 |
| predicted_RBI | 0.259 | 0.109 |
| predicted_SLG | 0.385 | -0.013 |
| predicted_SO | 0.789 | 0.089 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.083 | 0.000 |
| predicted_3B | 0.002 | 0.000 |
| predicted_AB | 3.071 | 0.000 |
| predicted_AVG | 0.160 | -0.101 |
| predicted_BB | 0.277 | 0.001 |
| predicted_H | 0.492 | 0.004 |
| predicted_HBP | 0.094 | 0.000 |
| predicted_HR | 0.050 | 0.000 |
| predicted_OBP | 0.230 | -0.085 |
| predicted_R | 0.304 | 0.006 |
| predicted_RBI | 0.264 | 0.005 |
| predicted_SLG | 0.237 | -0.148 |
| predicted_SO | 0.785 | -0.004 |
AB rounded to 3 (raw=3.07), rates preserved: AVG=0.160 HR/AB=0.016
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 3.000 | - |
| BB | 0.000 | - |
| H | 0.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Sample-size BvP blend (BvP AB=13.0, weight=0.121, BvP AVG=0.231)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| H | 1.000 | 1.000 |
| HR | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | 0.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.083 |
| predicted_3B | 0.000 | -0.002 |
| predicted_AB | 3.000 | -0.071 |
| predicted_AVG | 0.333 | 0.173 |
| predicted_BB | 0.000 | -0.277 |
| predicted_H | 1.000 | 0.508 |
| predicted_HR | 0.000 | -0.050 |
| predicted_OBP | 0.333 | 0.103 |
| predicted_R | 0.000 | -0.304 |
| predicted_RBI | 0.000 | -0.264 |
| predicted_SLG | 0.333 | 0.096 |
| 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 | 3.000 | 0.000 |
| BB | 1.000 | 1.000 |
| CS | 0.000 | 0.000 |
| H | 2.000 | 1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 1.000 | 1.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 5.000 | 1.000 | 0.000 | 0.000 | 2.000 | 1.000 | 1.000 | 4.000 | 0.3846 | 0.4667 | 0.4615 | 0.3846 | 0.0000 | 0.1538 | 0.0769 | 0.3077 |
| last_10 | 0.20 | 9 | - | 30.000 | 10.000 | 1.000 | 0.000 | 1.000 | 5.000 | 3.000 | 3.000 | 8.000 | 0.3333 | 0.4118 | 0.4667 | 0.3333 | 0.0333 | 0.1667 | 0.1000 | 0.2667 |
| season | 0.60 | 13 | - | 54.000 | 10.000 | 1.000 | 0.000 | 1.000 | 5.000 | 5.000 | 5.000 | 14.000 | 0.1852 | 0.2667 | 0.2593 | 0.1852 | 0.0185 | 0.0926 | 0.0926 | 0.2593 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1440 |
| predicted_3B | 0.0050 |
| predicted_AB | 3.7510 |
| predicted_AVG | 0.2511 |
| predicted_BB | 0.3230 |
| predicted_H | 0.9420 |
| predicted_HBP | 0.0940 |
| predicted_HR | 0.0850 |
| predicted_OBP | 0.3262 |
| predicted_R | 0.3880 |
| predicted_RBI | 0.4590 |
| predicted_SLG | 0.3603 |
| predicted_SO | 0.9530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0500 | 0.1440 | 0.0831 | model_form_blend |
| predicted_3B | 0.0000 | 0.0050 | 0.0018 | model_form_blend |
| predicted_AB | 2.7000 | 3.7510 | 3.0705 | model_form_blend |
| predicted_AVG | 0.2670 | 0.2511 | 0.2614 | model_form_blend |
| predicted_BB | 0.2500 | 0.3230 | 0.2757 | model_form_blend |
| predicted_H | 0.2400 | 0.9420 | 0.4875 | model_form_blend |
| predicted_HBP | - | 0.0940 | 0.0940 | form_only |
| predicted_HR | 0.0300 | 0.0850 | 0.0494 | model_form_blend |
| predicted_OBP | 0.3080 | 0.3262 | 0.3144 | model_form_blend |
| predicted_R | 0.2500 | 0.3880 | 0.2986 | model_form_blend |
| predicted_RBI | 0.1500 | 0.4590 | 0.2589 | model_form_blend |
| predicted_SLG | 0.3980 | 0.3603 | 0.3847 | model_form_blend |
| predicted_SO | 0.7000 | 0.9530 | 0.7892 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 20 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 4 |
| AB | 3 |
| H | 2 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.185 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_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 | 1 |
| Hitting_H | 2 |
| Hitting_HBP | 1 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | 2B |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 670032 |
| playerID | 670032 |
| playerName | Nicky Lopez |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 23.1 |
| sl_bb_percent | 5.1 |
| sl_woba | 0.333 |
| sl_xwoba | 0.264 |
| sl_xba | 0.227 |
| sl_xslg | 0.296 |
| sl_sweet_spot_percent | 37.0 |
| sl_barrel_batted_rate | 0.0 |
| sl_hard_hit_percent | 25.9 |
| sl_exit_velocity_avg | 85.4 |
| sl_launch_angle_avg | 1.6 |
| sl_whiff_percent | 24.0 |
| sl_swing_percent | 55.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 | 2.167 | 1.000 | -1.167 | 0.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 2.000 | 2.000 | -1.000 | -1.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 4.583 | 6.000 | -1.583 | -3.000 |
| predicted_IP | 5.000 | 5.000 | 5.000 | Pitching_InningsPitched | 4.967 | 5.000 | 0.033 | 0.000 |
| predicted_SO | 5.000 | 5.000 | 5.000 | Pitching_SO | 4.083 | 5.000 | 0.917 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "677958",
"player_name": "Kumar Rocker",
"position": "Starter",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"predicted_SO": 5.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 1.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 5.0,
"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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 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": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 5.0,
"after": 5.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 1.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 5.000 | - |
| predicted_SO | 5.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 28.200 | 6.000 | 19.000 | 13.000 | 22.000 | 2.000 | 1.8837 | 1.1163 | 0.2093 | 0.6628 | 0.4535 | 0.7674 | 0.0698 |
| last_10 | 0.35 | 10 | 51.000 | 19.000 | 44.000 | 23.000 | 41.000 | 4.000 | 3.3529 | 1.3137 | 0.3725 | 0.8628 | 0.4510 | 0.8039 | 0.0784 |
| season | 0.20 | 12 | 61.000 | 24.000 | 55.000 | 26.000 | 49.000 | 6.000 | 3.5410 | 1.3279 | 0.3934 | 0.9016 | 0.4262 | 0.8033 | 0.0984 |
| Metric | Value |
|---|---|
| predicted_BB | 2.2050 |
| predicted_ER | 1.8610 |
| predicted_ERA | 3.2132 |
| predicted_H | 4.3430 |
| predicted_HR | 0.5050 |
| predicted_IP | 5.1000 |
| predicted_SO | 4.3310 |
| predicted_WHIP | 1.2563 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 2.2050 | 1.6335 | model_form_blend |
| predicted_ER | 1.0000 | 1.8610 | 1.4527 | model_form_blend |
| predicted_ERA | - | 3.2132 | 3.2132 | form_only |
| predicted_H | 3.0000 | 4.3430 | 3.7061 | model_form_blend |
| predicted_HR | 0.0000 | 0.5050 | 0.2655 | model_form_blend |
| predicted_IP | 5.0000 | 5.1000 | 5.2000 | model_form_blend |
| predicted_SO | 5.0000 | 4.3310 | 4.6483 | 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 | 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.0 |
| H | 3 |
| R | 1 |
| ER | 1 |
| BB | 1 |
| SO | 5 |
| HR | 0 |
| BF | 19 |
| Pitches | 86 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 22 |
| Pitching_ER | 2 |
| Pitching_ERA | 3.54 |
| Pitching_Flyouts | 2 |
| Pitching_Groundouts | 3 |
| Pitching_H | 6 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.0 |
| Pitching_Pitches | 94 |
| Pitching_R | 2 |
| Pitching_SO | 5 |
| Pitching_Strikes | 57 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_CLE@TEX |
| game_type | full |
| mlbID | 677958 |
| playerID | 677958 |
| playerName | Kumar Rocker |
| pos | P |
| started | True |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-05 |
| sl_k_percent | 18.7 |
| sl_bb_percent | 9.9 |
| sl_woba | 0.304 |
| sl_xwoba | 0.335 |
| sl_sweet_spot_percent | 29.2 |
| sl_barrel_batted_rate | 8.2 |
| sl_hard_hit_percent | 42.2 |
| sl_whiff_percent | 22.5 |
| sl_swing_percent | 47.7 |
| sl_avg_best_speed | 78.291488152 |
| sl_avg_hyper_speed | 94.668499945 |
| 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.250 | 0.000 | -0.250 | 0.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.542 | 1.000 | -0.542 | -1.000 |
| predicted_IP | 1.100 | 1.100 | 1.100 | Pitching_InningsPitched | 1.192 | 1.000 | -0.092 | 0.100 |
| predicted_SO | 1.000 | 1.000 | 1.000 | Pitching_SO | 1.250 | 1.000 | -0.250 | 0.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 1 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 1 |
| Better Metrics | 0 |
| Worse Metrics | 1 |
| Biggest Boost | - |
| Biggest Deboost | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 1 | 0 | 1 | 0 | 1 | - | predicted_IP: 1.3333 -> 1.1000 (deboost -0.2333, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656641",
"player_name": "Jacob Latz",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 1.3333,
"predicted_SO": 1.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "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.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 1,
"boosted_metrics": 0,
"deboosted_metrics": 1,
"better_metrics": 0,
"worse_metrics": 1,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_IP",
"before": 1.3333,
"after": 1.1,
"delta": -0.2333,
"percent_delta": -0.175,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 0.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 0.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.333 | - |
| predicted_SO | 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.100 | 1.000 | 4.000 | 2.000 | 9.000 | 1.000 | 1.4211 | 0.9474 | 0.1579 | 0.6316 | 0.3158 | 1.4210 | 0.1579 |
| last_10 | 0.35 | 10 | 13.100 | 1.000 | 5.000 | 3.000 | 16.000 | 1.000 | 0.6750 | 0.6000 | 0.0750 | 0.3750 | 0.2250 | 1.2000 | 0.0750 |
| season | 0.20 | 23 | 30.000 | 3.000 | 10.000 | 6.000 | 30.000 | 2.000 | 0.9000 | 0.5333 | 0.1000 | 0.3333 | 0.2000 | 1.0000 | 0.0667 |
| Metric | Value |
|---|---|
| predicted_BB | 0.4110 |
| predicted_ER | 0.3810 |
| predicted_ERA | 2.5744 |
| predicted_H | 0.9340 |
| predicted_HR | 0.1660 |
| predicted_IP | 1.1000 |
| predicted_SO | 1.4820 |
| predicted_WHIP | 1.0092 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.4110 | 0.1877 | model_form_blend |
| predicted_ER | 0.0000 | 0.3810 | 0.1740 | model_form_blend |
| predicted_ERA | - | 2.5744 | 2.5744 | form_only |
| predicted_H | 0.0000 | 0.9340 | 0.4265 | model_form_blend |
| predicted_HR | 0.0000 | 0.1660 | 0.0758 | model_form_blend |
| predicted_IP | 1.1000 | 1.1000 | 1.1000 | model_form_blend |
| predicted_SO | 1.0000 | 1.4820 | 1.2201 | model_form_blend |
| predicted_WHIP | - | 1.0092 | 1.0092 | 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.1 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 1 |
| HR | 0 |
| BF | 4 |
| Pitches | 4 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.80 |
| 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 | 17 |
| Pitching_R | 0 |
| Pitching_SO | 1 |
| Pitching_Strikes | 11 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | S |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 656641 |
| playerID | 656641 |
| playerName | Jacob Latz |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 27.3 |
| sl_bb_percent | 6.4 |
| sl_woba | 0.189 |
| sl_xwoba | 0.248 |
| sl_sweet_spot_percent | 19.2 |
| sl_barrel_batted_rate | 6.8 |
| sl_hard_hit_percent | 43.8 |
| sl_whiff_percent | 29.9 |
| sl_swing_percent | 49.1 |
| sl_avg_best_speed | 80.089459189 |
| sl_avg_hyper_speed | 94.287635342 |
| 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.208 | 0.000 | -0.208 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.208 | 0.000 | -0.208 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.667 | 0.000 | 0.333 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 1.146 | 2.000 | -0.146 | -1.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.833 | 3.000 | -0.833 | -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": "596001",
"player_name": "Jakob Junis",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 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.200 | 1.000 | 4.000 | 0.000 | 7.000 | 0.000 | 1.5882 | 0.7059 | 0.1765 | 0.7059 | 0.0000 | 1.2353 | 0.0000 |
| last_10 | 0.35 | 10 | 13.100 | 2.000 | 9.000 | 1.000 | 14.000 | 0.000 | 1.3500 | 0.7500 | 0.1500 | 0.6750 | 0.0750 | 1.0500 | 0.0000 |
| season | 0.20 | 24 | 28.200 | 5.000 | 16.000 | 5.000 | 20.000 | 0.000 | 1.5698 | 0.7326 | 0.1744 | 0.5581 | 0.1744 | 0.6977 | 0.0000 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2230 |
| predicted_ER | 0.3470 |
| predicted_ERA | 2.8484 |
| predicted_H | 0.8820 |
| predicted_HR | 0.0720 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1010 |
| predicted_WHIP | 1.0071 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2230 | 0.1008 | model_form_blend |
| predicted_ER | 0.0000 | 0.3470 | 0.1568 | model_form_blend |
| predicted_ERA | - | 2.8484 | 2.8484 | form_only |
| predicted_H | 1.0000 | 0.8820 | 0.9467 | model_form_blend |
| predicted_HR | 0.0000 | 0.0720 | 0.0325 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1010 | 0.4975 | model_form_blend |
| predicted_WHIP | - | 1.0071 | 1.0071 | 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 | 1 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 4 |
| Pitches | 5 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 6 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.57 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 2.0 |
| Pitching_Pitches | 21 |
| Pitching_R | 0 |
| Pitching_SO | 3 |
| Pitching_Strikes | 16 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | W |
| Pitching_pitchingOrder | 4 |
| allPositionsPlayed | P |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 596001 |
| playerID | 596001 |
| playerName | Jakob Junis |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.5 |
| sl_bb_percent | 4.6 |
| sl_woba | 0.198 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 33.8 |
| sl_barrel_batted_rate | 3.8 |
| sl_hard_hit_percent | 31.3 |
| sl_whiff_percent | 18.6 |
| sl_swing_percent | 48.0 |
| sl_avg_best_speed | 75.6595445 |
| sl_avg_hyper_speed | 92.786748625 |
| 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.345 | 1.000 | -0.345 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 1.069 | 2.000 | -1.069 | -2.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.759 | 1.000 | 0.241 | 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": "641302",
"player_name": "Tyler Alexander",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 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.000 | 4.000 | 6.000 | 0.000 | 3.000 | 0.000 | 9.0000 | 1.5000 | 1.0000 | 1.5000 | 0.0000 | 0.7500 | 0.0000 |
| last_10 | 0.35 | 10 | 8.000 | 5.000 | 8.000 | 3.000 | 7.000 | 1.000 | 5.6250 | 1.3750 | 0.6250 | 1.0000 | 0.3750 | 0.8750 | 0.1250 |
| season | 0.20 | 29 | 28.000 | 10.000 | 31.000 | 8.000 | 22.000 | 2.000 | 3.2143 | 1.3929 | 0.3571 | 1.1071 | 0.2857 | 0.7857 | 0.0714 |
| Metric | Value |
|---|---|
| predicted_BB | 0.2340 |
| predicted_ER | 0.5330 |
| predicted_ERA | 5.5756 |
| predicted_H | 0.9550 |
| predicted_HR | 0.0840 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7440 |
| predicted_WHIP | 1.3826 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.2340 | 0.1052 | model_form_blend |
| predicted_ER | 0.0000 | 0.5330 | 0.2395 | model_form_blend |
| predicted_ERA | - | 5.5756 | 5.5756 | form_only |
| predicted_H | 0.0000 | 0.9550 | 0.4292 | model_form_blend |
| predicted_HR | 0.0000 | 0.0840 | 0.0377 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 1.0000 | 0.7440 | 0.8850 | model_form_blend |
| predicted_WHIP | - | 1.3826 | 1.3826 | 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 | 1 |
| 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 | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 3.21 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 2 |
| Pitching_H | 2 |
| 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 | 0 |
| Pitching_pitchingOrder | 3 |
| allPositionsPlayed | P |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 641302 |
| playerID | 641302 |
| playerName | Tyler Alexander |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.9 |
| sl_bb_percent | 7.3 |
| sl_woba | 0.332 |
| sl_xwoba | 0.285 |
| sl_sweet_spot_percent | 25.6 |
| sl_barrel_batted_rate | 3.3 |
| sl_hard_hit_percent | 31.1 |
| sl_whiff_percent | 16.6 |
| sl_swing_percent | 45.2 |
| sl_avg_best_speed | 75.207223636 |
| sl_avg_hyper_speed | 92.92821875 |
| 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.379 | 1.000 | -0.379 | -1.000 |
| predicted_H | 0.000 | 0.000 | 0.000 | Pitching_H | 0.966 | 3.000 | -0.966 | -3.000 |
| predicted_IP | 0.200 | 0.200 | 0.200 | Pitching_InningsPitched | 0.703 | 0.200 | -0.503 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 0.724 | 0.000 | -0.724 | 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": "656222",
"player_name": "Jalen Beeks",
"position": "Middle Reliever",
"team": "TEX",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 0.0,
"predicted_H": 0.0,
"predicted_HR": 0.0,
"predicted_IP": 0.6667,
"predicted_SO": 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.100 | 2.000 | 8.000 | 0.000 | 3.000 | 1.000 | 4.1538 | 1.8462 | 0.4615 | 1.8461 | 0.0000 | 0.6923 | 0.2308 |
| last_10 | 0.35 | 10 | 8.000 | 6.000 | 14.000 | 2.000 | 4.000 | 4.000 | 6.7500 | 2.0000 | 0.7500 | 1.7500 | 0.2500 | 0.5000 | 0.5000 |
| season | 0.20 | 29 | 26.000 | 11.000 | 28.000 | 8.000 | 21.000 | 6.000 | 3.8077 | 1.3846 | 0.4231 | 1.0769 | 0.3077 | 0.8077 | 0.2308 |
| Metric | Value |
|---|---|
| predicted_BB | 0.1980 |
| predicted_ER | 0.4040 |
| predicted_ERA | 4.6880 |
| predicted_H | 1.0200 |
| predicted_HR | 0.1820 |
| predicted_IP | 0.2000 |
| predicted_SO | 0.6130 |
| predicted_WHIP | 1.5695 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.1980 | 0.0874 | model_form_blend |
| predicted_ER | 0.0000 | 0.4040 | 0.1784 | model_form_blend |
| predicted_ERA | - | 4.6880 | 4.6880 | form_only |
| predicted_H | 0.0000 | 1.0200 | 0.4504 | model_form_blend |
| predicted_HR | 0.0000 | 0.1820 | 0.0804 | model_form_blend |
| predicted_IP | 0.2000 | 0.2000 | 0.2000 | model_form_blend |
| predicted_SO | 0.0000 | 0.6130 | 0.2707 | model_form_blend |
| predicted_WHIP | - | 1.5695 | 1.5695 | 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 | 0.2 |
| H | 0 |
| R | 0 |
| ER | 0 |
| BB | 0 |
| SO | 0 |
| HR | 0 |
| BF | 2 |
| 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 | 5 |
| Pitching_ER | 1 |
| Pitching_ERA | 3.81 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 1 |
| Pitching_H | 3 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 1 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 14 |
| Pitching_R | 1 |
| Pitching_SO | 0 |
| Pitching_Strikes | 10 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 2 |
| allPositionsPlayed | P |
| gameID | 20260609_TEX@KC |
| game_type | full |
| mlbID | 656222 |
| playerID | 656222 |
| playerName | Jalen Beeks |
| pos | P |
| started | False |
| startingPosition | P |
| team | TEX |
| teamID | 28 |
| game_date | 2026-06-09 |
| sl_k_percent | 18.6 |
| sl_bb_percent | 7.1 |
| sl_woba | 0.354 |
| sl_xwoba | 0.363 |
| sl_sweet_spot_percent | 35.7 |
| sl_barrel_batted_rate | 10.7 |
| sl_hard_hit_percent | 42.9 |
| sl_whiff_percent | 23.4 |
| sl_swing_percent | 47.2 |
| sl_avg_best_speed | 79.2264155 |
| sl_avg_hyper_speed | 95.425185375 |
| Field | Value |
|---|---|
| Pitcher | Michael Wacha |
| Role | Starter |
| Projection Source | all_players_stats_recent_season_blend |
| Savant Quality Score | -0.1511 |
| ESPN Rank | 37 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | -0.1425 |
| Avg Velo | 87.1694 |
| Avg Spin | 1998.5905 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 6 |
| Pre ER | 2 |
| Pre H | 3 |
| Pre BB | 3 |
| Pre SO | 6 |
| Season ERA | 3.4444 |
| Season WHIP | 1.1358 |
| Role Avg IP | 6.2310 |
| Recent Avg IP | 5.9330 |
| Last Start IP | 5.2000 |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"opponent": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"edges": {
"quality_edge": -0.2764,
"offense_edge": -0.1535,
"opponent_offense_edge": -0.0791,
"defense_strength": -0.0355,
"opponent_defense_weakness": -0.1547,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.991,
"run_prevention": 1.0047,
"strikeout": 0.998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "608379",
"profile": {
"available": true,
"pitcher_id": "608379",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 250.0,
"k_percent": 20.5,
"bb_percent": 8.0,
"woba": 0.301,
"xwoba": 0.322,
"sweet_spot_percent": 34.6,
"barrel_batted_rate": 6.9,
"hard_hit_percent": 38.1,
"avg_best_speed": 78.2906,
"avg_hyper_speed": 93.7995,
"whiff_percent": 23.6,
"swing_percent": 48.1
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.0534,
"command_and_miss": -0.1914,
"regression_edge": -0.6,
"xwoba_edge": -0.2,
"barrel_edge": 0.0889,
"hard_hit_edge": 0.0429,
"whiff_edge": -0.2857,
"bb_edge": 0.25,
"pitch_design_score": -0.1425
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "608379",
"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": 87.16939598742678,
"release_spin_rate": 1998.590518669119,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 87.16939598742678,
"release_spin_rate": 1998.590518669119,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1694,
"release_spin_rate": 1998.5905,
"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.1425,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.0177,
"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.1511,
"sample_weight": 1.0,
"run_prevention_factor": 1.0128,
"strikeout_factor": 0.976,
"walk_factor": 0.98,
"homer_factor": 0.9972,
"woba_minus_xwoba": -0.021,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "608379",
"espn_id": 32640,
"player_name": "Michael Wacha",
"team": "KC",
"role": "pitcher",
"espn_rank": 37,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 37,
"gp_value": 13.0,
"gp_rank": 269,
"gs_value": 13.0,
"gs_rank": 34,
"qs_value": 9.0,
"qs_rank": 4,
"era_value": 3.4444,
"era_rank": 27.0,
"w_value": 4.0,
"w_rank": 56,
"l_value": 4.0,
"l_rank": 50,
"sv_value": 0.0,
"sv_rank": 168,
"hld_value": 0.0,
"hld_rank": 252,
"ip_value": 81.0,
"ip_rank": 8,
"h_value": 66.0,
"h_rank": 43,
"er_value": 31.0,
"er_rank": 61,
"hr_value": 9.0,
"hr_rank": 54,
"bb_value": 26.0,
"bb_rank": 33,
"k_value": 67.0,
"k_rank": 47,
"k_per_9_value": 7.4444447,
"k_per_9_rank": 158,
"whip_value": 1.1358,
"whip_rank": 27.0,
"war_value": 1.63,
"war_rank": 1.0
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 3.0,
"factor": 1.0128,
"adjusted": 3
},
"predicted_H": {
"original": 6.0,
"factor": 1.0128,
"adjusted": 6
},
"predicted_BB": {
"original": 2.0,
"factor": 0.98,
"adjusted": 2
},
"predicted_HR": {
"original": 1.0,
"factor": 0.9972,
"adjusted": 1
},
"predicted_SO": {
"original": 5.0,
"factor": 0.976,
"adjusted": 5
}
}
}
}{
"hitting": {
"AB": 0,
"H": 0,
"HR": 0,
"RBI": 0,
"R": 0,
"BB": 0,
"SO": 0,
"2B": 0,
"3B": 0,
"AVG": 0,
"OBP": 0,
"SLG": 0,
"OPS": 0,
"games_played": 0,
"hot_streak": false,
"cold_streak": true,
"trend": "stable"
},
"pitching": {
"IP": 60.0,
"ER": 30,
"H": 56,
"BB": 21,
"SO": 50,
"HR": 8,
"ERA": 4.499999999999999,
"WHIP": 1.2833333333333332,
"K9": 7.499999999999999,
"HR9": 1.2,
"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-05T00:00:00"
}{
"available": true,
"pitcher_id": "608379",
"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": 87.16939598742678,
"release_spin_rate": 1998.590518669119,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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": 87.16939598742678,
"release_spin_rate": 1998.590518669119,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1694,
"release_spin_rate": 1998.5905,
"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.1425,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": -1.0177,
"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": "608379",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 13,
"reference_playing_time": 6.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 29.2,
"ER": 16.0,
"R": 18.0,
"H": 32.0,
"BB": 9.0,
"SO": 25.0,
"HR": 4.0,
"BF": 126.0,
"Pitches": 444.0
},
"per_game": {
"IP": 6.0,
"ER": 3.2,
"R": 3.6,
"H": 6.4,
"BB": 1.8,
"SO": 5.0,
"HR": 0.8,
"BF": 25.2,
"Pitches": 88.8
},
"rates": {
"ERA": 4.8539,
"WHIP": 1.382,
"ER_per_IP": 0.53933,
"H_per_IP": 1.07865,
"BB_per_IP": 0.30337,
"SO_per_IP": 0.8427,
"HR_per_IP": 0.13483
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 60.0,
"ER": 30.0,
"R": 32.0,
"H": 56.0,
"BB": 21.0,
"SO": 50.0,
"HR": 8.0,
"BF": 253.0,
"Pitches": 903.0
},
"per_game": {
"IP": 6.0,
"ER": 3.0,
"R": 3.2,
"H": 5.6,
"BB": 2.1,
"SO": 5.0,
"HR": 0.8,
"BF": 25.3,
"Pitches": 90.3
},
"rates": {
"ERA": 4.5,
"WHIP": 1.2833,
"ER_per_IP": 0.5,
"H_per_IP": 0.93333,
"BB_per_IP": 0.35,
"SO_per_IP": 0.83333,
"HR_per_IP": 0.13333
}
},
"season": {
"games": 13,
"totals": {
"IP": 81.0,
"ER": 31.0,
"R": 33.0,
"H": 66.0,
"BB": 26.0,
"SO": 67.0,
"HR": 9.0,
"BF": 327.0,
"Pitches": 1173.0
},
"per_game": {
"IP": 6.1,
"ER": 2.3846,
"R": 2.5385,
"H": 5.0769,
"BB": 2.0,
"SO": 5.1538,
"HR": 0.6923,
"BF": 25.1538,
"Pitches": 90.2308
},
"rates": {
"ERA": 3.4444,
"WHIP": 1.1358,
"ER_per_IP": 0.38272,
"H_per_IP": 0.81481,
"BB_per_IP": 0.32099,
"SO_per_IP": 0.82716,
"HR_per_IP": 0.11111
}
}
},
"weighted_prediction": {
"predicted_IP": 6.0,
"predicted_ER": 2.975,
"predicted_H": 5.872,
"predicted_BB": 2.025,
"predicted_SO": 5.225,
"predicted_HR": 0.803,
"predicted_ERA": 4.4276,
"predicted_WHIP": 1.3056
}
}{
"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.0,
"form": 6.0,
"final": 6.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 2.0,
"form": 2.975,
"final": 2.5193,
"source": "model_form_blend"
},
"predicted_H": {
"model": 3.0,
"form": 5.872,
"final": 4.5297,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 3.0,
"form": 2.025,
"final": 2.4807,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 6.0,
"form": 5.225,
"final": 5.5872,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.803,
"final": 0.4277,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 4.4276,
"final": 4.4276,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.3056,
"final": 1.3056,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Alex Lange |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1783 |
| ESPN Rank | 275 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 2 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 4.0645 |
| Season WHIP | 1.4516 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"opponent": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"edges": {
"quality_edge": -0.2764,
"offense_edge": -0.1535,
"opponent_offense_edge": -0.0791,
"defense_strength": -0.0355,
"opponent_defense_weakness": -0.1547,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.991,
"run_prevention": 1.0047,
"strikeout": 0.998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "656638",
"profile": {
"available": true,
"pitcher_id": "656638",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 99.0,
"k_percent": 25.2,
"bb_percent": 13.3,
"woba": 0.337,
"xwoba": 0.338,
"sweet_spot_percent": 37.5,
"barrel_batted_rate": 13.8,
"hard_hit_percent": 42.5,
"avg_best_speed": 80.327,
"avg_hyper_speed": 95.1792,
"whiff_percent": 31.7,
"swing_percent": 45.2
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.8188,
"command_and_miss": 0.2507,
"regression_edge": -0.0286,
"xwoba_edge": -0.6571,
"barrel_edge": -1.4444,
"hard_hit_edge": -0.5857,
"whiff_edge": 0.8714,
"bb_edge": -1.075,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "656638",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": -0.1783,
"sample_weight": 0.45,
"run_prevention_factor": 1.0152,
"strikeout_factor": 1.0221,
"walk_factor": 1.0387,
"homer_factor": 1.0714,
"woba_minus_xwoba": -0.001,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "656638",
"espn_id": 40976,
"player_name": "Alex Lange",
"team": "KC",
"role": "pitcher",
"espn_rank": 275,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 275,
"gp_value": 29.0,
"gp_rank": 43,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 4.0645,
"era_rank": null,
"w_value": 0.0,
"w_rank": 391,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 4.0,
"sv_rank": 29,
"hld_value": 1.0,
"hld_rank": 192,
"ip_value": 31.0,
"ip_rank": 199,
"h_value": 27.0,
"h_rank": 213,
"er_value": 14.0,
"er_rank": 203,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 18.0,
"bb_rank": 123,
"k_value": 34.0,
"k_rank": 182,
"k_per_9_value": 9.870968,
"k_per_9_rank": 24,
"whip_value": 1.4516,
"whip_rank": null,
"war_value": 0.17,
"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.0174,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0321,
"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": 9.1,
"ER": 1,
"H": 8,
"BB": 5,
"SO": 12,
"HR": 0,
"ERA": 0.9642857142857142,
"WHIP": 1.3928571428571428,
"K9": 11.571428571428571,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "656638",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.124,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5505,
"prior_weight": 0.4495
},
"role": "pitcher",
"player_id": "656638",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 29,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 5.0,
"ER": 1.0,
"R": 2.0,
"H": 5.0,
"BB": 5.0,
"SO": 8.0,
"HR": 0.0,
"BF": 26.0,
"Pitches": 123.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.4,
"H": 1.0,
"BB": 1.0,
"SO": 1.6,
"HR": 0.0,
"BF": 5.2,
"Pitches": 24.6
},
"rates": {
"ERA": 1.8,
"WHIP": 2.0,
"ER_per_IP": 0.2,
"H_per_IP": 1.0,
"BB_per_IP": 1.0,
"SO_per_IP": 1.6,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.1,
"ER": 1.0,
"R": 2.0,
"H": 8.0,
"BB": 5.0,
"SO": 12.0,
"HR": 0.0,
"BF": 41.0,
"Pitches": 189.0
},
"per_game": {
"IP": 1.0,
"ER": 0.1,
"R": 0.2,
"H": 0.8,
"BB": 0.5,
"SO": 1.2,
"HR": 0.0,
"BF": 4.1,
"Pitches": 18.9
},
"rates": {
"ERA": 0.9643,
"WHIP": 1.3929,
"ER_per_IP": 0.10714,
"H_per_IP": 0.85714,
"BB_per_IP": 0.53571,
"SO_per_IP": 1.28571,
"HR_per_IP": 0.0
}
},
"season": {
"games": 29,
"totals": {
"IP": 31.0,
"ER": 14.0,
"R": 16.0,
"H": 27.0,
"BB": 18.0,
"SO": 34.0,
"HR": 2.0,
"BF": 135.0,
"Pitches": 573.0
},
"per_game": {
"IP": 1.0,
"ER": 0.4828,
"R": 0.5517,
"H": 0.931,
"BB": 0.6207,
"SO": 1.1724,
"HR": 0.069,
"BF": 4.6552,
"Pitches": 19.7586
},
"rates": {
"ERA": 4.0645,
"WHIP": 1.4516,
"ER_per_IP": 0.45161,
"H_per_IP": 0.87097,
"BB_per_IP": 0.58065,
"SO_per_IP": 1.09677,
"HR_per_IP": 0.06452
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.338,
"predicted_H": 0.94,
"predicted_BB": 0.579,
"predicted_SO": 1.185,
"predicted_HR": 0.07,
"predicted_ERA": 3.0455,
"predicted_WHIP": 1.5192
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5399,
"form_weight": 0.4601,
"form_reliability": 0.5505,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 6.124,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5505,
"prior_weight": 0.4495
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.338,
"final": 0.1555,
"source": "model_form_blend"
},
"predicted_H": {
"model": 2.0,
"form": 0.94,
"final": 1.5123,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.579,
"final": 0.8063,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 1.185,
"final": 0.5452,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 1.0,
"form": 0.07,
"final": 0.5721,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0455,
"final": 3.0455,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.5192,
"final": 1.5192,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Daniel Lynch IV |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | 0.2879 |
| ESPN Rank | 108 |
| Movement Available | False |
| Primary Pitch | - |
| Movement Score | - |
| Avg Velo | - |
| Avg Spin | - |
| HB Inches | - |
| IVB Inches | - |
| Release Extension | - |
| Pre IP | 1 |
| Pre ER | 0 |
| Pre H | 1 |
| Pre BB | 1 |
| Pre SO | 0 |
| Season ERA | 1.9286 |
| Season WHIP | 0.9643 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"opponent": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"edges": {
"quality_edge": -0.2764,
"offense_edge": -0.1535,
"opponent_offense_edge": -0.0791,
"defense_strength": -0.0355,
"opponent_defense_weakness": -0.1547,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.991,
"run_prevention": 1.0047,
"strikeout": 0.998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "663738",
"profile": {
"available": true,
"pitcher_id": "663738",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 85.0,
"k_percent": 25.4,
"bb_percent": 7.9,
"woba": 0.249,
"xwoba": 0.269,
"sweet_spot_percent": 32.4,
"barrel_batted_rate": 5.4,
"hard_hit_percent": 36.5,
"avg_best_speed": 74.9833,
"avg_hyper_speed": 93.8966,
"whiff_percent": 32.9,
"swing_percent": 47.3
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": 0.9689,
"command_and_miss": 0.5936,
"regression_edge": -0.5714,
"xwoba_edge": 1.3143,
"barrel_edge": 0.4222,
"hard_hit_edge": 0.2714,
"whiff_edge": 1.0429,
"bb_edge": 0.275,
"pitch_design_score": 0.0
},
"pitch_movement_profile": {
"available": false,
"pitcher_id": "663738",
"reason": "pitcher_movement_profile_has_no_pitches"
},
"quality_score": 0.2879,
"sample_weight": 0.45,
"run_prevention_factor": 0.9755,
"strikeout_factor": 1.0257,
"walk_factor": 0.9901,
"homer_factor": 0.9622,
"woba_minus_xwoba": -0.02,
"regression_flag": "neutral",
"espn_rank": {
"available": true,
"player_id": "663738",
"espn_id": 41227,
"player_name": "Daniel Lynch IV",
"team": "KC",
"role": "pitcher",
"espn_rank": 108,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 108,
"gp_value": 28.0,
"gp_rank": 62,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 1.9285,
"era_rank": null,
"w_value": 2.0,
"w_rank": 167,
"l_value": 0.0,
"l_rank": 419,
"sv_value": 1.0,
"sv_rank": 79,
"hld_value": 8.0,
"hld_rank": 33,
"ip_value": 28.0,
"ip_rank": 251,
"h_value": 18.0,
"h_rank": 339,
"er_value": 6.0,
"er_rank": 444,
"hr_value": 1.0,
"hr_rank": 420,
"bb_value": 9.0,
"bb_rank": 315,
"k_value": 29.0,
"k_rank": 236,
"k_per_9_value": 9.321428,
"k_per_9_rank": 25,
"whip_value": 0.9642,
"whip_rank": null,
"war_value": 0.87,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 0.0,
"factor": 0.989,
"adjusted": 0
},
"predicted_H": {
"original": 0.0,
"factor": 0.989,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 0.9955,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 0.983,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 1.0116,
"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": 9,
"BB": 3,
"SO": 4,
"HR": 0,
"ERA": 1.8620689655172415,
"WHIP": 1.2413793103448276,
"K9": 3.724137931034483,
"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-10T00:00:00"
}{
"available": false,
"pitcher_id": "663738",
"reason": "pitcher_movement_profile_has_no_pitches"
}{
"method": "weighted_recent_form",
"description": "Recent form with overlapping-window de-duplication and Bayesian league-prior shrinkage for small samples",
"weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"effective_weights": {
"last_5": 0.45,
"last_10": 0.35,
"season": 0.2
},
"shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.531,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5252,
"prior_weight": 0.4748
},
"role": "pitcher",
"player_id": "663738",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 28,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.2,
"ER": 1.0,
"R": 1.0,
"H": 3.0,
"BB": 1.0,
"SO": 2.0,
"HR": 0.0,
"BF": 18.0,
"Pitches": 69.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.6,
"BB": 0.2,
"SO": 0.4,
"HR": 0.0,
"BF": 3.6,
"Pitches": 13.8
},
"rates": {
"ERA": 1.9286,
"WHIP": 0.8571,
"ER_per_IP": 0.21429,
"H_per_IP": 0.64286,
"BB_per_IP": 0.21429,
"SO_per_IP": 0.42857,
"HR_per_IP": 0.0
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.2,
"ER": 2.0,
"R": 2.0,
"H": 9.0,
"BB": 3.0,
"SO": 4.0,
"HR": 0.0,
"BF": 41.0,
"Pitches": 155.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2,
"R": 0.2,
"H": 0.9,
"BB": 0.3,
"SO": 0.4,
"HR": 0.0,
"BF": 4.1,
"Pitches": 15.5
},
"rates": {
"ERA": 1.8621,
"WHIP": 1.2414,
"ER_per_IP": 0.2069,
"H_per_IP": 0.93103,
"BB_per_IP": 0.31034,
"SO_per_IP": 0.41379,
"HR_per_IP": 0.0
}
},
"season": {
"games": 28,
"totals": {
"IP": 28.0,
"ER": 6.0,
"R": 9.0,
"H": 18.0,
"BB": 9.0,
"SO": 29.0,
"HR": 1.0,
"BF": 114.0,
"Pitches": 438.0
},
"per_game": {
"IP": 1.0,
"ER": 0.2143,
"R": 0.3214,
"H": 0.6429,
"BB": 0.3214,
"SO": 1.0357,
"HR": 0.0357,
"BF": 4.0714,
"Pitches": 15.6429
},
"rates": {
"ERA": 1.9286,
"WHIP": 0.9643,
"ER_per_IP": 0.21429,
"H_per_IP": 0.64286,
"BB_per_IP": 0.32143,
"SO_per_IP": 1.03571,
"HR_per_IP": 0.03571
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.342,
"predicted_H": 0.846,
"predicted_BB": 0.315,
"predicted_SO": 0.73,
"predicted_HR": 0.071,
"predicted_ERA": 3.0776,
"predicted_WHIP": 1.1611
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5506,
"form_weight": 0.4494,
"form_reliability": 0.5252,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 5.531,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.5252,
"prior_weight": 0.4748
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 0.0,
"form": 0.342,
"final": 0.1537,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 0.846,
"final": 0.9308,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 1.0,
"form": 0.315,
"final": 0.6922,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 0.0,
"form": 0.73,
"final": 0.3281,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.071,
"final": 0.0319,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 3.0776,
"final": 3.0776,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.1611,
"final": 1.1611,
"source": "form_only"
}
}
}{
"available": false,
"reason": "No per-inning pitch ledger was stored by the simulation.",
"display_fallback": "Use player_form_blend windows for recent workload and pitch count."
}| Field | Value |
|---|---|
| Pitcher | Lucas Erceg |
| Role | Middle Reliever |
| Projection Source | - |
| Savant Quality Score | -0.1245 |
| ESPN Rank | 658 |
| Movement Available | True |
| Primary Pitch | - |
| Movement Score | 0.1348 |
| Avg Velo | 92.1201 |
| Avg Spin | 1981.6520 |
| HB Inches | 0 |
| IVB Inches | 0 |
| Release Extension | 0 |
| Pre IP | 1 |
| Pre ER | 1 |
| Pre H | 1 |
| Pre BB | 0 |
| Pre SO | 2 |
| Season ERA | 5.1781 |
| Season WHIP | 1.8082 |
| Role Avg IP | - |
| Recent Avg IP | - |
| Last Start IP | - |
{
"method": "team_form_snapshot",
"role": "pitcher",
"team": {
"team": "KC",
"games": 76,
"wins": 29,
"losses": 47,
"win_pct": 0.3816,
"runs_scored": 289.0,
"runs_allowed": 354.0,
"run_differential": -65.0,
"run_differential_per_game": -0.8553,
"avg_runs_scored": 3.8026,
"avg_runs_allowed": 4.6579,
"offense_index": 0.8465,
"defense_index": 0.9645,
"current_streak": "L1",
"recent": {
"games": 10,
"wins": 6,
"losses": 4,
"win_pct": 0.6,
"avg_runs_scored": 4.9,
"avg_runs_allowed": 4.1,
"run_differential": 8.0
},
"available": true,
"quality_score": -0.1704
},
"opponent": {
"team": "TEX",
"games": 73,
"wins": 37,
"losses": 36,
"win_pct": 0.5068,
"runs_scored": 302.0,
"runs_allowed": 284.0,
"run_differential": 18.0,
"run_differential_per_game": 0.2466,
"avg_runs_scored": 4.137,
"avg_runs_allowed": 3.8904,
"offense_index": 0.9209,
"defense_index": 1.1547,
"current_streak": "W1",
"recent": {
"games": 10,
"wins": 7,
"losses": 3,
"win_pct": 0.7,
"avg_runs_scored": 4.7,
"avg_runs_allowed": 3.6,
"run_differential": 11.0
},
"available": true,
"quality_score": 0.106
},
"edges": {
"quality_edge": -0.2764,
"offense_edge": -0.1535,
"opponent_offense_edge": -0.0791,
"defense_strength": -0.0355,
"opponent_defense_weakness": -0.1547,
"recent_win_pct_edge": -0.1
},
"player_factors": {
"ip": 0.991,
"run_prevention": 1.0047,
"strikeout": 0.998
},
"savant_pitcher_quality_adjustment": {
"applied": true,
"pitcher_id": "668674",
"profile": {
"available": true,
"pitcher_id": "668674",
"player_name": "",
"source": "all_players_stats.csv embedded Savant pitcher features",
"source_url": null,
"metrics": {
"pa": 93.0,
"k_percent": 19.0,
"bb_percent": 15.5,
"woba": 0.401,
"xwoba": 0.333,
"sweet_spot_percent": 33.3,
"barrel_batted_rate": 6.7,
"hard_hit_percent": 38.7,
"avg_best_speed": 73.8737,
"avg_hyper_speed": 94.2015,
"whiff_percent": 21.9,
"swing_percent": 45.8
},
"league_medians": {
"pa": 71.0,
"k_percent": 22.7,
"bb_percent": 9.0,
"woba": 0.309,
"xwoba": 0.315,
"sweet_spot_percent": 32.9,
"barrel_batted_rate": 7.3,
"hard_hit_percent": 38.4,
"avg_best_speed": 77.7922,
"avg_hyper_speed": 94.017,
"whiff_percent": 25.6,
"swing_percent": 47.1
},
"components": {
"contact_quality": -0.5131,
"command_and_miss": -0.7479,
"regression_edge": 1.9429,
"xwoba_edge": -0.5143,
"barrel_edge": 0.1333,
"hard_hit_edge": -0.0429,
"whiff_edge": -0.5286,
"bb_edge": -1.625,
"pitch_design_score": 0.1348
},
"pitch_movement_profile": {
"available": true,
"pitcher_id": "668674",
"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.12014511342626,
"release_spin_rate": 1981.652014047624,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.12014511342626,
"release_spin_rate": 1981.652014047624,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1201,
"release_spin_rate": 1981.652,
"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.1348,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9626,
"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.1245,
"sample_weight": 0.45,
"run_prevention_factor": 1.0106,
"strikeout_factor": 0.981,
"walk_factor": 1.0585,
"homer_factor": 1.0029,
"woba_minus_xwoba": 0.068,
"regression_flag": "positive_pitcher_regression",
"espn_rank": {
"available": true,
"player_id": "668674",
"espn_id": 36618,
"player_name": "Lucas Erceg",
"team": "KC",
"role": "pitcher",
"espn_rank": 658,
"espn_total_ranked": 687,
"metrics": {
"espn_rank": 658,
"gp_value": 27.0,
"gp_rank": 75,
"gs_value": 0.0,
"gs_rank": 279,
"qs_value": 0.0,
"qs_rank": 173,
"era_value": 6.2876,
"era_rank": null,
"w_value": 3.0,
"w_rank": 92,
"l_value": 3.0,
"l_rank": 94,
"sv_value": 12.0,
"sv_rank": 10,
"hld_value": 2.0,
"hld_rank": 162,
"ip_value": 24.1,
"ip_rank": 306,
"h_value": 31.0,
"h_rank": 175,
"er_value": 17.0,
"er_rank": 165,
"hr_value": 2.0,
"hr_rank": 300,
"bb_value": 18.0,
"bb_rank": 123,
"k_value": 22.0,
"k_rank": 310,
"k_per_9_value": 8.136987,
"k_per_9_rank": 27,
"whip_value": 2.0136,
"whip_rank": null,
"war_value": -0.65,
"war_rank": null
},
"source": "espn_statistics_byathlete"
}
},
"adjusted_fields": {
"predicted_ER": {
"original": 1.0,
"factor": 1.0048,
"adjusted": 1
},
"predicted_H": {
"original": 0.0,
"factor": 1.0048,
"adjusted": 0
},
"predicted_BB": {
"original": 0.0,
"factor": 1.0263,
"adjusted": 0
},
"predicted_HR": {
"original": 0.0,
"factor": 1.0013,
"adjusted": 0
},
"predicted_SO": {
"original": 2.0,
"factor": 0.9914,
"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": 8,
"H": 15,
"BB": 6,
"SO": 8,
"HR": 1,
"ERA": 9.0,
"WHIP": 2.625,
"K9": 9.0,
"HR9": 1.125,
"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-10T00:00:00"
}{
"available": true,
"pitcher_id": "668674",
"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.12014511342626,
"release_spin_rate": 1981.652014047624,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.12014511342626,
"release_spin_rate": 1981.652014047624,
"spin_axis": null,
"horizontal_break_inches": 0.0,
"induced_vertical_break_inches": 0.0,
"vertical_break_with_gravity_inches": null,
"release_pos_x": null,
"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.1201,
"release_spin_rate": 1981.652,
"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.1348,
"horizontal_break_edge": 0.0,
"induced_vertical_break_edge": 0.0,
"extension_edge": 0.0,
"velocity_edge": 0.9626,
"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.807,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4902,
"prior_weight": 0.5098
},
"role": "pitcher",
"player_id": "668674",
"report_date": "20260611_T",
"season_year": 2026,
"rows_used": 26,
"reference_playing_time": 1.0,
"windows": {
"last_5": {
"games": 5,
"totals": {
"IP": 4.0,
"ER": 4.0,
"R": 4.0,
"H": 7.0,
"BB": 5.0,
"SO": 4.0,
"HR": 1.0,
"BF": 24.0,
"Pitches": 84.0
},
"per_game": {
"IP": 0.2,
"ER": 0.8,
"R": 0.8,
"H": 1.4,
"BB": 1.0,
"SO": 0.8,
"HR": 0.2,
"BF": 4.8,
"Pitches": 16.8
},
"rates": {
"ERA": 9.0,
"WHIP": 3.0,
"ER_per_IP": 1.0,
"H_per_IP": 1.75,
"BB_per_IP": 1.25,
"SO_per_IP": 1.0,
"HR_per_IP": 0.25
}
},
"last_10": {
"games": 10,
"totals": {
"IP": 9.0,
"ER": 8.0,
"R": 9.0,
"H": 16.0,
"BB": 7.0,
"SO": 8.0,
"HR": 1.0,
"BF": 49.0,
"Pitches": 179.0
},
"per_game": {
"IP": 1.0,
"ER": 0.8,
"R": 0.9,
"H": 1.6,
"BB": 0.7,
"SO": 0.8,
"HR": 0.1,
"BF": 4.9,
"Pitches": 17.9
},
"rates": {
"ERA": 8.0,
"WHIP": 2.5556,
"ER_per_IP": 0.88889,
"H_per_IP": 1.77778,
"BB_per_IP": 0.77778,
"SO_per_IP": 0.88889,
"HR_per_IP": 0.11111
}
},
"season": {
"games": 26,
"totals": {
"IP": 24.1,
"ER": 14.0,
"R": 16.0,
"H": 26.0,
"BB": 18.0,
"SO": 22.0,
"HR": 1.0,
"BF": 111.0,
"Pitches": 452.0
},
"per_game": {
"IP": 1.0,
"ER": 0.5385,
"R": 0.6154,
"H": 1.0,
"BB": 0.6923,
"SO": 0.8462,
"HR": 0.0385,
"BF": 4.2692,
"Pitches": 17.3846
},
"rates": {
"ERA": 5.1781,
"WHIP": 1.8082,
"ER_per_IP": 0.57534,
"H_per_IP": 1.06849,
"BB_per_IP": 0.73973,
"SO_per_IP": 0.90411,
"HR_per_IP": 0.0411
}
}
},
"weighted_prediction": {
"predicted_IP": 1.0,
"predicted_ER": 0.627,
"predicted_H": 1.191,
"predicted_BB": 0.619,
"predicted_SO": 0.87,
"predicted_HR": 0.139,
"predicted_ERA": 6.0956,
"predicted_WHIP": 1.9529
}
}{
"requested_model_weight": 0.35,
"requested_form_weight": 0.65,
"model_weight": 0.5654,
"form_weight": 0.4346,
"form_reliability": 0.4902,
"form_shrinkage": {
"method": "bayesian_league_prior",
"sample_size": 4.807,
"sample_unit": "starter_equivalent_games",
"prior_size": 5.0,
"data_weight": 0.4902,
"prior_weight": 0.5098
},
"applied_metrics": {
"predicted_IP": {
"model": 1.0,
"form": 1.0,
"final": 1.0,
"source": "model_form_blend"
},
"predicted_ER": {
"model": 1.0,
"form": 0.627,
"final": 0.8379,
"source": "model_form_blend"
},
"predicted_H": {
"model": 1.0,
"form": 1.191,
"final": 1.083,
"source": "model_form_blend"
},
"predicted_BB": {
"model": 0.0,
"form": 0.619,
"final": 0.269,
"source": "model_form_blend"
},
"predicted_SO": {
"model": 2.0,
"form": 0.87,
"final": 1.5089,
"source": "model_form_blend"
},
"predicted_HR": {
"model": 0.0,
"form": 0.139,
"final": 0.0604,
"source": "model_form_blend"
},
"predicted_ERA": {
"model": null,
"form": 6.0956,
"final": 6.0956,
"source": "form_only"
},
"predicted_WHIP": {
"model": null,
"form": 1.9529,
"final": 1.9529,
"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.121 | 1.000 | 0.000 | Hitting_2B | 0.121 | 0.000 | 0.879 | 1.000 |
| predicted_3B | 0.038 | 0.000 | 0.000 | Hitting_3B | 0.038 | 0.000 | -0.038 | 0.000 |
| predicted_AB | 4.190 | 4.000 | 7.000 | Hitting_AB | 3.774 | 4.000 | 0.226 | 0.000 |
| predicted_AVG | 0.237 | 0.250 | 0.286 | Hitting_AVG | 0.200 | 0.250 | 0.050 | 0.000 |
| predicted_BB | 0.531 | 0.000 | 1.000 | Hitting_BB | 0.531 | 1.000 | -0.531 | -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.753 | 1.000 | 0.247 | 0.000 |
| predicted_HR | 0.110 | 0.000 | 0.000 | Hitting_HR | 0.100 | 0.000 | -0.100 | 0.000 |
| predicted_OBP | 0.321 | 0.250 | 0.375 | Hitting_OBP | 0.296 | 0.400 | -0.046 | -0.150 |
| predicted_R | 0.448 | 0.000 | 1.000 | Hitting_R | 0.448 | 1.000 | -0.448 | -1.000 |
| predicted_RBI | 0.490 | 0.000 | 1.000 | Hitting_RBI | 0.469 | 0.000 | -0.469 | 0.000 |
| predicted_SLG | 0.396 | 0.500 | 0.286 | Hitting_SLG | 0.331 | 0.250 | 0.169 | 0.250 |
| predicted_SO | 0.795 | 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 | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_2B: 0.1210 -> 1.0000 (boost 0.8790, better) |
| Biggest Deboost | predicted_BB: 0.5310 -> 0.0000 (deboost -0.5310, 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.1900 -> 6.7232 (boost 2.5332, better) | predicted_SLG: 0.3960 -> 0.3892 (deboost -0.0068, 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 | 0 | 6 | 0 | 6 | - | predicted_H: 1.6152 -> 1.5477 (deboost -0.0675, 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.5477 -> 2.0000 (boost 0.4523, better) | predicted_2B: 0.3446 -> 0.0000 (deboost -0.3446, worse) | AB rounded to 7 (raw=6.72), rates preserved: AVG=0.230 HR/AB=0.022 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.8405 -> 1.0000 (boost 0.1595, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3101 -> 0.3750 (boost 0.0649, better) | predicted_SLG: 0.3608 -> 0.2860 (deboost -0.0748, 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: 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.3608 (boost 0.0748, better) | predicted_OBP: 0.3750 -> 0.3101 (deboost -0.0649, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686469",
"player_name": "Vinnie Pasquantino",
"position": "1B",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.121,
"predicted_3B": 0.038,
"predicted_AB": 4.19,
"predicted_AVG": 0.237,
"predicted_BB": 0.531,
"predicted_H": 0.99,
"predicted_HR": 0.11,
"predicted_OBP": 0.321,
"predicted_R": 0.448,
"predicted_RBI": 0.49,
"predicted_SLG": 0.396,
"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.3446,
"predicted_3B": 0.0473,
"predicted_AB": 6.7232,
"predicted_AVG": 0.2394,
"predicted_BB": 0.7895,
"predicted_H": 1.6152,
"predicted_HBP": 0.028,
"predicted_HR": 0.1537,
"predicted_OBP": 0.32,
"predicted_R": 0.904,
"predicted_RBI": 0.794,
"predicted_SLG": 0.3892,
"predicted_SO": 1.2165
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.121,
"after": 0.3446,
"delta": 0.2236,
"percent_delta": 1.8479,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.038,
"after": 0.0473,
"delta": 0.0093,
"percent_delta": 0.2447,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.19,
"after": 6.7232,
"delta": 2.5332,
"percent_delta": 0.6046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2394,
"delta": 0.0024,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.531,
"after": 0.7895,
"delta": 0.2585,
"percent_delta": 0.4868,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.6152,
"delta": 0.6252,
"percent_delta": 0.6315,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.1537,
"delta": 0.0437,
"percent_delta": 0.3973,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.32,
"delta": -0.001,
"percent_delta": -0.0031,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.448,
"after": 0.904,
"delta": 0.456,
"percent_delta": 1.0179,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.49,
"after": 0.794,
"delta": 0.304,
"percent_delta": 0.6204,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.396,
"after": 0.3892,
"delta": -0.0068,
"percent_delta": -0.0172,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.795,
"after": 1.2165,
"delta": 0.4215,
"percent_delta": 0.5302,
"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.19,
"after": 6.7232,
"delta": 2.5332,
"percent_delta": 0.6046,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.396,
"after": 0.3892,
"delta": -0.0068,
"percent_delta": -0.0172,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 64
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3446,
"predicted_3B": 0.0473,
"predicted_AB": 6.7232,
"predicted_AVG": 0.2302,
"predicted_BB": 0.7781,
"predicted_H": 1.5477,
"predicted_HBP": 0.028,
"predicted_HR": 0.1464,
"predicted_OBP": 0.3101,
"predicted_R": 0.8405,
"predicted_RBI": 0.7383,
"predicted_SLG": 0.3608,
"predicted_SO": 1.234
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3446,
"after": 0.3446,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0473,
"after": 0.0473,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.7232,
"after": 6.7232,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2394,
"after": 0.2302,
"delta": -0.0092,
"percent_delta": -0.0384,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7895,
"after": 0.7781,
"delta": -0.0114,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.6152,
"after": 1.5477,
"delta": -0.0675,
"percent_delta": -0.0418,
"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.1537,
"after": 0.1464,
"delta": -0.0073,
"percent_delta": -0.0475,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.32,
"after": 0.3101,
"delta": -0.0099,
"percent_delta": -0.0309,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.904,
"after": 0.8405,
"delta": -0.0635,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.794,
"after": 0.7383,
"delta": -0.0557,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3892,
"after": 0.3608,
"delta": -0.0284,
"percent_delta": -0.073,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.2165,
"after": 1.234,
"delta": 0.0175,
"percent_delta": 0.0144,
"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.6152,
"after": 1.5477,
"delta": -0.0675,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=6.72), 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.3446,
"after": 0.0,
"delta": -0.3446,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0473,
"after": 0.0,
"delta": -0.0473,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 6.7232,
"after": 7.0,
"delta": 0.2768,
"percent_delta": 0.0412,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.7781,
"after": 1.0,
"delta": 0.2219,
"percent_delta": 0.2852,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.5477,
"after": 2.0,
"delta": 0.4523,
"percent_delta": 0.2922,
"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.1464,
"after": 0.0,
"delta": -0.1464,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.7383,
"after": 1.0,
"delta": 0.2617,
"percent_delta": 0.3545,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.234,
"after": 1.0,
"delta": -0.234,
"percent_delta": -0.1896,
"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.5477,
"after": 2.0,
"delta": 0.4523,
"percent_delta": 0.2922,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3446,
"after": 0.0,
"delta": -0.3446,
"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.8405,
"after": 1.0,
"delta": 0.1595,
"percent_delta": 0.1898,
"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.8405,
"after": 1.0,
"delta": 0.1595,
"percent_delta": 0.1898,
"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.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.3101,
"after": 0.375,
"delta": 0.0649,
"percent_delta": 0.2093,
"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.3608,
"after": 0.286,
"delta": -0.0748,
"percent_delta": -0.2073,
"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.3101,
"after": 0.375,
"delta": 0.0649,
"percent_delta": 0.2093,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3608,
"after": 0.286,
"delta": -0.0748,
"percent_delta": -0.2073,
"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": 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": 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": 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.2302,
"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.3101,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3608,
"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.286,
"after": 0.2302,
"delta": -0.0558,
"percent_delta": -0.1951,
"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.3101,
"delta": -0.0649,
"percent_delta": -0.1732,
"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.3608,
"delta": 0.0748,
"percent_delta": 0.2617,
"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.3608,
"delta": 0.0748,
"percent_delta": 0.2617,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3101,
"delta": -0.0649,
"percent_delta": -0.1732,
"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.121,
"after": 1.0,
"delta": 0.879,
"percent_delta": 7.2645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.038,
"after": 0.0,
"delta": -0.038,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.19,
"after": 4.0,
"delta": -0.19,
"percent_delta": -0.0453,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.237,
"after": 0.2302,
"delta": -0.0068,
"percent_delta": -0.0287,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.531,
"after": 0.0,
"delta": -0.531,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.99,
"after": 1.0,
"delta": 0.01,
"percent_delta": 0.0101,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.11,
"after": 0.0,
"delta": -0.11,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.321,
"after": 0.3101,
"delta": -0.0109,
"percent_delta": -0.034,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.448,
"after": 0.0,
"delta": -0.448,
"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.396,
"after": 0.3608,
"delta": -0.0352,
"percent_delta": -0.0889,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.795,
"after": 1.0,
"delta": 0.205,
"percent_delta": 0.2579,
"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_2B",
"before": 0.121,
"after": 1.0,
"delta": 0.879,
"percent_delta": 7.2645,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.531,
"after": 0.0,
"delta": -0.531,
"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.121 | - |
| predicted_3B | 0.038 | - |
| predicted_AB | 4.190 | - |
| predicted_AVG | 0.237 | - |
| predicted_BB | 0.531 | - |
| predicted_H | 0.990 | - |
| predicted_HR | 0.110 | - |
| predicted_OBP | 0.321 | - |
| predicted_R | 0.448 | - |
| predicted_RBI | 0.490 | - |
| predicted_SLG | 0.396 | - |
| 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.345 | 0.224 |
| predicted_3B | 0.047 | 0.009 |
| predicted_AB | 6.723 | 2.533 |
| predicted_AVG | 0.239 | 0.002 |
| predicted_BB | 0.789 | 0.258 |
| predicted_H | 1.615 | 0.625 |
| predicted_HBP | 0.028 | - |
| predicted_HR | 0.154 | 0.044 |
| predicted_OBP | 0.320 | -0.001 |
| predicted_R | 0.904 | 0.456 |
| predicted_RBI | 0.794 | 0.304 |
| predicted_SLG | 0.389 | -0.007 |
| predicted_SO | 1.216 | 0.421 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.345 | 0.000 |
| predicted_3B | 0.047 | 0.000 |
| predicted_AB | 6.723 | 0.000 |
| predicted_AVG | 0.230 | -0.009 |
| predicted_BB | 0.778 | -0.011 |
| predicted_H | 1.548 | -0.067 |
| predicted_HBP | 0.028 | 0.000 |
| predicted_HR | 0.146 | -0.007 |
| predicted_OBP | 0.310 | -0.010 |
| predicted_R | 0.841 | -0.064 |
| predicted_RBI | 0.738 | -0.056 |
| predicted_SLG | 0.361 | -0.028 |
| predicted_SO | 1.234 | 0.018 |
AB rounded to 7 (raw=6.72), 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.345 |
| predicted_3B | 0.000 | -0.047 |
| predicted_AB | 7.000 | 0.277 |
| predicted_AVG | 0.286 | 0.056 |
| predicted_BB | 1.000 | 0.222 |
| predicted_H | 2.000 | 0.452 |
| predicted_HR | 0.000 | -0.146 |
| predicted_OBP | 0.375 | 0.065 |
| predicted_R | 1.000 | 0.159 |
| predicted_RBI | 1.000 | 0.262 |
| predicted_SLG | 0.286 | -0.075 |
| predicted_SO | 1.000 | -0.234 |
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 | 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 | 7.000 | 3.000 | 0.000 | 0.000 | 2.000 | 5.000 | 1.000 | 2.000 | 0.3500 | 0.3810 | 0.5000 | 0.3500 | 0.0000 | 0.1000 | 0.0500 | 0.1000 |
| last_10 | 0.20 | 10 | - | 42.000 | 11.000 | 3.000 | 0.000 | 1.000 | 5.000 | 6.000 | 4.000 | 6.000 | 0.2619 | 0.3261 | 0.4048 | 0.2619 | 0.0238 | 0.1191 | 0.0952 | 0.1429 |
| season | 0.60 | 64 | - | 902.000 | 180.000 | 29.000 | 9.000 | 24.000 | 112.000 | 107.000 | 127.000 | 190.000 | 0.1996 | 0.2959 | 0.3315 | 0.1996 | 0.0266 | 0.1242 | 0.1408 | 0.2106 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6270 |
| predicted_3B | 0.0590 |
| predicted_AB | 9.9230 |
| predicted_AVG | 0.2424 |
| predicted_BB | 1.1160 |
| predicted_H | 2.4050 |
| predicted_HBP | 0.0280 |
| predicted_HR | 0.2090 |
| predicted_OBP | 0.3188 |
| predicted_R | 1.4800 |
| predicted_RBI | 1.1780 |
| predicted_SLG | 0.3807 |
| predicted_SO | 1.7490 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1210 | 0.6270 | 0.3446 | model_form_blend |
| predicted_3B | 0.0380 | 0.0590 | 0.0473 | model_form_blend |
| predicted_AB | 4.1900 | 9.9230 | 6.7232 | model_form_blend |
| predicted_AVG | 0.2370 | 0.2424 | 0.2394 | model_form_blend |
| predicted_BB | 0.5310 | 1.1160 | 0.7895 | model_form_blend |
| predicted_H | 0.9900 | 2.4050 | 1.6152 | model_form_blend |
| predicted_HBP | - | 0.0280 | 0.0280 | form_only |
| predicted_HR | 0.1100 | 0.2090 | 0.1537 | model_form_blend |
| predicted_OBP | 0.3210 | 0.3188 | 0.3200 | model_form_blend |
| predicted_R | 0.4480 | 1.4800 | 0.9040 | model_form_blend |
| predicted_RBI | 0.4900 | 1.1780 | 0.7940 | model_form_blend |
| predicted_SLG | 0.3960 | 0.3807 | 0.3892 | model_form_blend |
| predicted_SO | 0.7950 | 1.7490 | 1.2165 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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.2 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 1 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 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 | 1B |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 686469 |
| playerID | 686469 |
| playerName | Vinnie Pasquantino |
| pos | 1B |
| started | True |
| startingPosition | 1B |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 17.5 |
| sl_bb_percent | 11.1 |
| sl_woba | 0.294 |
| sl_xwoba | 0.318 |
| sl_xba | 0.246 |
| sl_xslg | 0.397 |
| sl_sweet_spot_percent | 36.7 |
| sl_barrel_batted_rate | 7.6 |
| sl_hard_hit_percent | 38.7 |
| sl_exit_velocity_avg | 88.9 |
| sl_launch_angle_avg | 20.0 |
| sl_whiff_percent | 16.1 |
| 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.200 | 0.000 | 0.000 | Hitting_2B | 0.200 | 1.000 | -0.200 | -1.000 |
| predicted_3B | 0.021 | 0.000 | 0.000 | Hitting_3B | 0.021 | 0.000 | -0.021 | 0.000 |
| predicted_AB | 3.484 | 4.000 | 5.000 | Hitting_AB | 3.484 | 5.000 | 0.516 | -1.000 |
| predicted_AVG | 0.286 | 0.000 | 0.200 | Hitting_AVG | 0.233 | 0.800 | -0.233 | -0.800 |
| predicted_BB | 0.332 | 0.000 | 1.000 | Hitting_BB | 0.332 | 0.000 | -0.332 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.420 | 0.000 | 1.000 | Hitting_H | 0.811 | 4.000 | -0.811 | -4.000 |
| predicted_HR | 0.090 | 0.000 | 0.000 | Hitting_HR | 0.111 | 0.000 | -0.111 | 0.000 |
| predicted_OBP | 0.377 | 0.000 | 0.333 | Hitting_OBP | 0.309 | 0.800 | -0.309 | -0.800 |
| predicted_R | 0.432 | 0.000 | 1.000 | Hitting_R | 0.432 | 2.000 | -0.432 | -2.000 |
| predicted_RBI | 0.250 | 0.000 | 1.000 | Hitting_RBI | 0.253 | 1.000 | -0.253 | -1.000 |
| predicted_SLG | 0.543 | 0.000 | 0.200 | Hitting_SLG | 0.397 | 1.000 | -0.397 | -1.000 |
| predicted_SO | 1.137 | 0.000 | 1.000 | Hitting_SO | 1.137 | 1.000 | -1.137 | -1.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 11 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 10 |
| Better Metrics | 2 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_AB: 3.4840 -> 4.0000 (boost 0.5160, better) |
| Biggest Deboost | predicted_SO: 1.1370 -> 0.0000 (deboost -1.1370, 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.4840 -> 5.3057 (boost 1.8217, 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.5804 -> 0.4768 (deboost -0.1036, 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.6137 -> 1.0000 (boost 0.3863, better) | predicted_SO: 1.5760 -> 1.0000 (deboost -0.5760, better) | AB rounded to 5 (raw=5.31), rates preserved: AVG=0.262 HR/AB=0.046 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7861 -> 1.0000 (boost 0.2139, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 0 | 3 | 0 | 3 | - | predicted_SLG: 0.4768 -> 0.2000 (deboost -0.2768, 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 | 3 | 0 | 3 | 0 | predicted_SLG: 0.2000 -> 0.4768 (boost 0.2768, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695506",
"player_name": "Jac Caglianone",
"position": "DH",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.2,
"predicted_3B": 0.021,
"predicted_AB": 3.484,
"predicted_AVG": 0.286,
"predicted_BB": 0.332,
"predicted_H": 0.42,
"predicted_HR": 0.09,
"predicted_OBP": 0.377,
"predicted_R": 0.432,
"predicted_RBI": 0.25,
"predicted_SLG": 0.543,
"predicted_SO": 1.137
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.353,
"predicted_3B": 0.0241,
"predicted_AB": 5.3057,
"predicted_AVG": 0.3195,
"predicted_BB": 0.6227,
"predicted_H": 1.4497,
"predicted_HBP": 0.112,
"predicted_HR": 0.2588,
"predicted_OBP": 0.4033,
"predicted_R": 0.8455,
"predicted_RBI": 0.6635,
"predicted_SLG": 0.5804,
"predicted_SO": 1.5536
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.353,
"delta": 0.153,
"percent_delta": 0.765,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.021,
"after": 0.0241,
"delta": 0.0031,
"percent_delta": 0.1476,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.484,
"after": 5.3057,
"delta": 1.8217,
"percent_delta": 0.5229,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.3195,
"delta": 0.0335,
"percent_delta": 0.1171,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.332,
"after": 0.6227,
"delta": 0.2907,
"percent_delta": 0.8756,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.42,
"after": 1.4497,
"delta": 1.0297,
"percent_delta": 2.4517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.09,
"after": 0.2588,
"delta": 0.1688,
"percent_delta": 1.8756,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.377,
"after": 0.4033,
"delta": 0.0263,
"percent_delta": 0.0698,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.432,
"after": 0.8455,
"delta": 0.4135,
"percent_delta": 0.9572,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.25,
"after": 0.6635,
"delta": 0.4135,
"percent_delta": 1.654,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.543,
"after": 0.5804,
"delta": 0.0374,
"percent_delta": 0.0689,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.137,
"after": 1.5536,
"delta": 0.4166,
"percent_delta": 0.3664,
"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.484,
"after": 5.3057,
"delta": 1.8217,
"percent_delta": 0.5229,
"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.353,
"predicted_3B": 0.0241,
"predicted_AB": 5.3057,
"predicted_AVG": 0.2618,
"predicted_BB": 0.6137,
"predicted_H": 1.3891,
"predicted_HBP": 0.112,
"predicted_HR": 0.2465,
"predicted_OBP": 0.3383,
"predicted_R": 0.7861,
"predicted_RBI": 0.6169,
"predicted_SLG": 0.4768,
"predicted_SO": 1.576
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.353,
"after": 0.353,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0241,
"after": 0.0241,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3057,
"after": 5.3057,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.3195,
"after": 0.2618,
"delta": -0.0577,
"percent_delta": -0.1806,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6227,
"after": 0.6137,
"delta": -0.009,
"percent_delta": -0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.4497,
"after": 1.3891,
"delta": -0.0606,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.112,
"after": 0.112,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.2588,
"after": 0.2465,
"delta": -0.0123,
"percent_delta": -0.0475,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.4033,
"after": 0.3383,
"delta": -0.065,
"percent_delta": -0.1612,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.8455,
"after": 0.7861,
"delta": -0.0594,
"percent_delta": -0.0703,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6635,
"after": 0.6169,
"delta": -0.0466,
"percent_delta": -0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.5804,
"after": 0.4768,
"delta": -0.1036,
"percent_delta": -0.1785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5536,
"after": 1.576,
"delta": 0.0224,
"percent_delta": 0.0144,
"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.5804,
"after": 0.4768,
"delta": -0.1036,
"percent_delta": -0.1785,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.31), rates preserved: AVG=0.262 HR/AB=0.046",
"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.353,
"after": 0.0,
"delta": -0.353,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0241,
"after": 0.0,
"delta": -0.0241,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 5.3057,
"after": 5.0,
"delta": -0.3057,
"percent_delta": -0.0576,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6137,
"after": 1.0,
"delta": 0.3863,
"percent_delta": 0.6295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.3891,
"after": 1.0,
"delta": -0.3891,
"percent_delta": -0.2801,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.112,
"after": 0.0,
"delta": -0.112,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.2465,
"after": 0.0,
"delta": -0.2465,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6169,
"after": 1.0,
"delta": 0.3831,
"percent_delta": 0.621,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.576,
"after": 1.0,
"delta": -0.576,
"percent_delta": -0.3655,
"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.6137,
"after": 1.0,
"delta": 0.3863,
"percent_delta": 0.6295,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.576,
"after": 1.0,
"delta": -0.576,
"percent_delta": -0.3655,
"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": 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.7861,
"after": 1.0,
"delta": 0.2139,
"percent_delta": 0.2721,
"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.7861,
"after": 1.0,
"delta": 0.2139,
"percent_delta": 0.2721,
"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.2618,
"after": 0.2,
"delta": -0.0618,
"percent_delta": -0.2361,
"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.3383,
"after": 0.333,
"delta": -0.0053,
"percent_delta": -0.0157,
"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.4768,
"after": 0.2,
"delta": -0.2768,
"percent_delta": -0.5805,
"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.4768,
"after": 0.2,
"delta": -0.2768,
"percent_delta": -0.5805,
"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.2618,
"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.3383,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.4768,
"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.2618,
"delta": 0.0618,
"percent_delta": 0.3091,
"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.3383,
"delta": 0.0053,
"percent_delta": 0.0161,
"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.4768,
"delta": 0.2768,
"percent_delta": 1.3839,
"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.4768,
"delta": 0.2768,
"percent_delta": 1.3839,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.021,
"after": 0.0,
"delta": -0.021,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.484,
"after": 4.0,
"delta": 0.516,
"percent_delta": 0.1481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.286,
"after": 0.2618,
"delta": -0.0242,
"percent_delta": -0.0846,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.332,
"after": 0.0,
"delta": -0.332,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.42,
"after": 0.0,
"delta": -0.42,
"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.377,
"after": 0.3383,
"delta": -0.0387,
"percent_delta": -0.1027,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.432,
"after": 0.0,
"delta": -0.432,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.25,
"after": 0.0,
"delta": -0.25,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.543,
"after": 0.4768,
"delta": -0.0662,
"percent_delta": -0.1219,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.137,
"after": 0.0,
"delta": -1.137,
"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.484,
"after": 4.0,
"delta": 0.516,
"percent_delta": 0.1481,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 1.137,
"after": 0.0,
"delta": -1.137,
"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.021 | - |
| predicted_AB | 3.484 | - |
| predicted_AVG | 0.286 | - |
| predicted_BB | 0.332 | - |
| predicted_H | 0.420 | - |
| predicted_HR | 0.090 | - |
| predicted_OBP | 0.377 | - |
| predicted_R | 0.432 | - |
| predicted_RBI | 0.250 | - |
| predicted_SLG | 0.543 | - |
| predicted_SO | 1.137 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.353 | 0.153 |
| predicted_3B | 0.024 | 0.003 |
| predicted_AB | 5.306 | 1.822 |
| predicted_AVG | 0.320 | 0.034 |
| predicted_BB | 0.623 | 0.291 |
| predicted_H | 1.450 | 1.030 |
| predicted_HBP | 0.112 | - |
| predicted_HR | 0.259 | 0.169 |
| predicted_OBP | 0.403 | 0.026 |
| predicted_R | 0.846 | 0.414 |
| predicted_RBI | 0.663 | 0.413 |
| predicted_SLG | 0.580 | 0.037 |
| predicted_SO | 1.554 | 0.417 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.353 | 0.000 |
| predicted_3B | 0.024 | 0.000 |
| predicted_AB | 5.306 | 0.000 |
| predicted_AVG | 0.262 | -0.058 |
| predicted_BB | 0.614 | -0.009 |
| predicted_H | 1.389 | -0.061 |
| predicted_HBP | 0.112 | 0.000 |
| predicted_HR | 0.246 | -0.012 |
| predicted_OBP | 0.338 | -0.065 |
| predicted_R | 0.786 | -0.059 |
| predicted_RBI | 0.617 | -0.047 |
| predicted_SLG | 0.477 | -0.104 |
| predicted_SO | 1.576 | 0.022 |
AB rounded to 5 (raw=5.31), rates preserved: AVG=0.262 HR/AB=0.046
| 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.353 |
| predicted_3B | 0.000 | -0.024 |
| predicted_AB | 5.000 | -0.306 |
| predicted_AVG | 0.200 | -0.062 |
| predicted_BB | 1.000 | 0.386 |
| predicted_H | 1.000 | -0.389 |
| predicted_HR | 0.000 | -0.246 |
| predicted_OBP | 0.333 | -0.005 |
| predicted_R | 1.000 | 0.214 |
| predicted_RBI | 1.000 | 0.383 |
| predicted_SLG | 0.200 | -0.277 |
| predicted_SO | 1.000 | -0.576 |
Attached 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 | - | 15.000 | 10.000 | 2.000 | 0.000 | 2.000 | 5.000 | 5.000 | 3.000 | 2.000 | 0.6667 | 0.7222 | 1.2000 | 0.6667 | 0.1333 | 0.3333 | 0.2000 | 0.1333 |
| last_10 | 0.20 | 10 | - | 34.000 | 16.000 | 2.000 | 0.000 | 3.000 | 8.000 | 7.000 | 6.000 | 9.000 | 0.4706 | 0.5610 | 0.7941 | 0.4706 | 0.0882 | 0.2353 | 0.1765 | 0.2647 |
| season | 0.60 | 61 | - | 662.000 | 154.000 | 38.000 | 4.000 | 21.000 | 48.000 | 82.000 | 63.000 | 216.000 | 0.2326 | 0.3088 | 0.3973 | 0.2326 | 0.0317 | 0.0725 | 0.0952 | 0.3263 |
| Metric | Value |
|---|---|
| predicted_2B | 0.5490 |
| predicted_3B | 0.0280 |
| predicted_AB | 7.6380 |
| predicted_AVG | 0.3624 |
| predicted_BB | 0.9950 |
| predicted_H | 2.7680 |
| predicted_HBP | 0.1120 |
| predicted_HR | 0.4750 |
| predicted_OBP | 0.4369 |
| predicted_R | 1.3750 |
| predicted_RBI | 1.1930 |
| predicted_SLG | 0.6282 |
| predicted_SO | 2.0870 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2000 | 0.5490 | 0.3530 | model_form_blend |
| predicted_3B | 0.0210 | 0.0280 | 0.0241 | model_form_blend |
| predicted_AB | 3.4840 | 7.6380 | 5.3057 | model_form_blend |
| predicted_AVG | 0.2860 | 0.3624 | 0.3195 | model_form_blend |
| predicted_BB | 0.3320 | 0.9950 | 0.6227 | model_form_blend |
| predicted_H | 0.4200 | 2.7680 | 1.4497 | model_form_blend |
| predicted_HBP | - | 0.1120 | 0.1120 | form_only |
| predicted_HR | 0.0900 | 0.4750 | 0.2588 | model_form_blend |
| predicted_OBP | 0.3770 | 0.4369 | 0.4033 | model_form_blend |
| predicted_R | 0.4320 | 1.3750 | 0.8455 | model_form_blend |
| predicted_RBI | 0.2500 | 1.1930 | 0.6635 | model_form_blend |
| predicted_SLG | 0.5430 | 0.6282 | 0.5804 | model_form_blend |
| predicted_SO | 1.1370 | 2.0870 | 1.5536 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 190 |
| Season rows before report date | 190 |
| 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 | 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.233 |
| 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 | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 5 |
| Hitting_AVG | 0.8 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 4 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 2 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 5 |
| 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 | 20260610_TEX@KC |
| game_type | full |
| mlbID | 695506 |
| playerID | 695506 |
| playerName | Jac Caglianone |
| pos | RF |
| started | True |
| startingPosition | RF |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 29.1 |
| sl_bb_percent | 8.8 |
| sl_woba | 0.355 |
| sl_xwoba | 0.364 |
| sl_xba | 0.274 |
| sl_xslg | 0.493 |
| sl_sweet_spot_percent | 38.4 |
| sl_barrel_batted_rate | 15.9 |
| sl_hard_hit_percent | 58.7 |
| sl_exit_velocity_avg | 93.9 |
| sl_launch_angle_avg | 8.0 |
| sl_whiff_percent | 31.1 |
| sl_swing_percent | 48.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.163 | 0.000 | 0.000 | Hitting_2B | 0.162 | 1.000 | -0.162 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.800 | 3.000 | 6.000 | Hitting_AB | 3.431 | 4.000 | -0.431 | -1.000 |
| predicted_AVG | 0.222 | 0.000 | 0.167 | Hitting_AVG | 0.229 | 0.250 | -0.229 | -0.250 |
| predicted_BB | 0.429 | 1.000 | 1.000 | Hitting_BB | 0.426 | 0.000 | 0.574 | 1.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.840 | 0.000 | 1.000 | Hitting_H | 0.787 | 1.000 | -0.787 | -1.000 |
| predicted_HR | 0.150 | 0.000 | 0.000 | Hitting_HR | 0.127 | 0.000 | -0.127 | 0.000 |
| predicted_OBP | 0.273 | 0.250 | 0.286 | Hitting_OBP | 0.313 | 0.250 | -0.063 | 0.000 |
| predicted_R | 0.434 | 0.000 | 1.000 | Hitting_R | 0.431 | 1.000 | -0.431 | -1.000 |
| predicted_RBI | 0.590 | 0.000 | 1.000 | Hitting_RBI | 0.538 | 0.000 | -0.538 | 0.000 |
| predicted_SLG | 0.390 | 0.000 | 0.167 | Hitting_SLG | 0.388 | 0.500 | -0.388 | -0.500 |
| predicted_SO | 1.117 | 1.000 | 2.000 | Hitting_SO | 1.112 | 1.000 | -0.112 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 1 |
| Deboosted Metrics | 9 |
| Better Metrics | 2 |
| Worse Metrics | 8 |
| Biggest Boost | predicted_BB: 0.4290 -> 1.0000 (boost 0.5710, 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.8000 -> 5.7208 (boost 1.9208, 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: 0.9883 -> 0.9189 (deboost -0.0694, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 7 | 4 | 3 | 3 | 4 | predicted_BB: 0.5189 -> 1.0000 (boost 0.4811, better) | predicted_2B: 0.3009 -> 0.0000 (deboost -0.3009, worse) | AB rounded to 6 (raw=5.72), rates preserved: AVG=0.208 HR/AB=0.039 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7286 -> 1.0000 (boost 0.2714, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 1 | 2 | 1 | 2 | predicted_OBP: 0.2739 -> 0.2860 (boost 0.0121, better) | predicted_SLG: 0.3783 -> 0.1670 (deboost -0.2113, 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.3783 (boost 0.2113, better) | predicted_OBP: 0.2860 -> 0.2739 (deboost -0.0121, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "695600",
"player_name": "Carter Jensen",
"position": "C",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.163,
"predicted_3B": 0.0,
"predicted_AB": 3.8,
"predicted_AVG": 0.222,
"predicted_BB": 0.429,
"predicted_H": 0.84,
"predicted_HR": 0.15,
"predicted_OBP": 0.273,
"predicted_R": 0.434,
"predicted_RBI": 0.59,
"predicted_SLG": 0.39,
"predicted_SO": 1.117
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3009,
"predicted_3B": 0.0004,
"predicted_AB": 5.7208,
"predicted_AVG": 0.2188,
"predicted_BB": 0.5265,
"predicted_H": 1.2423,
"predicted_HBP": 0.038,
"predicted_HR": 0.2352,
"predicted_OBP": 0.2707,
"predicted_R": 0.7836,
"predicted_RBI": 0.9883,
"predicted_SLG": 0.3943,
"predicted_SO": 1.8354
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.163,
"after": 0.3009,
"delta": 0.1379,
"percent_delta": 0.846,
"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.8,
"after": 5.7208,
"delta": 1.9208,
"percent_delta": 0.5055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.222,
"after": 0.2188,
"delta": -0.0032,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.429,
"after": 0.5265,
"delta": 0.0975,
"percent_delta": 0.2273,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 1.2423,
"delta": 0.4023,
"percent_delta": 0.4789,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.2352,
"delta": 0.0852,
"percent_delta": 0.568,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.273,
"after": 0.2707,
"delta": -0.0023,
"percent_delta": -0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.434,
"after": 0.7836,
"delta": 0.3496,
"percent_delta": 0.8055,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.59,
"after": 0.9883,
"delta": 0.3983,
"percent_delta": 0.6751,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.3943,
"delta": 0.0043,
"percent_delta": 0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.117,
"after": 1.8354,
"delta": 0.7184,
"percent_delta": 0.6432,
"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.8,
"after": 5.7208,
"delta": 1.9208,
"percent_delta": 0.5055,
"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.3009,
"predicted_3B": 0.0004,
"predicted_AB": 5.7208,
"predicted_AVG": 0.2081,
"predicted_BB": 0.5189,
"predicted_H": 1.1904,
"predicted_HBP": 0.038,
"predicted_HR": 0.224,
"predicted_OBP": 0.2739,
"predicted_R": 0.7286,
"predicted_RBI": 0.9189,
"predicted_SLG": 0.3783,
"predicted_SO": 1.8618
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3009,
"after": 0.3009,
"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.7208,
"after": 5.7208,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2188,
"after": 0.2081,
"delta": -0.0107,
"percent_delta": -0.0489,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5265,
"after": 0.5189,
"delta": -0.0076,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.2423,
"after": 1.1904,
"delta": -0.0519,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"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.2352,
"after": 0.224,
"delta": -0.0112,
"percent_delta": -0.0476,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2707,
"after": 0.2739,
"delta": 0.0032,
"percent_delta": 0.0118,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.7836,
"after": 0.7286,
"delta": -0.055,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9883,
"after": 0.9189,
"delta": -0.0694,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.3943,
"after": 0.3783,
"delta": -0.016,
"percent_delta": -0.0406,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8354,
"after": 1.8618,
"delta": 0.0264,
"percent_delta": 0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.9883,
"after": 0.9189,
"delta": -0.0694,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 6 (raw=5.72), rates preserved: AVG=0.208 HR/AB=0.039",
"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.3009,
"after": 0.0,
"delta": -0.3009,
"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.7208,
"after": 6.0,
"delta": 0.2792,
"percent_delta": 0.0488,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5189,
"after": 1.0,
"delta": 0.4811,
"percent_delta": 0.9272,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.1904,
"after": 1.0,
"delta": -0.1904,
"percent_delta": -0.1599,
"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.224,
"after": 0.0,
"delta": -0.224,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.9189,
"after": 1.0,
"delta": 0.0811,
"percent_delta": 0.0883,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.8618,
"after": 2.0,
"delta": 0.1382,
"percent_delta": 0.0742,
"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.5189,
"after": 1.0,
"delta": 0.4811,
"percent_delta": 0.9272,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3009,
"after": 0.0,
"delta": -0.3009,
"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.7286,
"after": 1.0,
"delta": 0.2714,
"percent_delta": 0.3725,
"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.7286,
"after": 1.0,
"delta": 0.2714,
"percent_delta": 0.3725,
"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.2081,
"after": 0.167,
"delta": -0.0411,
"percent_delta": -0.1975,
"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.2739,
"after": 0.286,
"delta": 0.0121,
"percent_delta": 0.0442,
"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.3783,
"after": 0.167,
"delta": -0.2113,
"percent_delta": -0.5586,
"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.2739,
"after": 0.286,
"delta": 0.0121,
"percent_delta": 0.0442,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3783,
"after": 0.167,
"delta": -0.2113,
"percent_delta": -0.5586,
"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": 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": 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.2081,
"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.2739,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3783,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2081,
"delta": 0.0411,
"percent_delta": 0.246,
"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.2739,
"delta": -0.0121,
"percent_delta": -0.0422,
"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.3783,
"delta": 0.2113,
"percent_delta": 1.2651,
"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.3783,
"delta": 0.2113,
"percent_delta": 1.2651,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.286,
"after": 0.2739,
"delta": -0.0121,
"percent_delta": -0.0422,
"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.163,
"after": 0.0,
"delta": -0.163,
"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.8,
"after": 3.0,
"delta": -0.8,
"percent_delta": -0.2105,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.222,
"after": 0.2081,
"delta": -0.0139,
"percent_delta": -0.0626,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.429,
"after": 1.0,
"delta": 0.571,
"percent_delta": 1.331,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.84,
"after": 0.0,
"delta": -0.84,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.15,
"after": 0.0,
"delta": -0.15,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.273,
"after": 0.2739,
"delta": 0.0009,
"percent_delta": 0.0033,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.434,
"after": 0.0,
"delta": -0.434,
"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.39,
"after": 0.3783,
"delta": -0.0117,
"percent_delta": -0.03,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.117,
"after": 1.0,
"delta": -0.117,
"percent_delta": -0.1047,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_BB",
"before": 0.429,
"after": 1.0,
"delta": 0.571,
"percent_delta": 1.331,
"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.163 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.800 | - |
| predicted_AVG | 0.222 | - |
| predicted_BB | 0.429 | - |
| predicted_H | 0.840 | - |
| predicted_HR | 0.150 | - |
| predicted_OBP | 0.273 | - |
| predicted_R | 0.434 | - |
| predicted_RBI | 0.590 | - |
| predicted_SLG | 0.390 | - |
| predicted_SO | 1.117 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.301 | 0.138 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.721 | 1.921 |
| predicted_AVG | 0.219 | -0.003 |
| predicted_BB | 0.526 | 0.097 |
| predicted_H | 1.242 | 0.402 |
| predicted_HBP | 0.038 | - |
| predicted_HR | 0.235 | 0.085 |
| predicted_OBP | 0.271 | -0.002 |
| predicted_R | 0.784 | 0.350 |
| predicted_RBI | 0.988 | 0.398 |
| predicted_SLG | 0.394 | 0.004 |
| predicted_SO | 1.835 | 0.718 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.301 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.721 | 0.000 |
| predicted_AVG | 0.208 | -0.011 |
| predicted_BB | 0.519 | -0.008 |
| predicted_H | 1.190 | -0.052 |
| predicted_HBP | 0.038 | 0.000 |
| predicted_HR | 0.224 | -0.011 |
| predicted_OBP | 0.274 | 0.003 |
| predicted_R | 0.729 | -0.055 |
| predicted_RBI | 0.919 | -0.069 |
| predicted_SLG | 0.378 | -0.016 |
| predicted_SO | 1.862 | 0.026 |
AB rounded to 6 (raw=5.72), rates preserved: AVG=0.208 HR/AB=0.039
| 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.301 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 6.000 | 0.279 |
| predicted_AVG | 0.167 | -0.041 |
| predicted_BB | 1.000 | 0.481 |
| predicted_H | 1.000 | -0.190 |
| predicted_HR | 0.000 | -0.224 |
| predicted_OBP | 0.286 | 0.012 |
| predicted_R | 1.000 | 0.271 |
| predicted_RBI | 1.000 | 0.081 |
| predicted_SLG | 0.167 | -0.211 |
| 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 | -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 | -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 | 2.000 | 0.000 | 1.000 | 5.000 | 4.000 | 0.000 | 7.000 | 0.2000 | 0.2000 | 0.4500 | 0.2000 | 0.0500 | 0.2500 | 0.0000 | 0.3500 |
| last_10 | 0.20 | 10 | - | 39.000 | 7.000 | 2.000 | 0.000 | 2.000 | 8.000 | 7.000 | 1.000 | 15.000 | 0.1795 | 0.1905 | 0.3846 | 0.1795 | 0.0513 | 0.2051 | 0.0256 | 0.3846 |
| season | 0.60 | 60 | - | 676.000 | 155.000 | 32.000 | 0.000 | 25.000 | 106.000 | 85.000 | 84.000 | 219.000 | 0.2293 | 0.3132 | 0.3876 | 0.2293 | 0.0370 | 0.1568 | 0.1243 | 0.3240 |
| Metric | Value |
|---|---|
| predicted_2B | 0.4770 |
| predicted_3B | 0.0010 |
| predicted_AB | 8.1740 |
| predicted_AVG | 0.2148 |
| predicted_BB | 0.6510 |
| predicted_H | 1.7560 |
| predicted_HBP | 0.0380 |
| predicted_HR | 0.3440 |
| predicted_OBP | 0.2678 |
| predicted_R | 1.2300 |
| predicted_RBI | 1.4970 |
| predicted_SLG | 0.3998 |
| predicted_SO | 2.7530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1630 | 0.4770 | 0.3009 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.8000 | 8.1740 | 5.7208 | model_form_blend |
| predicted_AVG | 0.2220 | 0.2148 | 0.2188 | model_form_blend |
| predicted_BB | 0.4290 | 0.6510 | 0.5265 | model_form_blend |
| predicted_H | 0.8400 | 1.7560 | 1.2423 | model_form_blend |
| predicted_HBP | - | 0.0380 | 0.0380 | form_only |
| predicted_HR | 0.1500 | 0.3440 | 0.2352 | model_form_blend |
| predicted_OBP | 0.2730 | 0.2678 | 0.2707 | model_form_blend |
| predicted_R | 0.4340 | 1.2300 | 0.7836 | model_form_blend |
| predicted_RBI | 0.5900 | 1.4970 | 0.9883 | model_form_blend |
| predicted_SLG | 0.3900 | 0.3998 | 0.3943 | model_form_blend |
| predicted_SO | 1.1170 | 2.7530 | 1.8354 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 197 |
| Season rows before report date | 197 |
| Report year | 2026 |
| Profile rows used | 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 | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 1 |
| SO | 1 |
| 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 | 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 | 1 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | C |
| gameID | 20260609_TEX@KC |
| game_type | full |
| mlbID | 695600 |
| playerID | 695600 |
| playerName | Carter Jensen |
| pos | C |
| started | True |
| startingPosition | C |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-09 |
| sl_k_percent | 30.3 |
| sl_bb_percent | 9.2 |
| sl_woba | 0.293 |
| sl_xwoba | 0.27 |
| sl_xba | 0.192 |
| sl_xslg | 0.34 |
| sl_sweet_spot_percent | 29.9 |
| sl_barrel_batted_rate | 10.3 |
| sl_hard_hit_percent | 40.9 |
| sl_exit_velocity_avg | 90.4 |
| sl_launch_angle_avg | 22.2 |
| sl_whiff_percent | 31.9 |
| sl_swing_percent | 44.7 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.251 | 1.000 | 0.000 | Hitting_2B | 0.251 | 0.000 | 0.749 | 1.000 |
| predicted_3B | 0.020 | 0.000 | 0.000 | Hitting_3B | 0.020 | 0.000 | -0.020 | 0.000 |
| predicted_AB | 4.500 | 4.000 | 7.000 | Hitting_AB | 4.012 | 5.000 | -0.012 | -1.000 |
| predicted_AVG | 0.243 | 0.250 | 0.286 | Hitting_AVG | 0.286 | 0.400 | -0.036 | -0.150 |
| predicted_BB | 0.447 | 0.000 | 1.000 | Hitting_BB | 0.447 | 0.000 | -0.447 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.063 | 0.000 | -0.063 | 0.000 |
| predicted_H | 1.090 | 1.000 | 2.000 | Hitting_H | 1.149 | 2.000 | -0.149 | -1.000 |
| predicted_HR | 0.130 | 0.000 | 0.000 | Hitting_HR | 0.157 | 0.000 | -0.157 | 0.000 |
| predicted_OBP | 0.334 | 0.250 | 0.375 | Hitting_OBP | 0.356 | 0.400 | -0.106 | -0.150 |
| predicted_R | 0.494 | 1.000 | 1.000 | Hitting_R | 0.494 | 0.000 | 0.506 | 1.000 |
| predicted_RBI | 0.400 | 1.000 | 1.000 | Hitting_RBI | 0.443 | 0.000 | 0.557 | 1.000 |
| predicted_SLG | 0.414 | 0.500 | 0.286 | Hitting_SLG | 0.476 | 0.400 | 0.024 | 0.100 |
| predicted_SO | 0.863 | 1.000 | 2.000 | Hitting_SO | 0.863 | 1.000 | 0.137 | 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.2510 -> 1.0000 (boost 0.7490, better) |
| Biggest Deboost | predicted_AB: 4.5000 -> 4.0000 (deboost -0.5000, 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 -> 7.1929 (boost 2.6929, better) | - | Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season. |
| 3 | team_form_snapshot | 5 | 0 | 5 | 0 | 5 | - | predicted_H: 1.8786 -> 1.8001 (deboost -0.0785, worse) | Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed) |
| 4 | ab_floor_and_scaling | 8 | 4 | 4 | 3 | 5 | predicted_RBI: 0.5670 -> 1.0000 (boost 0.4330, better) | predicted_2B: 0.4311 -> 0.0000 (deboost -0.4311, worse) | AB rounded to 7 (raw=7.19), rates preserved: AVG=0.250 HR/AB=0.024 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.7325 -> 1.0000 (boost 0.2675, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3256 -> 0.3750 (boost 0.0494, better) | predicted_SLG: 0.3900 -> 0.2860 (deboost -0.1040, 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_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.3900 (boost 0.1040, better) | predicted_OBP: 0.3750 -> 0.3256 (deboost -0.0494, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "677951",
"player_name": "Bobby Witt Jr.",
"position": "SS",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.251,
"predicted_3B": 0.02,
"predicted_AB": 4.5,
"predicted_AVG": 0.243,
"predicted_BB": 0.447,
"predicted_H": 1.09,
"predicted_HR": 0.13,
"predicted_OBP": 0.334,
"predicted_R": 0.494,
"predicted_RBI": 0.4,
"predicted_SLG": 0.414,
"predicted_SO": 0.863
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.4311,
"predicted_3B": 0.0249,
"predicted_AB": 7.1929,
"predicted_AVG": 0.2555,
"predicted_BB": 0.8148,
"predicted_H": 1.8786,
"predicted_HBP": 0.06,
"predicted_HR": 0.1835,
"predicted_OBP": 0.3416,
"predicted_R": 0.7878,
"predicted_RBI": 0.6098,
"predicted_SLG": 0.4125,
"predicted_SO": 1.6215
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.251,
"after": 0.4311,
"delta": 0.1801,
"percent_delta": 0.7175,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.02,
"after": 0.0249,
"delta": 0.0049,
"percent_delta": 0.245,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.5,
"after": 7.1929,
"delta": 2.6929,
"percent_delta": 0.5984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2555,
"delta": 0.0125,
"percent_delta": 0.0514,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.447,
"after": 0.8148,
"delta": 0.3678,
"percent_delta": 0.8228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.8786,
"delta": 0.7886,
"percent_delta": 0.7235,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.1835,
"delta": 0.0535,
"percent_delta": 0.4115,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3416,
"delta": 0.0076,
"percent_delta": 0.0228,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.494,
"after": 0.7878,
"delta": 0.2938,
"percent_delta": 0.5947,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4,
"after": 0.6098,
"delta": 0.2098,
"percent_delta": 0.5245,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.414,
"after": 0.4125,
"delta": -0.0015,
"percent_delta": -0.0036,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.863,
"after": 1.6215,
"delta": 0.7585,
"percent_delta": 0.8789,
"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": 7.1929,
"delta": 2.6929,
"percent_delta": 0.5984,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 67
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.4311,
"predicted_3B": 0.0249,
"predicted_AB": 7.1929,
"predicted_AVG": 0.2503,
"predicted_BB": 0.8031,
"predicted_H": 1.8001,
"predicted_HBP": 0.06,
"predicted_HR": 0.1747,
"predicted_OBP": 0.3256,
"predicted_R": 0.7325,
"predicted_RBI": 0.567,
"predicted_SLG": 0.39,
"predicted_SO": 1.6448
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.4311,
"after": 0.4311,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0249,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1929,
"after": 7.1929,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2555,
"after": 0.2503,
"delta": -0.0052,
"percent_delta": -0.0204,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8148,
"after": 0.8031,
"delta": -0.0117,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.8786,
"after": 1.8001,
"delta": -0.0785,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.06,
"after": 0.06,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.1835,
"after": 0.1747,
"delta": -0.0088,
"percent_delta": -0.048,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3416,
"after": 0.3256,
"delta": -0.016,
"percent_delta": -0.0468,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.7878,
"after": 0.7325,
"delta": -0.0553,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6098,
"after": 0.567,
"delta": -0.0428,
"percent_delta": -0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4125,
"after": 0.39,
"delta": -0.0225,
"percent_delta": -0.0545,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6215,
"after": 1.6448,
"delta": 0.0233,
"percent_delta": 0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 0,
"worse_metrics": 5,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_H",
"before": 1.8786,
"after": 1.8001,
"delta": -0.0785,
"percent_delta": -0.0418,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 7 (raw=7.19), rates preserved: AVG=0.250 HR/AB=0.024",
"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.4311,
"after": 0.0,
"delta": -0.4311,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0249,
"after": 0.0,
"delta": -0.0249,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 7.1929,
"after": 7.0,
"delta": -0.1929,
"percent_delta": -0.0268,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.8031,
"after": 1.0,
"delta": 0.1969,
"percent_delta": 0.2452,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.8001,
"after": 2.0,
"delta": 0.1999,
"percent_delta": 0.111,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.06,
"after": 0.0,
"delta": -0.06,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.1747,
"after": 0.0,
"delta": -0.1747,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.567,
"after": 1.0,
"delta": 0.433,
"percent_delta": 0.7637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6448,
"after": 2.0,
"delta": 0.3552,
"percent_delta": 0.216,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 8,
"boosted_metrics": 4,
"deboosted_metrics": 4,
"better_metrics": 3,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_RBI",
"before": 0.567,
"after": 1.0,
"delta": 0.433,
"percent_delta": 0.7637,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.4311,
"after": 0.0,
"delta": -0.4311,
"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.7325,
"after": 1.0,
"delta": 0.2675,
"percent_delta": 0.3652,
"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.7325,
"after": 1.0,
"delta": 0.2675,
"percent_delta": 0.3652,
"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.2503,
"after": 0.286,
"delta": 0.0357,
"percent_delta": 0.1426,
"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.3256,
"after": 0.375,
"delta": 0.0494,
"percent_delta": 0.1517,
"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.39,
"after": 0.286,
"delta": -0.104,
"percent_delta": -0.2667,
"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.3256,
"after": 0.375,
"delta": 0.0494,
"percent_delta": 0.1517,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.286,
"delta": -0.104,
"percent_delta": -0.2667,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 1.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 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": 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": 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_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.2503,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3256,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.39,
"predicted_SO": 1.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.2503,
"delta": -0.0357,
"percent_delta": -0.125,
"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.3256,
"delta": -0.0494,
"percent_delta": -0.1318,
"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.39,
"delta": 0.104,
"percent_delta": 0.3636,
"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.39,
"delta": 0.104,
"percent_delta": 0.3636,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.375,
"after": 0.3256,
"delta": -0.0494,
"percent_delta": -0.1318,
"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.251,
"after": 1.0,
"delta": 0.749,
"percent_delta": 2.9841,
"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": 4.5,
"after": 4.0,
"delta": -0.5,
"percent_delta": -0.1111,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.243,
"after": 0.2503,
"delta": 0.0073,
"percent_delta": 0.03,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.447,
"after": 0.0,
"delta": -0.447,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 1.09,
"after": 1.0,
"delta": -0.09,
"percent_delta": -0.0826,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.334,
"after": 0.3256,
"delta": -0.0084,
"percent_delta": -0.0251,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.494,
"after": 1.0,
"delta": 0.506,
"percent_delta": 1.0243,
"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.414,
"after": 0.39,
"delta": -0.024,
"percent_delta": -0.058,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.863,
"after": 1.0,
"delta": 0.137,
"percent_delta": 0.1587,
"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.251,
"after": 1.0,
"delta": 0.749,
"percent_delta": 2.9841,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.5,
"after": 4.0,
"delta": -0.5,
"percent_delta": -0.1111,
"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.251 | - |
| predicted_3B | 0.020 | - |
| predicted_AB | 4.500 | - |
| predicted_AVG | 0.243 | - |
| predicted_BB | 0.447 | - |
| predicted_H | 1.090 | - |
| predicted_HR | 0.130 | - |
| predicted_OBP | 0.334 | - |
| predicted_R | 0.494 | - |
| predicted_RBI | 0.400 | - |
| predicted_SLG | 0.414 | - |
| predicted_SO | 0.863 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.431 | 0.180 |
| predicted_3B | 0.025 | 0.005 |
| predicted_AB | 7.193 | 2.693 |
| predicted_AVG | 0.256 | 0.013 |
| predicted_BB | 0.815 | 0.368 |
| predicted_H | 1.879 | 0.789 |
| predicted_HBP | 0.060 | - |
| predicted_HR | 0.183 | 0.053 |
| predicted_OBP | 0.342 | 0.008 |
| predicted_R | 0.788 | 0.294 |
| predicted_RBI | 0.610 | 0.210 |
| predicted_SLG | 0.412 | -0.002 |
| predicted_SO | 1.621 | 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.431 | 0.000 |
| predicted_3B | 0.025 | 0.000 |
| predicted_AB | 7.193 | 0.000 |
| predicted_AVG | 0.250 | -0.005 |
| predicted_BB | 0.803 | -0.012 |
| predicted_H | 1.800 | -0.079 |
| predicted_HBP | 0.060 | 0.000 |
| predicted_HR | 0.175 | -0.009 |
| predicted_OBP | 0.326 | -0.016 |
| predicted_R | 0.733 | -0.055 |
| predicted_RBI | 0.567 | -0.043 |
| predicted_SLG | 0.390 | -0.022 |
| predicted_SO | 1.645 | 0.023 |
AB rounded to 7 (raw=7.19), rates preserved: AVG=0.250 HR/AB=0.024
| 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.431 |
| predicted_3B | 0.000 | -0.025 |
| predicted_AB | 7.000 | -0.193 |
| predicted_AVG | 0.286 | 0.036 |
| predicted_BB | 1.000 | 0.197 |
| predicted_H | 2.000 | 0.200 |
| predicted_HR | 0.000 | -0.175 |
| predicted_OBP | 0.375 | 0.049 |
| predicted_R | 1.000 | 0.267 |
| predicted_RBI | 1.000 | 0.433 |
| predicted_SLG | 0.286 | -0.104 |
| predicted_SO | 2.000 | 0.355 |
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 | 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 | 5.000 | 1.000 | 0.000 | 0.000 | 1.000 | 1.000 | 2.000 | 6.000 | 0.2500 | 0.3182 | 0.3000 | 0.2500 | 0.0000 | 0.0500 | 0.1000 | 0.3000 |
| last_10 | 0.20 | 10 | - | 40.000 | 10.000 | 3.000 | 0.000 | 0.000 | 1.000 | 5.000 | 7.000 | 11.000 | 0.2500 | 0.3750 | 0.3250 | 0.2500 | 0.0000 | 0.0250 | 0.1750 | 0.2750 |
| season | 0.60 | 67 | - | 1023.000 | 293.000 | 64.000 | 5.000 | 40.000 | 113.000 | 126.000 | 114.000 | 220.000 | 0.2864 | 0.3557 | 0.4761 | 0.2864 | 0.0391 | 0.1105 | 0.1114 | 0.2150 |
| Metric | Value |
|---|---|
| predicted_2B | 0.6580 |
| predicted_3B | 0.0310 |
| predicted_AB | 10.5850 |
| predicted_AVG | 0.2713 |
| predicted_BB | 1.2780 |
| predicted_H | 2.8720 |
| predicted_HBP | 0.0600 |
| predicted_HR | 0.2510 |
| predicted_OBP | 0.3511 |
| predicted_R | 1.1580 |
| predicted_RBI | 0.8740 |
| predicted_SLG | 0.4106 |
| predicted_SO | 2.5770 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2510 | 0.6580 | 0.4311 | model_form_blend |
| predicted_3B | 0.0200 | 0.0310 | 0.0249 | model_form_blend |
| predicted_AB | 4.5000 | 10.5850 | 7.1929 | model_form_blend |
| predicted_AVG | 0.2430 | 0.2713 | 0.2555 | model_form_blend |
| predicted_BB | 0.4470 | 1.2780 | 0.8148 | model_form_blend |
| predicted_H | 1.0900 | 2.8720 | 1.8786 | model_form_blend |
| predicted_HBP | - | 0.0600 | 0.0600 | form_only |
| predicted_HR | 0.1300 | 0.2510 | 0.1835 | model_form_blend |
| predicted_OBP | 0.3340 | 0.3511 | 0.3416 | model_form_blend |
| predicted_R | 0.4940 | 1.1580 | 0.7878 | model_form_blend |
| predicted_RBI | 0.4000 | 0.8740 | 0.6098 | model_form_blend |
| predicted_SLG | 0.4140 | 0.4106 | 0.4125 | model_form_blend |
| predicted_SO | 0.8630 | 2.5770 | 1.6215 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 1 |
| 3B | 0 |
| HR | 0 |
| R | 1 |
| RBI | 1 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.286 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 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.4 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 1 |
| Hitting_TB | 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 | SS |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 677951 |
| playerID | 677951 |
| playerName | Bobby Witt Jr. |
| pos | SS |
| started | True |
| startingPosition | SS |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 18.5 |
| sl_bb_percent | 10.2 |
| sl_woba | 0.351 |
| sl_xwoba | 0.384 |
| sl_xba | 0.301 |
| sl_xslg | 0.515 |
| sl_sweet_spot_percent | 38.6 |
| sl_barrel_batted_rate | 13.3 |
| sl_hard_hit_percent | 51.6 |
| sl_exit_velocity_avg | 93.3 |
| sl_launch_angle_avg | 16.7 |
| sl_whiff_percent | 24.7 |
| 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.088 | 0.000 | 0.000 | Hitting_2B | 0.084 | 0.000 | -0.084 | 0.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 2.920 | 4.000 | 4.000 | Hitting_AB | 2.786 | 4.000 | 1.214 | 0.000 |
| predicted_AVG | 0.279 | 0.000 | 0.250 | Hitting_AVG | 0.230 | 0.500 | -0.230 | -0.500 |
| predicted_BB | 0.544 | 0.000 | 1.000 | Hitting_BB | 0.542 | 0.000 | -0.542 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.076 | 0.000 | -0.076 | 0.000 |
| predicted_H | 0.700 | 0.000 | 1.000 | Hitting_H | 0.641 | 2.000 | -0.641 | -2.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.053 | 0.000 | -0.053 | 0.000 |
| predicted_OBP | 0.357 | 0.000 | 0.400 | Hitting_OBP | 0.359 | 0.600 | -0.359 | -0.600 |
| predicted_R | 0.224 | 0.000 | 0.000 | Hitting_R | 0.229 | 0.000 | -0.229 | 0.000 |
| predicted_RBI | 0.370 | 0.000 | 0.000 | Hitting_RBI | 0.305 | 1.000 | -0.305 | -1.000 |
| predicted_SLG | 0.373 | 0.000 | 0.250 | Hitting_SLG | 0.318 | 0.500 | -0.318 | -0.500 |
| predicted_SO | 0.784 | 0.000 | 1.000 | Hitting_SO | 0.748 | 1.000 | -0.748 | -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: 2.9200 -> 4.0000 (boost 1.0800, better) |
| Biggest Deboost | predicted_SO: 0.7840 -> 0.0000 (deboost -0.7840, 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: 2.9200 -> 4.0377 (boost 1.1177, 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.3703 -> 0.3425 (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 | 6 | 1 | 5 | 2 | 4 | predicted_BB: 0.6442 -> 1.0000 (boost 0.3558, better) | predicted_RBI: 0.4671 -> 0.0000 (deboost -0.4671, worse) | AB rounded to 4 (raw=4.04), rates preserved: AVG=0.252 HR/AB=0.021 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.3567 -> 0.0000 (deboost -0.3567, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 2 | 1 | 1 | 1 | 1 | predicted_OBP: 0.3551 -> 0.4000 (boost 0.0449, better) | predicted_SLG: 0.3425 -> 0.2500 (deboost -0.0925, 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_BB: 1.0000 -> 0.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 2 | 1 | 1 | 1 | 1 | predicted_SLG: 0.2500 -> 0.3425 (boost 0.0925, better) | predicted_OBP: 0.4000 -> 0.3551 (deboost -0.0449, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "657041",
"player_name": "Lane Thomas",
"position": "RF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.088,
"predicted_3B": 0.0,
"predicted_AB": 2.92,
"predicted_AVG": 0.279,
"predicted_BB": 0.544,
"predicted_H": 0.7,
"predicted_HR": 0.07,
"predicted_OBP": 0.357,
"predicted_R": 0.224,
"predicted_RBI": 0.37,
"predicted_SLG": 0.373,
"predicted_SO": 0.784
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1143,
"predicted_3B": 0.0004,
"predicted_AB": 4.0377,
"predicted_AVG": 0.2793,
"predicted_BB": 0.6536,
"predicted_H": 1.0628,
"predicted_HBP": 0.163,
"predicted_HR": 0.0873,
"predicted_OBP": 0.3695,
"predicted_R": 0.3836,
"predicted_RBI": 0.5024,
"predicted_SLG": 0.3703,
"predicted_SO": 1.0734
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.088,
"after": 0.1143,
"delta": 0.0263,
"percent_delta": 0.2989,
"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.92,
"after": 4.0377,
"delta": 1.1177,
"percent_delta": 0.3828,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.279,
"after": 0.2793,
"delta": 0.0003,
"percent_delta": 0.0011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.544,
"after": 0.6536,
"delta": 0.1096,
"percent_delta": 0.2015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 1.0628,
"delta": 0.3628,
"percent_delta": 0.5183,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0873,
"delta": 0.0173,
"percent_delta": 0.2471,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.3695,
"delta": 0.0125,
"percent_delta": 0.035,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.224,
"after": 0.3836,
"delta": 0.1596,
"percent_delta": 0.7125,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.37,
"after": 0.5024,
"delta": 0.1324,
"percent_delta": 0.3578,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.373,
"after": 0.3703,
"delta": -0.0027,
"percent_delta": -0.0072,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.784,
"after": 1.0734,
"delta": 0.2894,
"percent_delta": 0.3691,
"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.92,
"after": 4.0377,
"delta": 1.1177,
"percent_delta": 0.3828,
"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": 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.1143,
"predicted_3B": 0.0004,
"predicted_AB": 4.0377,
"predicted_AVG": 0.2522,
"predicted_BB": 0.6442,
"predicted_H": 1.0184,
"predicted_HBP": 0.163,
"predicted_HR": 0.0831,
"predicted_OBP": 0.3551,
"predicted_R": 0.3567,
"predicted_RBI": 0.4671,
"predicted_SLG": 0.3425,
"predicted_SO": 1.0889
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1143,
"after": 0.1143,
"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.0377,
"after": 4.0377,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2793,
"after": 0.2522,
"delta": -0.0271,
"percent_delta": -0.097,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.6536,
"after": 0.6442,
"delta": -0.0094,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0628,
"after": 1.0184,
"delta": -0.0444,
"percent_delta": -0.0418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.163,
"after": 0.163,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0873,
"after": 0.0831,
"delta": -0.0042,
"percent_delta": -0.0481,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3695,
"after": 0.3551,
"delta": -0.0144,
"percent_delta": -0.039,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.3836,
"after": 0.3567,
"delta": -0.0269,
"percent_delta": -0.0701,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.5024,
"after": 0.4671,
"delta": -0.0353,
"percent_delta": -0.0703,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3703,
"after": 0.3425,
"delta": -0.0278,
"percent_delta": -0.0751,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0734,
"after": 1.0889,
"delta": 0.0155,
"percent_delta": 0.0144,
"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.3703,
"after": 0.3425,
"delta": -0.0278,
"percent_delta": -0.0751,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.04), rates preserved: AVG=0.252 HR/AB=0.021",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1143,
"after": 0.0,
"delta": -0.1143,
"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.0377,
"after": 4.0,
"delta": -0.0377,
"percent_delta": -0.0093,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.6442,
"after": 1.0,
"delta": 0.3558,
"percent_delta": 0.5523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 1.0184,
"after": 1.0,
"delta": -0.0184,
"percent_delta": -0.0181,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.163,
"after": 0.0,
"delta": -0.163,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.0831,
"after": 0.0,
"delta": -0.0831,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4671,
"after": 0.0,
"delta": -0.4671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.0889,
"after": 1.0,
"delta": -0.0889,
"percent_delta": -0.0816,
"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.6442,
"after": 1.0,
"delta": 0.3558,
"percent_delta": 0.5523,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4671,
"after": 0.0,
"delta": -0.4671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.3567,
"after": 0.0,
"delta": -0.3567,
"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.3567,
"after": 0.0,
"delta": -0.3567,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 6,
"step": "embedded_savant_player_context",
"description": "Player Savant profile contributed to the team run-environment adjustment against the opposing starter",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_AVG": 0.25,
"predicted_BB": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.4,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SLG": 0.25,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2522,
"after": 0.25,
"delta": -0.0022,
"percent_delta": -0.0087,
"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.3551,
"after": 0.4,
"delta": 0.0449,
"percent_delta": 0.1264,
"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.3425,
"after": 0.25,
"delta": -0.0925,
"percent_delta": -0.2701,
"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.3551,
"after": 0.4,
"delta": 0.0449,
"percent_delta": 0.1264,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3425,
"after": 0.25,
"delta": -0.0925,
"percent_delta": -0.2701,
"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": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 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_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.2522,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.3551,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_RF": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3425,
"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.2522,
"delta": 0.0022,
"percent_delta": 0.0089,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "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.3551,
"delta": -0.0449,
"percent_delta": -0.1122,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 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.3425,
"delta": 0.0925,
"percent_delta": 0.37,
"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.3425,
"delta": 0.0925,
"percent_delta": 0.37,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.3551,
"delta": -0.0449,
"percent_delta": -0.1122,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "xgboost_raw",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.088,
"after": 0.0,
"delta": -0.088,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.92,
"after": 4.0,
"delta": 1.08,
"percent_delta": 0.3699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.279,
"after": 0.2522,
"delta": -0.0268,
"percent_delta": -0.0961,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.544,
"after": 0.0,
"delta": -0.544,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.7,
"after": 0.0,
"delta": -0.7,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.357,
"after": 0.3551,
"delta": -0.0019,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.224,
"after": 0.0,
"delta": -0.224,
"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.373,
"after": 0.3425,
"delta": -0.0305,
"percent_delta": -0.0818,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.784,
"after": 0.0,
"delta": -0.784,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 2,
"worse_metrics": 8,
"biggest_boost": {
"metric": "predicted_AB",
"before": 2.92,
"after": 4.0,
"delta": 1.08,
"percent_delta": 0.3699,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SO",
"before": 0.784,
"after": 0.0,
"delta": -0.784,
"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.088 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 2.920 | - |
| predicted_AVG | 0.279 | - |
| predicted_BB | 0.544 | - |
| predicted_H | 0.700 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.357 | - |
| predicted_R | 0.224 | - |
| predicted_RBI | 0.370 | - |
| predicted_SLG | 0.373 | - |
| predicted_SO | 0.784 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.114 | 0.026 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.038 | 1.118 |
| predicted_AVG | 0.279 | 0.000 |
| predicted_BB | 0.654 | 0.110 |
| predicted_H | 1.063 | 0.363 |
| predicted_HBP | 0.163 | - |
| predicted_HR | 0.087 | 0.017 |
| predicted_OBP | 0.369 | 0.013 |
| predicted_R | 0.384 | 0.160 |
| predicted_RBI | 0.502 | 0.132 |
| predicted_SLG | 0.370 | -0.003 |
| predicted_SO | 1.073 | 0.289 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.114 | 0.000 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 4.038 | 0.000 |
| predicted_AVG | 0.252 | -0.027 |
| predicted_BB | 0.644 | -0.009 |
| predicted_H | 1.018 | -0.044 |
| predicted_HBP | 0.163 | 0.000 |
| predicted_HR | 0.083 | -0.004 |
| predicted_OBP | 0.355 | -0.014 |
| predicted_R | 0.357 | -0.027 |
| predicted_RBI | 0.467 | -0.035 |
| predicted_SLG | 0.343 | -0.028 |
| predicted_SO | 1.089 | 0.016 |
AB rounded to 4 (raw=4.04), rates preserved: AVG=0.252 HR/AB=0.021
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.000 | - |
| BB | 1.000 | - |
| H | 1.000 | - |
| HBP | 0.000 | - |
| HR | 0.000 | - |
| RBI | 0.000 | - |
| SB | 0.000 | - |
| SO | 1.000 | - |
Enforced H<=AB, HR<=H, safety nets, derived R
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 1.000 | 0.000 |
| CS | 0.000 | - |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| R | 0.000 | - |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | - |
| SO | 1.000 | 0.000 |
Player Savant profile contributed to the team run-environment adjustment against the opposing starter
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.000 | -0.114 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 4.000 | -0.038 |
| predicted_AVG | 0.250 | -0.002 |
| predicted_BB | 1.000 | 0.356 |
| predicted_H | 1.000 | -0.018 |
| predicted_HR | 0.000 | -0.083 |
| predicted_OBP | 0.400 | 0.045 |
| predicted_R | 0.000 | -0.357 |
| predicted_RBI | 0.000 | -0.467 |
| predicted_SLG | 0.250 | -0.093 |
| predicted_SO | 1.000 | -0.089 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 4.000 | 0.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 0.000 | -1.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 4.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 0.000 | -1.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 13.000 | 5.000 | 0.000 | 0.000 | 0.000 | 1.000 | 2.000 | 1.000 | 4.000 | 0.3846 | 0.4667 | 0.3846 | 0.3846 | 0.0000 | 0.0769 | 0.0769 | 0.3077 |
| last_10 | 0.20 | 10 | - | 27.000 | 9.000 | 1.000 | 0.000 | 1.000 | 6.000 | 4.000 | 3.000 | 6.000 | 0.3333 | 0.4194 | 0.4815 | 0.3333 | 0.0370 | 0.2222 | 0.1111 | 0.2222 |
| season | 0.60 | 48 | - | 365.000 | 84.000 | 11.000 | 0.000 | 7.000 | 38.000 | 28.000 | 68.000 | 98.000 | 0.2301 | 0.3560 | 0.3178 | 0.2301 | 0.0192 | 0.1041 | 0.1863 | 0.2685 |
| Metric | Value |
|---|---|
| predicted_2B | 0.1490 |
| predicted_3B | 0.0010 |
| predicted_AB | 5.5110 |
| predicted_AVG | 0.2796 |
| predicted_BB | 0.7980 |
| predicted_H | 1.5410 |
| predicted_HBP | 0.1630 |
| predicted_HR | 0.1100 |
| predicted_OBP | 0.3859 |
| predicted_R | 0.5940 |
| predicted_RBI | 0.6770 |
| predicted_SLG | 0.3668 |
| predicted_SO | 1.4550 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.0880 | 0.1490 | 0.1143 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 2.9200 | 5.5110 | 4.0377 | model_form_blend |
| predicted_AVG | 0.2790 | 0.2796 | 0.2793 | model_form_blend |
| predicted_BB | 0.5440 | 0.7980 | 0.6536 | model_form_blend |
| predicted_H | 0.7000 | 1.5410 | 1.0628 | model_form_blend |
| predicted_HBP | - | 0.1630 | 0.1630 | form_only |
| predicted_HR | 0.0700 | 0.1100 | 0.0873 | model_form_blend |
| predicted_OBP | 0.3570 | 0.3859 | 0.3695 | model_form_blend |
| predicted_R | 0.2240 | 0.5940 | 0.3836 | model_form_blend |
| predicted_RBI | 0.3700 | 0.6770 | 0.5024 | model_form_blend |
| predicted_SLG | 0.3730 | 0.3668 | 0.3703 | model_form_blend |
| predicted_SO | 0.7840 | 1.4550 | 1.0734 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 131 |
| Season rows before report date | 131 |
| Report year | 2026 |
| Profile rows used | 125 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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.23 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 4 |
| Hitting_AVG | 0.5 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 2 |
| 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 | 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 | CF |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 657041 |
| playerID | 657041 |
| playerName | Lane Thomas |
| pos | CF |
| started | True |
| startingPosition | CF |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 21.1 |
| sl_bb_percent | 15.8 |
| sl_woba | 0.317 |
| sl_xwoba | 0.312 |
| sl_xba | 0.226 |
| sl_xslg | 0.316 |
| sl_sweet_spot_percent | 37.2 |
| sl_barrel_batted_rate | 3.2 |
| sl_hard_hit_percent | 35.1 |
| sl_exit_velocity_avg | 86.6 |
| sl_launch_angle_avg | 23.4 |
| sl_whiff_percent | 21.2 |
| 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.163 | 0.000 | 0.000 | Hitting_2B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_3B | 0.019 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.549 | 3.000 | 4.000 | Hitting_AB | 0.000 | 0.000 | 3.000 | 3.000 |
| predicted_AVG | 0.304 | 0.000 | 0.250 | Hitting_AVG | - | - | - | - |
| predicted_BB | 0.374 | 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.200 | 0.000 | 1.000 | Hitting_H | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_HR | 0.030 | 0.000 | 0.000 | Hitting_HR | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_OBP | 0.304 | 0.000 | 0.250 | Hitting_OBP | - | - | - | - |
| predicted_R | 0.493 | 0.000 | 0.000 | Hitting_R | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_RBI | 0.130 | 0.000 | 0.000 | Hitting_RBI | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_SLG | 0.398 | 0.000 | 0.250 | Hitting_SLG | - | - | - | - |
| predicted_SO | 0.917 | 1.000 | 1.000 | Hitting_SO | 0.000 | 0.000 | 1.000 | 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 | 0 |
| Worse Metrics | 10 |
| Biggest Boost | predicted_SO: 0.9170 -> 1.0000 (boost 0.0830, worse) |
| Biggest Deboost | predicted_AB: 3.5490 -> 3.0000 (deboost -0.5490, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 4 | 3 | 1 | 3 | 1 | predicted_H: 0.2000 -> 0.3210 (boost 0.1210, better) | predicted_AVG: 0.3040 -> 0.2956 (deboost -0.0084, 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.3997 -> 0.1785 (deboost -0.2212, 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_AB: 3.5991 -> 4.0000 (boost 0.4009, better) | predicted_BB: 0.3568 -> 0.0000 (deboost -0.3568, worse) | AB rounded to 4 (raw=3.60), rates preserved: AVG=0.085 HR/AB=0.012 |
| 5 | consistency_constraints | 2 | 1 | 1 | 1 | 1 | predicted_H: 0.0000 -> 1.0000 (boost 1.0000, better) | predicted_R: 0.4592 -> 0.0000 (deboost -0.4592, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 3 | 0 | 3 | 0 | predicted_AVG: 0.0855 -> 0.2500 (boost 0.1645, better) | - | 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: 4.0000 -> 3.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.2500 -> 0.0855 (deboost -0.1645, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "670224",
"player_name": "Kameron Misner",
"position": "CF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.163,
"predicted_3B": 0.019,
"predicted_AB": 3.549,
"predicted_AVG": 0.304,
"predicted_BB": 0.374,
"predicted_H": 0.2,
"predicted_HR": 0.03,
"predicted_OBP": 0.304,
"predicted_R": 0.493,
"predicted_RBI": 0.13,
"predicted_SLG": 0.398,
"predicted_SO": 0.917
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.1671,
"predicted_3B": 0.0184,
"predicted_AB": 3.5991,
"predicted_AVG": 0.2956,
"predicted_BB": 0.362,
"predicted_H": 0.321,
"predicted_HBP": 0.035,
"predicted_HR": 0.0459,
"predicted_OBP": 0.3055,
"predicted_R": 0.4939,
"predicted_RBI": 0.1895,
"predicted_SLG": 0.3997,
"predicted_SO": 0.9069
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.163,
"after": 0.1671,
"delta": 0.0041,
"percent_delta": 0.0252,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.019,
"after": 0.0184,
"delta": -0.0006,
"percent_delta": -0.0316,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.549,
"after": 3.5991,
"delta": 0.0501,
"percent_delta": 0.0141,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.304,
"after": 0.2956,
"delta": -0.0084,
"percent_delta": -0.0276,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.374,
"after": 0.362,
"delta": -0.012,
"percent_delta": -0.0321,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.2,
"after": 0.321,
"delta": 0.121,
"percent_delta": 0.605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.03,
"after": 0.0459,
"delta": 0.0159,
"percent_delta": 0.53,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.304,
"after": 0.3055,
"delta": 0.0015,
"percent_delta": 0.0049,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.4939,
"delta": 0.0009,
"percent_delta": 0.0018,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.1895,
"delta": 0.0595,
"percent_delta": 0.4577,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.3997,
"delta": 0.0017,
"percent_delta": 0.0043,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.917,
"after": 0.9069,
"delta": -0.0101,
"percent_delta": -0.011,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 3,
"deboosted_metrics": 1,
"better_metrics": 3,
"worse_metrics": 1,
"biggest_boost": {
"metric": "predicted_H",
"before": 0.2,
"after": 0.321,
"delta": 0.121,
"percent_delta": 0.605,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.304,
"after": 0.2956,
"delta": -0.0084,
"percent_delta": -0.0276,
"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.1671,
"predicted_3B": 0.0184,
"predicted_AB": 3.5991,
"predicted_AVG": 0.0855,
"predicted_BB": 0.3568,
"predicted_H": 0.3076,
"predicted_HBP": 0.035,
"predicted_HR": 0.0437,
"predicted_OBP": 0.1679,
"predicted_R": 0.4592,
"predicted_RBI": 0.1762,
"predicted_SLG": 0.1785,
"predicted_SO": 0.92
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.1671,
"after": 0.1671,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0184,
"after": 0.0184,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5991,
"after": 3.5991,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2956,
"after": 0.0855,
"delta": -0.2101,
"percent_delta": -0.7108,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.362,
"after": 0.3568,
"delta": -0.0052,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.321,
"after": 0.3076,
"delta": -0.0134,
"percent_delta": -0.0417,
"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.0459,
"after": 0.0437,
"delta": -0.0022,
"percent_delta": -0.0479,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3055,
"after": 0.1679,
"delta": -0.1376,
"percent_delta": -0.4504,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4939,
"after": 0.4592,
"delta": -0.0347,
"percent_delta": -0.0703,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1895,
"after": 0.1762,
"delta": -0.0133,
"percent_delta": -0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3997,
"after": 0.1785,
"delta": -0.2212,
"percent_delta": -0.5534,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.9069,
"after": 0.92,
"delta": 0.0131,
"percent_delta": 0.0144,
"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.3997,
"after": 0.1785,
"delta": -0.2212,
"percent_delta": -0.5534,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=3.60), rates preserved: AVG=0.085 HR/AB=0.012",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.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.1671,
"after": 0.0,
"delta": -0.1671,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0184,
"after": 0.0,
"delta": -0.0184,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.5991,
"after": 4.0,
"delta": 0.4009,
"percent_delta": 0.1114,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.3568,
"after": 0.0,
"delta": -0.3568,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.3076,
"after": 0.0,
"delta": -0.3076,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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.0437,
"after": 0.0,
"delta": -0.0437,
"percent_delta": -1.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.1762,
"after": 0.0,
"delta": -0.1762,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"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": 6,
"boosted_metrics": 2,
"deboosted_metrics": 4,
"better_metrics": 1,
"worse_metrics": 5,
"biggest_boost": {
"metric": "predicted_AB",
"before": 3.5991,
"after": 4.0,
"delta": 0.4009,
"percent_delta": 0.1114,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_BB",
"before": 0.3568,
"after": 0.0,
"delta": -0.3568,
"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": 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.4592,
"after": 0.0,
"delta": -0.4592,
"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.4592,
"after": 0.0,
"delta": -0.4592,
"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.0855,
"after": 0.25,
"delta": 0.1645,
"percent_delta": 1.924,
"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.1679,
"after": 0.25,
"delta": 0.0821,
"percent_delta": 0.489,
"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.1785,
"after": 0.25,
"delta": 0.0715,
"percent_delta": 0.4006,
"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.0855,
"after": 0.25,
"delta": 0.1645,
"percent_delta": 1.924,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 7,
"step": "simulation_box_score_reference",
"description": "Attached simulation box score without overwriting model prediction",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 3.0,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"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": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 2,
"boosted_metrics": 0,
"deboosted_metrics": 2,
"better_metrics": 0,
"worse_metrics": 2,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 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.0855,
"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.1679,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.1785,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.0855,
"delta": -0.1645,
"percent_delta": -0.6582,
"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.1679,
"delta": -0.0821,
"percent_delta": -0.3282,
"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.1785,
"delta": -0.0715,
"percent_delta": -0.2858,
"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.25,
"after": 0.0855,
"delta": -0.1645,
"percent_delta": -0.6582,
"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.163,
"after": 0.0,
"delta": -0.163,
"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.549,
"after": 3.0,
"delta": -0.549,
"percent_delta": -0.1547,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.304,
"after": 0.0855,
"delta": -0.2185,
"percent_delta": -0.7187,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.374,
"after": 0.0,
"delta": -0.374,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.2,
"after": 0.0,
"delta": -0.2,
"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.304,
"after": 0.1679,
"delta": -0.1361,
"percent_delta": -0.4477,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.493,
"after": 0.0,
"delta": -0.493,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.13,
"after": 0.0,
"delta": -0.13,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.398,
"after": 0.1785,
"delta": -0.2195,
"percent_delta": -0.5515,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.917,
"after": 1.0,
"delta": 0.083,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "worse",
"material": true
}
],
"summary": {
"changed_metrics": 10,
"boosted_metrics": 1,
"deboosted_metrics": 9,
"better_metrics": 0,
"worse_metrics": 10,
"biggest_boost": {
"metric": "predicted_SO",
"before": 0.917,
"after": 1.0,
"delta": 0.083,
"percent_delta": 0.0905,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 3.549,
"after": 3.0,
"delta": -0.549,
"percent_delta": -0.1547,
"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.163 | - |
| predicted_3B | 0.019 | - |
| predicted_AB | 3.549 | - |
| predicted_AVG | 0.304 | - |
| predicted_BB | 0.374 | - |
| predicted_H | 0.200 | - |
| predicted_HR | 0.030 | - |
| predicted_OBP | 0.304 | - |
| predicted_R | 0.493 | - |
| predicted_RBI | 0.130 | - |
| predicted_SLG | 0.398 | - |
| predicted_SO | 0.917 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.167 | 0.004 |
| predicted_3B | 0.018 | -0.001 |
| predicted_AB | 3.599 | 0.050 |
| predicted_AVG | 0.296 | -0.008 |
| predicted_BB | 0.362 | -0.012 |
| predicted_H | 0.321 | 0.121 |
| predicted_HBP | 0.035 | - |
| predicted_HR | 0.046 | 0.016 |
| predicted_OBP | 0.305 | 0.002 |
| predicted_R | 0.494 | 0.001 |
| predicted_RBI | 0.190 | 0.059 |
| predicted_SLG | 0.400 | 0.002 |
| predicted_SO | 0.907 | -0.010 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.167 | 0.000 |
| predicted_3B | 0.018 | 0.000 |
| predicted_AB | 3.599 | 0.000 |
| predicted_AVG | 0.086 | -0.210 |
| predicted_BB | 0.357 | -0.005 |
| predicted_H | 0.308 | -0.013 |
| predicted_HBP | 0.035 | 0.000 |
| predicted_HR | 0.044 | -0.002 |
| predicted_OBP | 0.168 | -0.138 |
| predicted_R | 0.459 | -0.035 |
| predicted_RBI | 0.176 | -0.013 |
| predicted_SLG | 0.178 | -0.221 |
| predicted_SO | 0.920 | 0.013 |
AB rounded to 4 (raw=3.60), rates preserved: AVG=0.085 HR/AB=0.012
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | - |
| 3B | 0.000 | - |
| AB | 4.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 | 4.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.167 |
| predicted_3B | 0.000 | -0.018 |
| predicted_AB | 4.000 | 0.401 |
| predicted_AVG | 0.250 | 0.164 |
| predicted_BB | 0.000 | -0.357 |
| predicted_H | 1.000 | 0.692 |
| predicted_HR | 0.000 | -0.044 |
| predicted_OBP | 0.250 | 0.082 |
| predicted_R | 0.000 | -0.459 |
| predicted_RBI | 0.000 | -0.176 |
| predicted_SLG | 0.250 | 0.072 |
| 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 | 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 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| last_10 | 0.20 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| season | 0.60 | 0 | - | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | - | - | - | - | - | - | - | - |
| Metric | Value |
|---|---|
| predicted_2B | 0.1890 |
| predicted_3B | 0.0150 |
| predicted_AB | 3.8670 |
| predicted_AVG | 0.2504 |
| predicted_BB | 0.2980 |
| predicted_H | 0.9680 |
| predicted_HBP | 0.0350 |
| predicted_HR | 0.1310 |
| predicted_OBP | 0.3135 |
| predicted_R | 0.4990 |
| predicted_RBI | 0.5080 |
| predicted_SLG | 0.4089 |
| predicted_SO | 0.8530 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1630 | 0.1890 | 0.1671 | model_form_blend |
| predicted_3B | 0.0190 | 0.0150 | 0.0184 | model_form_blend |
| predicted_AB | 3.5490 | 3.8670 | 3.5991 | model_form_blend |
| predicted_AVG | 0.3040 | 0.2504 | 0.2956 | model_form_blend |
| predicted_BB | 0.3740 | 0.2980 | 0.3620 | model_form_blend |
| predicted_H | 0.2000 | 0.9680 | 0.3210 | model_form_blend |
| predicted_HBP | - | 0.0350 | 0.0350 | form_only |
| predicted_HR | 0.0300 | 0.1310 | 0.0459 | model_form_blend |
| predicted_OBP | 0.3040 | 0.3135 | 0.3055 | model_form_blend |
| predicted_R | 0.4930 | 0.4990 | 0.4939 | model_form_blend |
| predicted_RBI | 0.1300 | 0.5080 | 0.1895 | model_form_blend |
| predicted_SLG | 0.3980 | 0.4089 | 0.3997 | model_form_blend |
| predicted_SO | 0.9170 | 0.8530 | 0.9069 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 1 |
| Season rows before report date | 1 |
| Report year | 2026 |
| Profile rows used | 0 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, Hitting_OBP, Hitting_SLG, Hitting_BB, Hitting_SO, Hitting_2B, Hitting_3B, Hitting_R, BaseRunning_SB, BaseRunning_CS |
| Simulation Box Score Field | Value |
|---|---|
| PA | 3 |
| AB | 3 |
| H | 0 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| 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 | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 7 |
| Hitting_substitutionOrder | 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 |
| gameID | 20260610_TEX@KC |
| game_type | ph |
| mlbID | 670224 |
| note | Ran for Caglianone in the 10th. |
| playerID | 670224 |
| playerName | Kameron Misner |
| pos | CF |
| started | False |
| startingPosition | PR |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| Metric | 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 | 1.000 | -0.244 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.177 | 3.000 | 4.000 | Hitting_AB | 3.102 | 4.000 | -0.102 | -1.000 |
| predicted_AVG | 0.265 | 0.333 | 0.250 | Hitting_AVG | 0.244 | 0.250 | 0.090 | 0.083 |
| predicted_BB | 0.097 | 0.000 | 0.000 | Hitting_BB | 0.094 | 0.000 | -0.094 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_H | 0.310 | 1.000 | 1.000 | Hitting_H | 0.756 | 1.000 | 0.244 | 0.000 |
| predicted_HR | 0.060 | 0.000 | 0.000 | Hitting_HR | 0.102 | 0.000 | -0.102 | 0.000 |
| predicted_OBP | 0.281 | 0.333 | 0.250 | Hitting_OBP | 0.260 | 0.250 | 0.074 | 0.083 |
| predicted_R | 0.339 | 0.000 | 0.000 | Hitting_R | 0.331 | 0.000 | -0.331 | 0.000 |
| predicted_RBI | 0.180 | 0.000 | 0.000 | Hitting_RBI | 0.417 | 0.000 | -0.417 | 0.000 |
| predicted_SB | - | 0.000 | 0.000 | BaseRunning_SB | 0.031 | 0.000 | -0.031 | 0.000 |
| predicted_SLG | 0.454 | 0.333 | 0.250 | Hitting_SLG | 0.421 | 0.500 | -0.088 | -0.167 |
| predicted_SO | 0.605 | 1.000 | 1.000 | Hitting_SO | 0.591 | 0.000 | 0.409 | 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_H: 0.3100 -> 1.0000 (boost 0.6900, better) |
| Biggest Deboost | predicted_R: 0.3390 -> 0.0000 (deboost -0.3390, 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.1770 -> 4.4525 (boost 1.2755, 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.4672 -> 0.3687 (deboost -0.0985, 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.7464 -> 1.0000 (boost 0.2536, worse) | predicted_AB: 4.4525 -> 4.0000 (deboost -0.4525, worse) | AB rounded to 4 (raw=4.45), rates preserved: AVG=0.196 HR/AB=0.034 |
| 5 | consistency_constraints | 1 | 0 | 1 | 0 | 1 | - | predicted_R: 0.4401 -> 0.0000 (deboost -0.4401, worse) | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_AVG: 0.1957 -> 0.2500 (boost 0.0543, better) | predicted_SLG: 0.3687 -> 0.2500 (deboost -0.1187, 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: 4.0000 -> 3.0000 (deboost -1.0000, worse) | Attached simulation box score without overwriting model prediction |
| 8 | current_json_final | 3 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3687 (boost 0.1187, better) | predicted_AVG: 0.2500 -> 0.1957 (deboost -0.0543, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686681",
"player_name": "Michael Massey",
"position": "2B",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.25,
"predicted_3B": 0.0,
"predicted_AB": 3.177,
"predicted_AVG": 0.265,
"predicted_BB": 0.097,
"predicted_H": 0.31,
"predicted_HR": 0.06,
"predicted_OBP": 0.281,
"predicted_R": 0.339,
"predicted_RBI": 0.18,
"predicted_SLG": 0.454,
"predicted_SO": 0.605
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3107,
"predicted_3B": 0.0009,
"predicted_AB": 4.4525,
"predicted_AVG": 0.2703,
"predicted_BB": 0.128,
"predicted_H": 0.9094,
"predicted_HBP": 0.004,
"predicted_HR": 0.1603,
"predicted_OBP": 0.2865,
"predicted_R": 0.4733,
"predicted_RBI": 0.4524,
"predicted_SLG": 0.4672,
"predicted_SO": 0.7358
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.25,
"after": 0.3107,
"delta": 0.0607,
"percent_delta": 0.2428,
"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.177,
"after": 4.4525,
"delta": 1.2755,
"percent_delta": 0.4015,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.2703,
"delta": 0.0053,
"percent_delta": 0.02,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.097,
"after": 0.128,
"delta": 0.031,
"percent_delta": 0.3196,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.31,
"after": 0.9094,
"delta": 0.5994,
"percent_delta": 1.9335,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.06,
"after": 0.1603,
"delta": 0.1003,
"percent_delta": 1.6717,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.281,
"after": 0.2865,
"delta": 0.0055,
"percent_delta": 0.0196,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.339,
"after": 0.4733,
"delta": 0.1343,
"percent_delta": 0.3962,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.4524,
"delta": 0.2724,
"percent_delta": 1.5133,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.4672,
"delta": 0.0132,
"percent_delta": 0.0291,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.605,
"after": 0.7358,
"delta": 0.1308,
"percent_delta": 0.2162,
"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.177,
"after": 4.4525,
"delta": 1.2755,
"percent_delta": 0.4015,
"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": 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.3107,
"predicted_3B": 0.0009,
"predicted_AB": 4.4525,
"predicted_AVG": 0.1957,
"predicted_BB": 0.1262,
"predicted_H": 0.8714,
"predicted_HBP": 0.004,
"predicted_HR": 0.1527,
"predicted_OBP": 0.2179,
"predicted_R": 0.4401,
"predicted_RBI": 0.4206,
"predicted_SLG": 0.3687,
"predicted_SO": 0.7464
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3107,
"after": 0.3107,
"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.4525,
"after": 4.4525,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2703,
"after": 0.1957,
"delta": -0.0746,
"percent_delta": -0.276,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.128,
"after": 0.1262,
"delta": -0.0018,
"percent_delta": -0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9094,
"after": 0.8714,
"delta": -0.038,
"percent_delta": -0.0418,
"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.1603,
"after": 0.1527,
"delta": -0.0076,
"percent_delta": -0.0474,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.2865,
"after": 0.2179,
"delta": -0.0686,
"percent_delta": -0.2394,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.4733,
"after": 0.4401,
"delta": -0.0332,
"percent_delta": -0.0701,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4524,
"after": 0.4206,
"delta": -0.0318,
"percent_delta": -0.0703,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.4672,
"after": 0.3687,
"delta": -0.0985,
"percent_delta": -0.2108,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7358,
"after": 0.7464,
"delta": 0.0106,
"percent_delta": 0.0144,
"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.4672,
"after": 0.3687,
"delta": -0.0985,
"percent_delta": -0.2108,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 4 (raw=4.45), rates preserved: AVG=0.196 HR/AB=0.034",
"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.3107,
"after": 0.0,
"delta": -0.3107,
"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.4525,
"after": 4.0,
"delta": -0.4525,
"percent_delta": -0.1016,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.1262,
"after": 0.0,
"delta": -0.1262,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8714,
"after": 1.0,
"delta": 0.1286,
"percent_delta": 0.1476,
"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.1527,
"after": 0.0,
"delta": -0.1527,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4206,
"after": 0.0,
"delta": -0.4206,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.7464,
"after": 1.0,
"delta": 0.2536,
"percent_delta": 0.3398,
"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.7464,
"after": 1.0,
"delta": 0.2536,
"percent_delta": 0.3398,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AB",
"before": 4.4525,
"after": 4.0,
"delta": -0.4525,
"percent_delta": -0.1016,
"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.4401,
"after": 0.0,
"delta": -0.4401,
"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.4401,
"after": 0.0,
"delta": -0.4401,
"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.1957,
"after": 0.25,
"delta": 0.0543,
"percent_delta": 0.2775,
"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.2179,
"after": 0.25,
"delta": 0.0321,
"percent_delta": 0.1473,
"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.3687,
"after": 0.25,
"delta": -0.1187,
"percent_delta": -0.3219,
"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.1957,
"after": 0.25,
"delta": 0.0543,
"percent_delta": 0.2775,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.3687,
"after": 0.25,
"delta": -0.1187,
"percent_delta": -0.3219,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 1.0,
"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": 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.1957,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.2179,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3687,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.1957,
"delta": -0.0543,
"percent_delta": -0.2172,
"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.2179,
"delta": -0.0321,
"percent_delta": -0.1285,
"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.3687,
"delta": 0.1187,
"percent_delta": 0.475,
"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.3687,
"delta": 0.1187,
"percent_delta": 0.475,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.1957,
"delta": -0.0543,
"percent_delta": -0.2172,
"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.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.177,
"after": 3.0,
"delta": -0.177,
"percent_delta": -0.0557,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.265,
"after": 0.1957,
"delta": -0.0693,
"percent_delta": -0.2615,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.097,
"after": 0.0,
"delta": -0.097,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"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.281,
"after": 0.2179,
"delta": -0.0631,
"percent_delta": -0.2246,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.339,
"after": 0.0,
"delta": -0.339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.18,
"after": 0.0,
"delta": -0.18,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.454,
"after": 0.3687,
"delta": -0.0853,
"percent_delta": -0.1879,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.605,
"after": 1.0,
"delta": 0.395,
"percent_delta": 0.6529,
"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_H",
"before": 0.31,
"after": 1.0,
"delta": 0.69,
"percent_delta": 2.2258,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.339,
"after": 0.0,
"delta": -0.339,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.250 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.177 | - |
| predicted_AVG | 0.265 | - |
| predicted_BB | 0.097 | - |
| predicted_H | 0.310 | - |
| predicted_HR | 0.060 | - |
| predicted_OBP | 0.281 | - |
| predicted_R | 0.339 | - |
| predicted_RBI | 0.180 | - |
| predicted_SLG | 0.454 | - |
| predicted_SO | 0.605 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.311 | 0.061 |
| predicted_3B | 0.001 | 0.001 |
| predicted_AB | 4.452 | 1.275 |
| predicted_AVG | 0.270 | 0.005 |
| predicted_BB | 0.128 | 0.031 |
| predicted_H | 0.909 | 0.599 |
| predicted_HBP | 0.004 | - |
| predicted_HR | 0.160 | 0.100 |
| predicted_OBP | 0.286 | 0.005 |
| predicted_R | 0.473 | 0.134 |
| predicted_RBI | 0.452 | 0.272 |
| predicted_SLG | 0.467 | 0.013 |
| predicted_SO | 0.736 | 0.131 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.311 | 0.000 |
| predicted_3B | 0.001 | 0.000 |
| predicted_AB | 4.452 | 0.000 |
| predicted_AVG | 0.196 | -0.075 |
| predicted_BB | 0.126 | -0.002 |
| predicted_H | 0.871 | -0.038 |
| predicted_HBP | 0.004 | 0.000 |
| predicted_HR | 0.153 | -0.008 |
| predicted_OBP | 0.218 | -0.069 |
| predicted_R | 0.440 | -0.033 |
| predicted_RBI | 0.421 | -0.032 |
| predicted_SLG | 0.369 | -0.098 |
| predicted_SO | 0.746 | 0.011 |
AB rounded to 4 (raw=4.45), rates preserved: AVG=0.196 HR/AB=0.034
| 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.311 |
| predicted_3B | 0.000 | -0.001 |
| predicted_AB | 4.000 | -0.452 |
| predicted_AVG | 0.250 | 0.054 |
| predicted_BB | 0.000 | -0.126 |
| predicted_H | 1.000 | 0.129 |
| predicted_HR | 0.000 | -0.153 |
| predicted_OBP | 0.250 | 0.032 |
| predicted_R | 0.000 | -0.440 |
| predicted_RBI | 0.000 | -0.421 |
| predicted_SLG | 0.250 | -0.119 |
| predicted_SO | 1.000 | 0.254 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | 0.000 |
| CS | 0.000 | 0.000 |
| H | 1.000 | 0.000 |
| HBP | 0.000 | 0.000 |
| HR | 0.000 | 0.000 |
| PA | 3.000 | - |
| R | 0.000 | 0.000 |
| RBI | 0.000 | 0.000 |
| SB | 0.000 | 0.000 |
| SF | 0.000 | 0.000 |
| SO | 1.000 | 0.000 |
| Window | Weight | Games | Total PA | Total AB | Total H | Total 2B | Total 3B | Total HR | Total RBI | Total R | Total BB | Total SO | AVG | OBP | SLG | H_per_AB | HR_per_AB | RBI_per_AB | BB_per_AB | SO_per_AB |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.20 | 5 | - | 17.000 | 5.000 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 | 0.000 | 0.000 | 0.2941 | 0.2941 | 0.5294 | 0.2941 | 0.0588 | 0.0588 | 0.0000 | 0.0000 |
| last_10 | 0.20 | 10 | - | 35.000 | 13.000 | 1.000 | 0.000 | 3.000 | 7.000 | 5.000 | 1.000 | 5.000 | 0.3714 | 0.3889 | 0.6571 | 0.3714 | 0.0857 | 0.2000 | 0.0286 | 0.1429 |
| season | 0.60 | 48 | - | 394.000 | 96.000 | 31.000 | 0.000 | 13.000 | 53.000 | 42.000 | 12.000 | 75.000 | 0.2437 | 0.2596 | 0.4213 | 0.2437 | 0.0330 | 0.1345 | 0.0305 | 0.1904 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3910 |
| predicted_3B | 0.0020 |
| predicted_AB | 6.1410 |
| predicted_AVG | 0.2774 |
| predicted_BB | 0.1690 |
| predicted_H | 1.7030 |
| predicted_HBP | 0.0040 |
| predicted_HR | 0.2930 |
| predicted_OBP | 0.2938 |
| predicted_R | 0.6510 |
| predicted_RBI | 0.8130 |
| predicted_SLG | 0.4846 |
| predicted_SO | 0.9090 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2500 | 0.3910 | 0.3107 | model_form_blend |
| predicted_3B | 0.0000 | 0.0020 | 0.0009 | model_form_blend |
| predicted_AB | 3.1770 | 6.1410 | 4.4525 | model_form_blend |
| predicted_AVG | 0.2650 | 0.2774 | 0.2703 | model_form_blend |
| predicted_BB | 0.0970 | 0.1690 | 0.1280 | model_form_blend |
| predicted_H | 0.3100 | 1.7030 | 0.9094 | model_form_blend |
| predicted_HBP | - | 0.0040 | 0.0040 | form_only |
| predicted_HR | 0.0600 | 0.2930 | 0.1603 | model_form_blend |
| predicted_OBP | 0.2810 | 0.2938 | 0.2865 | model_form_blend |
| predicted_R | 0.3390 | 0.6510 | 0.4733 | model_form_blend |
| predicted_RBI | 0.1800 | 0.8130 | 0.4524 | model_form_blend |
| predicted_SLG | 0.4540 | 0.4846 | 0.4672 | model_form_blend |
| predicted_SO | 0.6050 | 0.9090 | 0.7358 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 127 |
| Season rows before report date | 127 |
| Report year | 2026 |
| Profile rows used | 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 | 3 |
| AB | 3 |
| H | 1 |
| 2B | 0 |
| 3B | 0 |
| HR | 0 |
| R | 0 |
| RBI | 0 |
| BB | 0 |
| SO | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.244 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 1 |
| Hitting_3B | 0 |
| Hitting_AB | 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 | 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 | 2B |
| gameID | 20260609_TEX@KC |
| game_type | full |
| mlbID | 686681 |
| playerID | 686681 |
| playerName | Michael Massey |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-09 |
| sl_k_percent | 18.0 |
| sl_bb_percent | 3.3 |
| sl_woba | 0.319 |
| sl_xwoba | 0.28 |
| sl_xba | 0.218 |
| sl_xslg | 0.405 |
| sl_sweet_spot_percent | 29.7 |
| sl_barrel_batted_rate | 8.5 |
| sl_hard_hit_percent | 44.1 |
| sl_exit_velocity_avg | 90.8 |
| sl_launch_angle_avg | 19.0 |
| sl_whiff_percent | 22.1 |
| sl_swing_percent | 52.3 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_2B | 0.253 | 0.000 | 0.000 | Hitting_2B | 0.247 | 0.000 | -0.247 | 0.000 |
| predicted_3B | 0.013 | 0.000 | 0.000 | Hitting_3B | 0.012 | 1.000 | -0.012 | -1.000 |
| predicted_AB | 2.975 | 3.000 | 4.000 | Hitting_AB | 2.901 | 4.000 | 0.099 | -1.000 |
| predicted_AVG | 0.259 | 0.333 | 0.250 | Hitting_AVG | 0.217 | 0.250 | 0.116 | 0.083 |
| predicted_BB | 0.418 | 0.000 | 1.000 | Hitting_BB | 0.420 | 1.000 | -0.420 | -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.630 | 1.000 | 0.370 | 0.000 |
| predicted_HR | 0.080 | 0.000 | 0.000 | Hitting_HR | 0.012 | 0.000 | -0.012 | 0.000 |
| predicted_OBP | 0.332 | 0.333 | 0.400 | Hitting_OBP | 0.330 | 0.400 | 0.004 | -0.067 |
| predicted_R | 0.519 | 0.000 | 1.000 | Hitting_R | 0.506 | 0.000 | -0.506 | 0.000 |
| predicted_RBI | 0.450 | 0.000 | 1.000 | Hitting_RBI | 0.642 | 1.000 | -0.642 | -1.000 |
| predicted_SLG | 0.416 | 0.333 | 0.250 | Hitting_SLG | 0.323 | 0.750 | 0.010 | -0.417 |
| predicted_SO | 0.367 | 1.000 | 1.000 | Hitting_SO | 0.358 | 1.000 | 0.642 | 0.000 |
| Impact Item | Value |
|---|---|
| From | xgboost_raw |
| To | current_json_final |
| Dominant Effect | worse |
| Changed Metrics | 10 |
| Boosted Metrics | 2 |
| Deboosted Metrics | 8 |
| Better Metrics | 1 |
| Worse Metrics | 9 |
| Biggest Boost | predicted_SO: 0.3670 -> 1.0000 (boost 0.6330, worse) |
| Biggest Deboost | predicted_R: 0.5190 -> 0.0000 (deboost -0.5190, 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: 2.9750 -> 4.0608 (boost 1.0858, better) | predicted_AVG: 0.2590 -> 0.2510 (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 | 4 | 0 | 4 | 0 | 4 | - | predicted_RBI: 0.7365 -> 0.6848 (deboost -0.0517, 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: 0.5675 -> 1.0000 (boost 0.4325, worse) | predicted_2B: 0.3036 -> 0.0000 (deboost -0.3036, worse) | AB rounded to 4 (raw=4.06), rates preserved: AVG=0.221 HR/AB=0.023 |
| 5 | consistency_constraints | 1 | 1 | 0 | 1 | 0 | predicted_R: 0.6199 -> 1.0000 (boost 0.3801, better) | - | Enforced H<=AB, HR<=H, safety nets, derived R |
| 6 | embedded_savant_player_context | 3 | 2 | 1 | 2 | 1 | predicted_OBP: 0.3190 -> 0.4000 (boost 0.0810, better) | predicted_SLG: 0.3900 -> 0.2500 (deboost -0.1400, 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 | 1 | 2 | 1 | 2 | predicted_SLG: 0.2500 -> 0.3900 (boost 0.1400, better) | predicted_OBP: 0.4000 -> 0.3190 (deboost -0.0810, worse) | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "679845",
"player_name": "Nick Loftin",
"position": "3B",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.253,
"predicted_3B": 0.013,
"predicted_AB": 2.975,
"predicted_AVG": 0.259,
"predicted_BB": 0.418,
"predicted_H": 0.65,
"predicted_HR": 0.08,
"predicted_OBP": 0.332,
"predicted_R": 0.519,
"predicted_RBI": 0.45,
"predicted_SLG": 0.416,
"predicted_SO": 0.367
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.3036,
"predicted_3B": 0.0518,
"predicted_AB": 4.0608,
"predicted_AVG": 0.251,
"predicted_BB": 0.5914,
"predicted_H": 0.9378,
"predicted_HBP": 0.107,
"predicted_HR": 0.0973,
"predicted_OBP": 0.3369,
"predicted_R": 0.6667,
"predicted_RBI": 0.7365,
"predicted_SLG": 0.4138,
"predicted_SO": 0.5594
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.253,
"after": 0.3036,
"delta": 0.0506,
"percent_delta": 0.2,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.013,
"after": 0.0518,
"delta": 0.0388,
"percent_delta": 2.9846,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 2.975,
"after": 4.0608,
"delta": 1.0858,
"percent_delta": 0.365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.251,
"delta": -0.008,
"percent_delta": -0.0309,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.418,
"after": 0.5914,
"delta": 0.1734,
"percent_delta": 0.4148,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.65,
"after": 0.9378,
"delta": 0.2878,
"percent_delta": 0.4428,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.08,
"after": 0.0973,
"delta": 0.0173,
"percent_delta": 0.2162,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.3369,
"delta": 0.0049,
"percent_delta": 0.0148,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.519,
"after": 0.6667,
"delta": 0.1477,
"percent_delta": 0.2846,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.45,
"after": 0.7365,
"delta": 0.2865,
"percent_delta": 0.6367,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.4138,
"delta": -0.0022,
"percent_delta": -0.0053,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.367,
"after": 0.5594,
"delta": 0.1924,
"percent_delta": 0.5243,
"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": 2.975,
"after": 4.0608,
"delta": 1.0858,
"percent_delta": 0.365,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.251,
"delta": -0.008,
"percent_delta": -0.0309,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 32
}
},
{
"index": 3,
"step": "team_form_snapshot",
"description": "Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)",
"stats": {
"predicted_2B": 0.3036,
"predicted_3B": 0.0518,
"predicted_AB": 4.0608,
"predicted_AVG": 0.2213,
"predicted_BB": 0.5829,
"predicted_H": 0.8986,
"predicted_HBP": 0.107,
"predicted_HR": 0.0927,
"predicted_OBP": 0.319,
"predicted_R": 0.6199,
"predicted_RBI": 0.6848,
"predicted_SLG": 0.39,
"predicted_SO": 0.5675
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.3036,
"after": 0.3036,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0518,
"after": 0.0518,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0608,
"after": 4.0608,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.251,
"after": 0.2213,
"delta": -0.0297,
"percent_delta": -0.1183,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5914,
"after": 0.5829,
"delta": -0.0085,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 0.9378,
"after": 0.8986,
"delta": -0.0392,
"percent_delta": -0.0418,
"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.0973,
"after": 0.0927,
"delta": -0.0046,
"percent_delta": -0.0473,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3369,
"after": 0.319,
"delta": -0.0179,
"percent_delta": -0.0531,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.6667,
"after": 0.6199,
"delta": -0.0468,
"percent_delta": -0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.7365,
"after": 0.6848,
"delta": -0.0517,
"percent_delta": -0.0702,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.4138,
"after": 0.39,
"delta": -0.0238,
"percent_delta": -0.0575,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5594,
"after": 0.5675,
"delta": 0.0081,
"percent_delta": 0.0145,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 4,
"boosted_metrics": 0,
"deboosted_metrics": 4,
"better_metrics": 0,
"worse_metrics": 4,
"biggest_boost": null,
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.7365,
"after": 0.6848,
"delta": -0.0517,
"percent_delta": -0.0702,
"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.221 HR/AB=0.023",
"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.3036,
"after": 0.0,
"delta": -0.3036,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_3B",
"before": 0.0518,
"after": 0.0,
"delta": -0.0518,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AB",
"before": 4.0608,
"after": 4.0,
"delta": -0.0608,
"percent_delta": -0.015,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.5829,
"after": 1.0,
"delta": 0.4171,
"percent_delta": 0.7156,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.8986,
"after": 1.0,
"delta": 0.1014,
"percent_delta": 0.1128,
"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.0927,
"after": 0.0,
"delta": -0.0927,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.6848,
"after": 1.0,
"delta": 0.3152,
"percent_delta": 0.4603,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.5675,
"after": 1.0,
"delta": 0.4325,
"percent_delta": 0.7621,
"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": 0.5675,
"after": 1.0,
"delta": 0.4325,
"percent_delta": 0.7621,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_2B",
"before": 0.3036,
"after": 0.0,
"delta": -0.3036,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 5,
"step": "consistency_constraints",
"description": "Enforced H<=AB, HR<=H, safety nets, derived R",
"stats": {
"predicted_2B": 0.0,
"predicted_3B": 0.0,
"predicted_AB": 4.0,
"predicted_BB": 1.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_R": 1.0,
"predicted_RBI": 1.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 4.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 0.6199,
"after": 1.0,
"delta": 0.3801,
"percent_delta": 0.6132,
"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.6199,
"after": 1.0,
"delta": 0.3801,
"percent_delta": 0.6132,
"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.2213,
"after": 0.25,
"delta": 0.0287,
"percent_delta": 0.1297,
"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.319,
"after": 0.4,
"delta": 0.081,
"percent_delta": 0.2539,
"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.39,
"after": 0.25,
"delta": -0.14,
"percent_delta": -0.359,
"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.319,
"after": 0.4,
"delta": 0.081,
"percent_delta": 0.2539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.39,
"after": 0.25,
"delta": -0.14,
"percent_delta": -0.359,
"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": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 4.0,
"after": 3.0,
"delta": -1.0,
"percent_delta": -0.25,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_CS",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"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.2213,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 1.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.319,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.39,
"predicted_SO": 1.0,
"predicted_TB": 0.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AB",
"before": 3.0,
"after": 3.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.25,
"after": 0.2213,
"delta": -0.0287,
"percent_delta": -0.1149,
"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.4,
"after": 0.319,
"delta": -0.081,
"percent_delta": -0.2024,
"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.39,
"delta": 0.14,
"percent_delta": 0.5601,
"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.39,
"delta": 0.14,
"percent_delta": 0.5601,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_OBP",
"before": 0.4,
"after": 0.319,
"delta": -0.081,
"percent_delta": -0.2024,
"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": 0.0,
"delta": -0.253,
"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": 2.975,
"after": 3.0,
"delta": 0.025,
"percent_delta": 0.0084,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.259,
"after": 0.2213,
"delta": -0.0377,
"percent_delta": -0.1456,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.418,
"after": 0.0,
"delta": -0.418,
"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.08,
"after": 0.0,
"delta": -0.08,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.332,
"after": 0.319,
"delta": -0.013,
"percent_delta": -0.0392,
"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.45,
"after": 0.0,
"delta": -0.45,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.416,
"after": 0.39,
"delta": -0.026,
"percent_delta": -0.0625,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 0.367,
"after": 1.0,
"delta": 0.633,
"percent_delta": 1.7248,
"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.367,
"after": 1.0,
"delta": 0.633,
"percent_delta": 1.7248,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_R",
"before": 0.519,
"after": 0.0,
"delta": -0.519,
"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.253 | - |
| predicted_3B | 0.013 | - |
| predicted_AB | 2.975 | - |
| predicted_AVG | 0.259 | - |
| predicted_BB | 0.418 | - |
| predicted_H | 0.650 | - |
| predicted_HR | 0.080 | - |
| predicted_OBP | 0.332 | - |
| predicted_R | 0.519 | - |
| predicted_RBI | 0.450 | - |
| predicted_SLG | 0.416 | - |
| predicted_SO | 0.367 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.304 | 0.051 |
| predicted_3B | 0.052 | 0.039 |
| predicted_AB | 4.061 | 1.086 |
| predicted_AVG | 0.251 | -0.008 |
| predicted_BB | 0.591 | 0.173 |
| predicted_H | 0.938 | 0.288 |
| predicted_HBP | 0.107 | - |
| predicted_HR | 0.097 | 0.017 |
| predicted_OBP | 0.337 | 0.005 |
| predicted_R | 0.667 | 0.148 |
| predicted_RBI | 0.737 | 0.287 |
| predicted_SLG | 0.414 | -0.002 |
| predicted_SO | 0.559 | 0.192 |
Step 3: player projection adjusted by team form snapshot (record, run differential, streak, offense, defense, runs allowed)
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.304 | 0.000 |
| predicted_3B | 0.052 | 0.000 |
| predicted_AB | 4.061 | 0.000 |
| predicted_AVG | 0.221 | -0.030 |
| predicted_BB | 0.583 | -0.009 |
| predicted_H | 0.899 | -0.039 |
| predicted_HBP | 0.107 | 0.000 |
| predicted_HR | 0.093 | -0.005 |
| predicted_OBP | 0.319 | -0.018 |
| predicted_R | 0.620 | -0.047 |
| predicted_RBI | 0.685 | -0.052 |
| predicted_SLG | 0.390 | -0.024 |
| predicted_SO | 0.568 | 0.008 |
AB rounded to 4 (raw=4.06), rates preserved: AVG=0.221 HR/AB=0.023
| 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.304 |
| predicted_3B | 0.000 | -0.052 |
| predicted_AB | 4.000 | -0.061 |
| predicted_AVG | 0.250 | 0.029 |
| predicted_BB | 1.000 | 0.417 |
| predicted_H | 1.000 | 0.101 |
| predicted_HR | 0.000 | -0.093 |
| predicted_OBP | 0.400 | 0.081 |
| predicted_R | 1.000 | 0.380 |
| predicted_RBI | 1.000 | 0.315 |
| predicted_SLG | 0.250 | -0.140 |
| predicted_SO | 1.000 | 0.432 |
Attached simulation box score without overwriting model prediction
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| 2B | 0.000 | 0.000 |
| 3B | 0.000 | 0.000 |
| AB | 3.000 | -1.000 |
| BB | 0.000 | -1.000 |
| CS | 0.000 | 0.000 |
| H | 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 | 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 | 1.000 | 1.000 | 4.000 | 2.000 | 3.000 | 3.000 | 0.2941 | 0.4000 | 0.6471 | 0.2941 | 0.0588 | 0.2353 | 0.1765 | 0.1765 |
| last_10 | 0.20 | 10 | - | 32.000 | 8.000 | 1.000 | 1.000 | 1.000 | 5.000 | 5.000 | 6.000 | 5.000 | 0.2500 | 0.3590 | 0.4375 | 0.2500 | 0.0312 | 0.1562 | 0.1875 | 0.1562 |
| season | 0.60 | 32 | - | 235.000 | 51.000 | 20.000 | 1.000 | 1.000 | 52.000 | 41.000 | 33.000 | 29.000 | 0.2170 | 0.3251 | 0.3234 | 0.2170 | 0.0043 | 0.2213 | 0.1404 | 0.1234 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3730 |
| predicted_3B | 0.1050 |
| predicted_AB | 5.5480 |
| predicted_AVG | 0.2401 |
| predicted_BB | 0.8290 |
| predicted_H | 1.3320 |
| predicted_HBP | 0.1070 |
| predicted_HR | 0.1210 |
| predicted_OBP | 0.3437 |
| predicted_R | 0.8690 |
| predicted_RBI | 1.1290 |
| predicted_SLG | 0.4108 |
| predicted_SO | 0.8230 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.2530 | 0.3730 | 0.3036 | model_form_blend |
| predicted_3B | 0.0130 | 0.1050 | 0.0518 | model_form_blend |
| predicted_AB | 2.9750 | 5.5480 | 4.0608 | model_form_blend |
| predicted_AVG | 0.2590 | 0.2401 | 0.2510 | model_form_blend |
| predicted_BB | 0.4180 | 0.8290 | 0.5914 | model_form_blend |
| predicted_H | 0.6500 | 1.3320 | 0.9378 | model_form_blend |
| predicted_HBP | - | 0.1070 | 0.1070 | form_only |
| predicted_HR | 0.0800 | 0.1210 | 0.0973 | model_form_blend |
| predicted_OBP | 0.3320 | 0.3437 | 0.3369 | model_form_blend |
| predicted_R | 0.5190 | 0.8690 | 0.6667 | model_form_blend |
| predicted_RBI | 0.4500 | 1.1290 | 0.7365 | model_form_blend |
| predicted_SLG | 0.4160 | 0.4108 | 0.4138 | model_form_blend |
| predicted_SO | 0.3670 | 0.8230 | 0.5594 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% season |
| Active form weights | last_5=20%, last_10=20%, season=60% |
| Model calibration | 55% raw model + 45% weighted form |
| Rows before report date | 81 |
| Season rows before report date | 81 |
| Report year | 2026 |
| Profile rows used | 79 |
| Hitter metrics | Hitting_AB, Hitting_H, Hitting_HR, Hitting_RBI, Hitting_AVG, 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 | 1 |
| SF | 0 |
| HBP | 0 |
| season_avg | 0.217 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_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 | 4 |
| Hitting_AVG | 0.25 |
| Hitting_BB | 1 |
| Hitting_GIDP | 0 |
| Hitting_H | 1 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 1 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 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 | 20260610_TEX@KC |
| game_type | full |
| mlbID | 679845 |
| playerID | 679845 |
| playerName | Nick Loftin |
| pos | 2B |
| started | True |
| startingPosition | 2B |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 12.5 |
| sl_bb_percent | 12.5 |
| sl_woba | 0.322 |
| sl_xwoba | 0.315 |
| sl_xba | 0.231 |
| sl_xslg | 0.339 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 6.2 |
| sl_hard_hit_percent | 30.9 |
| sl_exit_velocity_avg | 86.5 |
| sl_launch_angle_avg | 15.0 |
| sl_whiff_percent | 15.3 |
| sl_swing_percent | 38.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.138 | 0.000 | 0.000 | Hitting_2B | 0.136 | 1.000 | -0.136 | -1.000 |
| predicted_3B | 0.000 | 0.000 | 0.000 | Hitting_3B | 0.000 | 0.000 | 0.000 | 0.000 |
| predicted_AB | 3.291 | 3.000 | 5.000 | Hitting_AB | 3.257 | 5.000 | -0.257 | -2.000 |
| predicted_AVG | 0.241 | 0.000 | 0.200 | Hitting_AVG | 0.223 | 0.400 | -0.223 | -0.400 |
| predicted_BB | 0.577 | 0.000 | 1.000 | Hitting_BB | 0.571 | 0.000 | -0.571 | 0.000 |
| predicted_CS | - | 0.000 | 0.000 | BaseRunning_CS | 0.068 | 0.000 | -0.068 | 0.000 |
| predicted_H | 0.670 | 0.000 | 1.000 | Hitting_H | 0.728 | 2.000 | -0.728 | -2.000 |
| predicted_HR | 0.070 | 0.000 | 0.000 | Hitting_HR | 0.058 | 0.000 | -0.058 | 0.000 |
| predicted_OBP | 0.339 | 0.000 | 0.333 | Hitting_OBP | 0.351 | 0.400 | -0.351 | -0.400 |
| predicted_R | 0.444 | 0.000 | 1.000 | Hitting_R | 0.440 | 1.000 | -0.440 | -1.000 |
| predicted_RBI | 0.290 | 0.000 | 0.000 | Hitting_RBI | 0.377 | 1.000 | -0.377 | -1.000 |
| predicted_SLG | 0.340 | 0.000 | 0.200 | Hitting_SLG | 0.318 | 0.600 | -0.318 | -0.600 |
| predicted_SO | 1.063 | 1.000 | 2.000 | Hitting_SO | 1.052 | 2.000 | -0.052 | -1.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.6700 -> 0.0000 (deboost -0.6700, worse) |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | xgboost_raw | 0 | 0 | 0 | 0 | 0 | - | - | Raw model output with missing event categories filled from season-profile fallback |
| 2 | weighted_recent_form_blend | 9 | 8 | 1 | 7 | 2 | predicted_AB: 3.2910 -> 5.2733 (boost 1.9823, better) | predicted_SLG: 0.3400 -> 0.3302 (deboost -0.0098, 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.3302 -> 0.3033 (deboost -0.0269, 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: 1.6108 -> 2.0000 (boost 0.3892, worse) | predicted_RBI: 0.4369 -> 0.0000 (deboost -0.4369, worse) | AB rounded to 5 (raw=5.27), rates preserved: AVG=0.214 HR/AB=0.014 |
| 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 | 2 | 0 | 2 | 0 | 2 | - | predicted_SLG: 0.3033 -> 0.2000 (deboost -0.1033, worse) | Player Savant profile contributed to the team run-environment adjustment against the opposing starter |
| 7 | simulation_box_score_reference | 5 | 0 | 5 | 1 | 4 | - | predicted_AB: 5.0000 -> 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.3033 (boost 0.1033, better) | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "batter",
"player_id": "686555",
"player_name": "Isaac Collins",
"position": "LF",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "xgboost_raw",
"description": "Raw model output with missing event categories filled from season-profile fallback",
"stats": {
"predicted_2B": 0.138,
"predicted_3B": 0.0,
"predicted_AB": 3.291,
"predicted_AVG": 0.241,
"predicted_BB": 0.577,
"predicted_H": 0.67,
"predicted_HR": 0.07,
"predicted_OBP": 0.339,
"predicted_R": 0.444,
"predicted_RBI": 0.29,
"predicted_SLG": 0.34,
"predicted_SO": 1.063
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "weighted_recent_form_blend",
"description": "Final model input calibrated with local form: 55% XGBoost raw, 45% weighted form. Batter form uses 20% last 5 games, 20% last 10 games, 60% season.",
"stats": {
"predicted_2B": 0.2477,
"predicted_3B": 0.0004,
"predicted_AB": 5.2733,
"predicted_AVG": 0.2376,
"predicted_BB": 0.9851,
"predicted_H": 1.1751,
"predicted_HBP": 0.133,
"predicted_HR": 0.0788,
"predicted_OBP": 0.3498,
"predicted_R": 0.674,
"predicted_RBI": 0.4699,
"predicted_SLG": 0.3302,
"predicted_SO": 1.5879
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.138,
"after": 0.2477,
"delta": 0.1097,
"percent_delta": 0.7949,
"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.291,
"after": 5.2733,
"delta": 1.9823,
"percent_delta": 0.6023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2376,
"delta": -0.0034,
"percent_delta": -0.0141,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_BB",
"before": 0.577,
"after": 0.9851,
"delta": 0.4081,
"percent_delta": 0.7073,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 1.1751,
"delta": 0.5051,
"percent_delta": 0.7539,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0788,
"delta": 0.0088,
"percent_delta": 0.1257,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3498,
"delta": 0.0108,
"percent_delta": 0.0319,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_R",
"before": 0.444,
"after": 0.674,
"delta": 0.23,
"percent_delta": 0.518,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.29,
"after": 0.4699,
"delta": 0.1799,
"percent_delta": 0.6203,
"direction": "boost",
"projection_effect": "better",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3302,
"delta": -0.0098,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.063,
"after": 1.5879,
"delta": 0.5249,
"percent_delta": 0.4938,
"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": 3.291,
"after": 5.2733,
"delta": 1.9823,
"percent_delta": 0.6023,
"direction": "boost",
"projection_effect": "better",
"material": true
},
"biggest_deboost": {
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3302,
"delta": -0.0098,
"percent_delta": -0.0288,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {
"xgboost_raw": 0.55,
"weighted_form": 0.45,
"form_windows": {
"last_5": 0.2,
"last_10": 0.2,
"season": 0.6
}
},
"window_games": {
"last_5": 5,
"last_10": 10,
"season": 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.2477,
"predicted_3B": 0.0004,
"predicted_AB": 5.2733,
"predicted_AVG": 0.2135,
"predicted_BB": 0.9709,
"predicted_H": 1.126,
"predicted_HBP": 0.133,
"predicted_HR": 0.075,
"predicted_OBP": 0.3358,
"predicted_R": 0.6267,
"predicted_RBI": 0.4369,
"predicted_SLG": 0.3033,
"predicted_SO": 1.6108
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2477,
"after": 0.2477,
"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.2733,
"after": 5.2733,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_AVG",
"before": 0.2376,
"after": 0.2135,
"delta": -0.0241,
"percent_delta": -0.1014,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9851,
"after": 0.9709,
"delta": -0.0142,
"percent_delta": -0.0144,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.1751,
"after": 1.126,
"delta": -0.0491,
"percent_delta": -0.0418,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.0788,
"after": 0.075,
"delta": -0.0038,
"percent_delta": -0.0482,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3498,
"after": 0.3358,
"delta": -0.014,
"percent_delta": -0.04,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_R",
"before": 0.674,
"after": 0.6267,
"delta": -0.0473,
"percent_delta": -0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_RBI",
"before": 0.4699,
"after": 0.4369,
"delta": -0.033,
"percent_delta": -0.0702,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SLG",
"before": 0.3302,
"after": 0.3033,
"delta": -0.0269,
"percent_delta": -0.0815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.5879,
"after": 1.6108,
"delta": 0.0229,
"percent_delta": 0.0144,
"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.3302,
"after": 0.3033,
"delta": -0.0269,
"percent_delta": -0.0815,
"direction": "deboost",
"projection_effect": "worse",
"material": true
}
},
"weights": {},
"window_games": {}
},
{
"index": 4,
"step": "ab_floor_and_scaling",
"description": "AB rounded to 5 (raw=5.27), rates preserved: AVG=0.214 HR/AB=0.014",
"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": 0.0,
"predicted_SB": 0.0,
"predicted_SO": 2.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.2477,
"after": 0.0,
"delta": -0.2477,
"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.2733,
"after": 5.0,
"delta": -0.2733,
"percent_delta": -0.0518,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.9709,
"after": 1.0,
"delta": 0.0291,
"percent_delta": 0.03,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.126,
"after": 1.0,
"delta": -0.126,
"percent_delta": -0.1119,
"direction": "deboost",
"projection_effect": "worse",
"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.075,
"after": 0.0,
"delta": -0.075,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.4369,
"after": 0.0,
"delta": -0.4369,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.6108,
"after": 2.0,
"delta": 0.3892,
"percent_delta": 0.2416,
"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": 1.6108,
"after": 2.0,
"delta": 0.3892,
"percent_delta": 0.2416,
"direction": "boost",
"projection_effect": "worse",
"material": true
},
"biggest_deboost": {
"metric": "predicted_RBI",
"before": 0.4369,
"after": 0.0,
"delta": -0.4369,
"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": 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": 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.6267,
"after": 1.0,
"delta": 0.3733,
"percent_delta": 0.5957,
"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.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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_OBP": 0.333,
"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.2135,
"after": 0.2,
"delta": -0.0135,
"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": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_OBP",
"before": 0.3358,
"after": 0.333,
"delta": -0.0028,
"percent_delta": -0.0083,
"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.3033,
"after": 0.2,
"delta": -0.1033,
"percent_delta": -0.3406,
"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.3033,
"after": 0.2,
"delta": -0.1033,
"percent_delta": -0.3406,
"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": 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": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HBP",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_R",
"before": 1.0,
"after": 0.0,
"delta": -1.0,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_RBI",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SB",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SF",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 2.0,
"after": 1.0,
"delta": -1.0,
"percent_delta": -0.5,
"direction": "deboost",
"projection_effect": "better",
"material": true
}
],
"summary": {
"changed_metrics": 5,
"boosted_metrics": 0,
"deboosted_metrics": 5,
"better_metrics": 1,
"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": 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.2135,
"predicted_BB": 0.0,
"predicted_CS": 0.0,
"predicted_H": 0.0,
"predicted_HBP": 0.0,
"predicted_HR": 0.0,
"predicted_LF": 0.0,
"predicted_OBP": 0.3358,
"predicted_R": 0.0,
"predicted_RBI": 0.0,
"predicted_SB": 0.0,
"predicted_SF": 0.0,
"predicted_SLG": 0.3033,
"predicted_SO": 1.0
},
"changed_metrics": [
{
"metric": "predicted_2B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_3B",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_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.2135,
"delta": 0.0135,
"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": 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.3358,
"delta": 0.0028,
"percent_delta": 0.0085,
"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.3033,
"delta": 0.1033,
"percent_delta": 0.5167,
"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.3033,
"delta": 0.1033,
"percent_delta": 0.5167,
"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.138,
"after": 0.0,
"delta": -0.138,
"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.291,
"after": 3.0,
"delta": -0.291,
"percent_delta": -0.0884,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_AVG",
"before": 0.241,
"after": 0.2135,
"delta": -0.0275,
"percent_delta": -0.1141,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_BB",
"before": 0.577,
"after": 0.0,
"delta": -0.577,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_H",
"before": 0.67,
"after": 0.0,
"delta": -0.67,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_HR",
"before": 0.07,
"after": 0.0,
"delta": -0.07,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_OBP",
"before": 0.339,
"after": 0.3358,
"delta": -0.0032,
"percent_delta": -0.0094,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"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.29,
"after": 0.0,
"delta": -0.29,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SLG",
"before": 0.34,
"after": 0.3033,
"delta": -0.0367,
"percent_delta": -0.1079,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
{
"metric": "predicted_SO",
"before": 1.063,
"after": 1.0,
"delta": -0.063,
"percent_delta": -0.0593,
"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.67,
"after": 0.0,
"delta": -0.67,
"percent_delta": -1.0,
"direction": "deboost",
"projection_effect": "worse",
"material": true
},
"has_material_change": true,
"dominant_effect": "worse"
}
}
}Raw model output with missing event categories filled from season-profile fallback
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_2B | 0.138 | - |
| predicted_3B | 0.000 | - |
| predicted_AB | 3.291 | - |
| predicted_AVG | 0.241 | - |
| predicted_BB | 0.577 | - |
| predicted_H | 0.670 | - |
| predicted_HR | 0.070 | - |
| predicted_OBP | 0.339 | - |
| predicted_R | 0.444 | - |
| predicted_RBI | 0.290 | - |
| predicted_SLG | 0.340 | - |
| predicted_SO | 1.063 | - |
Final model input calibrated with local form: 55% XGBoost raw, 45% 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.110 |
| predicted_3B | 0.000 | 0.000 |
| predicted_AB | 5.273 | 1.982 |
| predicted_AVG | 0.238 | -0.003 |
| predicted_BB | 0.985 | 0.408 |
| predicted_H | 1.175 | 0.505 |
| predicted_HBP | 0.133 | - |
| predicted_HR | 0.079 | 0.009 |
| predicted_OBP | 0.350 | 0.011 |
| predicted_R | 0.674 | 0.230 |
| predicted_RBI | 0.470 | 0.180 |
| predicted_SLG | 0.330 | -0.010 |
| predicted_SO | 1.588 | 0.525 |
Step 3: 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.000 | 0.000 |
| predicted_AB | 5.273 | 0.000 |
| predicted_AVG | 0.213 | -0.024 |
| predicted_BB | 0.971 | -0.014 |
| predicted_H | 1.126 | -0.049 |
| predicted_HBP | 0.133 | 0.000 |
| predicted_HR | 0.075 | -0.004 |
| predicted_OBP | 0.336 | -0.014 |
| predicted_R | 0.627 | -0.047 |
| predicted_RBI | 0.437 | -0.033 |
| predicted_SLG | 0.303 | -0.027 |
| predicted_SO | 1.611 | 0.023 |
AB rounded to 5 (raw=5.27), rates preserved: AVG=0.214 HR/AB=0.014
| 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 | 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 | 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.248 |
| predicted_3B | 0.000 | -0.000 |
| predicted_AB | 5.000 | -0.273 |
| predicted_AVG | 0.200 | -0.013 |
| predicted_BB | 1.000 | 0.029 |
| predicted_H | 1.000 | -0.126 |
| predicted_HR | 0.000 | -0.075 |
| predicted_OBP | 0.333 | -0.003 |
| predicted_R | 1.000 | 0.373 |
| predicted_RBI | 0.000 | -0.437 |
| predicted_SLG | 0.200 | -0.103 |
| predicted_SO | 2.000 | 0.389 |
Attached 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 | 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 | -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 | 1.000 | 1.000 | 4.000 | 3.000 | 0.2500 | 0.4000 | 0.3125 | 0.2500 | 0.0000 | 0.0625 | 0.2500 | 0.1875 |
| last_10 | 0.20 | 10 | - | 33.000 | 8.000 | 2.000 | 0.000 | 0.000 | 1.000 | 5.000 | 7.000 | 10.000 | 0.2424 | 0.3750 | 0.3030 | 0.2424 | 0.0000 | 0.0303 | 0.2121 | 0.3030 |
| season | 0.60 | 56 | - | 622.000 | 139.000 | 26.000 | 0.000 | 11.000 | 72.000 | 84.000 | 109.000 | 201.000 | 0.2235 | 0.3509 | 0.3183 | 0.2235 | 0.0177 | 0.1158 | 0.1752 | 0.3231 |
| Metric | Value |
|---|---|
| predicted_2B | 0.3880 |
| predicted_3B | 0.0010 |
| predicted_AB | 7.8080 |
| predicted_AVG | 0.2333 |
| predicted_BB | 1.5070 |
| predicted_H | 1.8210 |
| predicted_HBP | 0.1330 |
| predicted_HR | 0.0900 |
| predicted_OBP | 0.3636 |
| predicted_R | 0.9680 |
| predicted_RBI | 0.7000 |
| predicted_SLG | 0.3177 |
| predicted_SO | 2.2590 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_2B | 0.1380 | 0.3880 | 0.2477 | model_form_blend |
| predicted_3B | 0.0000 | 0.0010 | 0.0004 | model_form_blend |
| predicted_AB | 3.2910 | 7.8080 | 5.2733 | model_form_blend |
| predicted_AVG | 0.2410 | 0.2333 | 0.2376 | model_form_blend |
| predicted_BB | 0.5770 | 1.5070 | 0.9851 | model_form_blend |
| predicted_H | 0.6700 | 1.8210 | 1.1751 | model_form_blend |
| predicted_HBP | - | 0.1330 | 0.1330 | form_only |
| predicted_HR | 0.0700 | 0.0900 | 0.0788 | model_form_blend |
| predicted_OBP | 0.3390 | 0.3636 | 0.3498 | model_form_blend |
| predicted_R | 0.4440 | 0.9680 | 0.6740 | model_form_blend |
| predicted_RBI | 0.2900 | 0.7000 | 0.4699 | model_form_blend |
| predicted_SLG | 0.3400 | 0.3177 | 0.3302 | model_form_blend |
| predicted_SO | 1.0630 | 2.2590 | 1.5879 | model_form_blend |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 20% last 5 + 20% last 10 + 60% 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 | 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 | 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 | 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 | 2 |
| Hitting_TB | 3 |
| Hitting_battingOrder | 9 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 0 |
| Pitching_ER | 0 |
| Pitching_ERA | 0 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.0 |
| Pitching_Pitches | 0 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 0 |
| Pitching_Wild Pitch | 0 |
| Pitching_pitchingOrder | 0 |
| allPositionsPlayed | LF |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 686555 |
| playerID | 686555 |
| playerName | Isaac Collins |
| pos | LF |
| started | True |
| startingPosition | LF |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 26.1 |
| sl_bb_percent | 13.5 |
| sl_woba | 0.302 |
| sl_xwoba | 0.302 |
| sl_xba | 0.218 |
| sl_xslg | 0.307 |
| sl_sweet_spot_percent | 33.1 |
| sl_barrel_batted_rate | 7.7 |
| sl_hard_hit_percent | 37.7 |
| sl_exit_velocity_avg | 88.2 |
| sl_launch_angle_avg | 19.5 |
| sl_whiff_percent | 26.1 |
| sl_swing_percent | 38.9 |
| Metric | XGBoost Raw | Final Simulated Prediction | Pre-Sim Finalized | True Data Column | Historical Baseline | Latest Real Game | Final - Baseline | Final - Latest Real |
|---|---|---|---|---|---|---|---|---|
| predicted_BB | 3.000 | 3.000 | 3.000 | Pitching_BB | 2.000 | 0.000 | 1.000 | 3.000 |
| predicted_ER | 2.000 | 2.000 | 2.000 | Pitching_ER | 2.385 | 4.000 | -0.385 | -2.000 |
| predicted_H | 3.000 | 3.000 | 3.000 | Pitching_H | 5.077 | 8.000 | -2.077 | -5.000 |
| predicted_IP | 6.000 | 6.000 | 6.000 | Pitching_InningsPitched | 6.177 | 5.200 | -0.177 | 0.800 |
| predicted_SO | 6.000 | 6.000 | 6.000 | Pitching_SO | 5.154 | 2.000 | 0.846 | 4.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | 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": "608379",
"player_name": "Michael Wacha",
"position": "Starter",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 2.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 6.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": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 3.0,
"predicted_ER": 2.0,
"predicted_H": 3.0,
"predicted_HR": 0.0,
"predicted_IP": 6.0,
"predicted_R": 2.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": 2.0,
"after": 2.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.0,
"after": 6.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": 3.0,
"after": 3.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": 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.0,
"after": 6.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,
"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 | 2.000 | - |
| predicted_H | 3.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 6.000 | - |
| predicted_SO | 6.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 29.200 | 16.000 | 32.000 | 9.000 | 25.000 | 4.000 | 4.8539 | 1.3820 | 0.5393 | 1.0787 | 0.3034 | 0.8427 | 0.1348 |
| last_10 | 0.35 | 10 | 60.000 | 30.000 | 56.000 | 21.000 | 50.000 | 8.000 | 4.5000 | 1.2833 | 0.5000 | 0.9333 | 0.3500 | 0.8333 | 0.1333 |
| season | 0.20 | 13 | 81.000 | 31.000 | 66.000 | 26.000 | 67.000 | 9.000 | 3.4444 | 1.1358 | 0.3827 | 0.8148 | 0.3210 | 0.8272 | 0.1111 |
| Metric | Value |
|---|---|
| predicted_BB | 2.0250 |
| predicted_ER | 2.9750 |
| predicted_ERA | 4.4276 |
| predicted_H | 5.8720 |
| predicted_HR | 0.8030 |
| predicted_IP | 6.0000 |
| predicted_SO | 5.2250 |
| predicted_WHIP | 1.3056 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 3.0000 | 2.0250 | 2.4807 | model_form_blend |
| predicted_ER | 2.0000 | 2.9750 | 2.5193 | model_form_blend |
| predicted_ERA | - | 4.4276 | 4.4276 | form_only |
| predicted_H | 3.0000 | 5.8720 | 4.5297 | model_form_blend |
| predicted_HR | 0.0000 | 0.8030 | 0.4277 | model_form_blend |
| predicted_IP | 6.0000 | 6.0000 | 6.0000 | model_form_blend |
| predicted_SO | 6.0000 | 5.2250 | 5.5872 | model_form_blend |
| predicted_WHIP | - | 1.3056 | 1.3056 | 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.0 |
| H | 3 |
| R | 2 |
| ER | 2 |
| BB | 3 |
| SO | 6 |
| HR | 0 |
| BF | 24 |
| Pitches | 109 |
| 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 | 0 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 25 |
| Pitching_ER | 4 |
| Pitching_ERA | 3.44 |
| Pitching_Flyouts | 4 |
| Pitching_Groundouts | 6 |
| Pitching_H | 8 |
| Pitching_HBP | 0 |
| Pitching_HR | 1 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 5.2 |
| Pitching_Pitches | 77 |
| Pitching_R | 5 |
| Pitching_SO | 2 |
| Pitching_Strikes | 54 |
| Pitching_Wild Pitch | 2 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 1 |
| allPositionsPlayed | P |
| gameID | 20260605_KC@MIN |
| game_type | full |
| mlbID | 608379 |
| playerID | 608379 |
| playerName | Michael Wacha |
| pos | P |
| started | True |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-05 |
| sl_k_percent | 20.5 |
| sl_bb_percent | 8.0 |
| sl_woba | 0.301 |
| sl_xwoba | 0.322 |
| sl_sweet_spot_percent | 34.6 |
| sl_barrel_batted_rate | 6.9 |
| sl_hard_hit_percent | 38.1 |
| sl_whiff_percent | 23.6 |
| sl_swing_percent | 48.1 |
| sl_avg_best_speed | 78.290617257 |
| sl_avg_hyper_speed | 93.799501106 |
| 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.621 | 2.000 | 0.379 | -1.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.483 | 1.000 | -0.483 | -1.000 |
| predicted_H | 2.000 | 2.000 | 2.000 | Pitching_H | 0.931 | 2.000 | 1.069 | 0.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.997 | 1.000 | 0.003 | 0.000 |
| predicted_SO | 0.000 | 0.000 | 0.000 | Pitching_SO | 1.172 | 1.000 | -1.172 | -1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "656638",
"player_name": "Alex Lange",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 2.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": 0.0,
"predicted_H": 2.0,
"predicted_HR": 1.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 2.0,
"after": 2.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 2.000 | - |
| predicted_HR | 1.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 5.000 | 1.000 | 5.000 | 5.000 | 8.000 | 0.000 | 1.8000 | 2.0000 | 0.2000 | 1.0000 | 1.0000 | 1.6000 | 0.0000 |
| last_10 | 0.35 | 10 | 9.100 | 1.000 | 8.000 | 5.000 | 12.000 | 0.000 | 0.9643 | 1.3929 | 0.1071 | 0.8571 | 0.5357 | 1.2857 | 0.0000 |
| season | 0.20 | 29 | 31.000 | 14.000 | 27.000 | 18.000 | 34.000 | 2.000 | 4.0645 | 1.4516 | 0.4516 | 0.8710 | 0.5806 | 1.0968 | 0.0645 |
| Metric | Value |
|---|---|
| predicted_BB | 0.5790 |
| predicted_ER | 0.3380 |
| predicted_ERA | 3.0455 |
| predicted_H | 0.9400 |
| predicted_HR | 0.0700 |
| predicted_IP | 1.0000 |
| predicted_SO | 1.1850 |
| predicted_WHIP | 1.5192 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.5790 | 0.8063 | model_form_blend |
| predicted_ER | 0.0000 | 0.3380 | 0.1555 | model_form_blend |
| predicted_ERA | - | 3.0455 | 3.0455 | form_only |
| predicted_H | 2.0000 | 0.9400 | 1.5123 | model_form_blend |
| predicted_HR | 1.0000 | 0.0700 | 0.5721 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 1.1850 | 0.5452 | model_form_blend |
| predicted_WHIP | - | 1.5192 | 1.5192 | 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 | 2 |
| R | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 1 |
| BF | 6 |
| Pitches | 29 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 7 |
| Pitching_ER | 1 |
| Pitching_ERA | 4.06 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 2 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 1.0 |
| Pitching_Pitches | 32 |
| Pitching_R | 2 |
| Pitching_SO | 1 |
| Pitching_Strikes | 16 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | L |
| Pitching_pitchingOrder | 8 |
| allPositionsPlayed | P |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 656638 |
| playerID | 656638 |
| playerName | Alex Lange |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.2 |
| sl_bb_percent | 13.3 |
| sl_woba | 0.337 |
| sl_xwoba | 0.338 |
| sl_sweet_spot_percent | 37.5 |
| sl_barrel_batted_rate | 13.8 |
| sl_hard_hit_percent | 42.5 |
| sl_whiff_percent | 31.7 |
| sl_swing_percent | 45.2 |
| sl_avg_best_speed | 80.326968 |
| sl_avg_hyper_speed | 95.179218228 |
| 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 | 1.000 | 0.679 | 0.000 |
| predicted_ER | 0.000 | 0.000 | 0.000 | Pitching_ER | 0.214 | 0.000 | -0.214 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 0.643 | 0.000 | 0.357 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.875 | 0.200 | 0.125 | 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 | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "663738",
"player_name": "Daniel Lynch IV",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_SO": 0.0
},
"changed_metrics": [],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
},
{
"index": 2,
"step": "current_json_final",
"description": "Final player values currently stored in the game JSON",
"stats": {
"predicted_BB": 1.0,
"predicted_ER": 0.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 0.0,
"predicted_SO": 0.0
},
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null
},
"weights": {},
"window_games": {}
}
],
"total_change": {
"from_step": "pitcher_form_blend",
"to_step": "current_json_final",
"changed_metrics": [
{
"metric": "predicted_BB",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_ER",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_H",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_HR",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_IP",
"before": 1.0,
"after": 1.0,
"delta": 0.0,
"percent_delta": 0.0,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
},
{
"metric": "predicted_SO",
"before": 0.0,
"after": 0.0,
"delta": 0.0,
"percent_delta": null,
"direction": "no_change",
"projection_effect": "neutral",
"material": false
}
],
"summary": {
"changed_metrics": 0,
"boosted_metrics": 0,
"deboosted_metrics": 0,
"better_metrics": 0,
"worse_metrics": 0,
"biggest_boost": null,
"biggest_deboost": null,
"has_material_change": false,
"dominant_effect": "neutral"
}
}
}Pitcher model/profile expectation with Bayesian recent-form shrinkage
| Metric | Value | Delta vs Prev Step |
|---|---|---|
| predicted_BB | 1.000 | - |
| predicted_ER | 0.000 | - |
| predicted_H | 1.000 | - |
| predicted_HR | 0.000 | - |
| predicted_IP | 1.000 | - |
| predicted_SO | 0.000 | - |
| Window | Weight | Games | Total IP | Total ER | Total H | Total BB | Total SO | Total HR | ERA | WHIP | ER_per_IP | H_per_IP | BB_per_IP | SO_per_IP | HR_per_IP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| last_5 | 0.45 | 5 | 4.200 | 1.000 | 3.000 | 1.000 | 2.000 | 0.000 | 1.9286 | 0.8571 | 0.2143 | 0.6429 | 0.2143 | 0.4286 | 0.0000 |
| last_10 | 0.35 | 10 | 9.200 | 2.000 | 9.000 | 3.000 | 4.000 | 0.000 | 1.8621 | 1.2414 | 0.2069 | 0.9310 | 0.3103 | 0.4138 | 0.0000 |
| season | 0.20 | 28 | 28.000 | 6.000 | 18.000 | 9.000 | 29.000 | 1.000 | 1.9286 | 0.9643 | 0.2143 | 0.6429 | 0.3214 | 1.0357 | 0.0357 |
| Metric | Value |
|---|---|
| predicted_BB | 0.3150 |
| predicted_ER | 0.3420 |
| predicted_ERA | 3.0776 |
| predicted_H | 0.8460 |
| predicted_HR | 0.0710 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.7300 |
| predicted_WHIP | 1.1611 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 1.0000 | 0.3150 | 0.6922 | model_form_blend |
| predicted_ER | 0.0000 | 0.3420 | 0.1537 | model_form_blend |
| predicted_ERA | - | 3.0776 | 3.0776 | form_only |
| predicted_H | 1.0000 | 0.8460 | 0.9308 | model_form_blend |
| predicted_HR | 0.0000 | 0.0710 | 0.0319 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 0.0000 | 0.7300 | 0.3281 | model_form_blend |
| predicted_WHIP | - | 1.1611 | 1.1611 | 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 | 0 |
| ER | 0 |
| BB | 1 |
| SO | 0 |
| HR | 0 |
| BF | 5 |
| Pitches | 20 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 1 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 3 |
| Pitching_ER | 0 |
| Pitching_ERA | 1.93 |
| Pitching_Flyouts | 1 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 0 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 3 |
| Pitching_Inherited Runners Scored | 1 |
| Pitching_InningsPitched | 0.2 |
| Pitching_Pitches | 17 |
| Pitching_R | 0 |
| Pitching_SO | 0 |
| Pitching_Strikes | 8 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | BS |
| Pitching_pitchingOrder | 6 |
| allPositionsPlayed | P |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 663738 |
| playerID | 663738 |
| playerName | Daniel Lynch IV |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 25.4 |
| sl_bb_percent | 7.9 |
| sl_woba | 0.249 |
| sl_xwoba | 0.269 |
| sl_sweet_spot_percent | 32.4 |
| sl_barrel_batted_rate | 5.4 |
| sl_hard_hit_percent | 36.5 |
| sl_whiff_percent | 32.9 |
| sl_swing_percent | 47.3 |
| sl_avg_best_speed | 74.983325676 |
| sl_avg_hyper_speed | 93.896594459 |
| 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 | 2.000 | -0.667 | -2.000 |
| predicted_ER | 1.000 | 1.000 | 1.000 | Pitching_ER | 0.630 | 1.000 | 0.370 | 0.000 |
| predicted_H | 1.000 | 1.000 | 1.000 | Pitching_H | 1.148 | 0.000 | -0.148 | 1.000 |
| predicted_IP | 1.000 | 1.000 | 1.000 | Pitching_InningsPitched | 0.841 | 0.100 | 0.159 | 0.900 |
| predicted_SO | 2.000 | 2.000 | 2.000 | Pitching_SO | 0.815 | 1.000 | 1.185 | 1.000 |
| Impact Item | Value |
|---|---|
| From | pitcher_form_blend |
| To | current_json_final |
| Dominant Effect | neutral |
| Changed Metrics | 0 |
| Boosted Metrics | 0 |
| Deboosted Metrics | 0 |
| Better Metrics | 0 |
| Worse Metrics | 0 |
| Biggest Boost | - |
| Biggest Deboost | - |
| # | Step | Changed | Boosted | Deboosted | Better | Worse | Biggest Boost | Biggest Deboost | Reason |
|---|---|---|---|---|---|---|---|---|---|
| 1 | pitcher_form_blend | 0 | 0 | 0 | 0 | 0 | - | - | Pitcher model/profile expectation with Bayesian recent-form shrinkage |
| 2 | current_json_final | 0 | 0 | 0 | 0 | 0 | - | - | Final player values currently stored in the game JSON |
{
"trace_version": "1.0",
"role": "pitcher",
"player_id": "668674",
"player_name": "Lucas Erceg",
"position": "Middle Reliever",
"team": "KC",
"interpretation": "Boost/deboost is numeric movement vs the previous step. Better/worse is role-aware: hitter offense up is better; pitcher run prevention down is better.",
"steps": [
{
"index": 1,
"step": "pitcher_form_blend",
"description": "Pitcher model/profile expectation with Bayesian recent-form shrinkage",
"stats": {
"predicted_BB": 0.0,
"predicted_ER": 1.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": 1.0,
"predicted_H": 1.0,
"predicted_HR": 0.0,
"predicted_IP": 1.0,
"predicted_R": 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": 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": 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": 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": 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 | 1.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.000 | 4.000 | 7.000 | 5.000 | 4.000 | 1.000 | 9.0000 | 3.0000 | 1.0000 | 1.7500 | 1.2500 | 1.0000 | 0.2500 |
| last_10 | 0.35 | 10 | 9.000 | 8.000 | 16.000 | 7.000 | 8.000 | 1.000 | 8.0000 | 2.5556 | 0.8889 | 1.7778 | 0.7778 | 0.8889 | 0.1111 |
| season | 0.20 | 26 | 24.100 | 14.000 | 26.000 | 18.000 | 22.000 | 1.000 | 5.1781 | 1.8082 | 0.5753 | 1.0685 | 0.7397 | 0.9041 | 0.0411 |
| Metric | Value |
|---|---|
| predicted_BB | 0.6190 |
| predicted_ER | 0.6270 |
| predicted_ERA | 6.0956 |
| predicted_H | 1.1910 |
| predicted_HR | 0.1390 |
| predicted_IP | 1.0000 |
| predicted_SO | 0.8700 |
| predicted_WHIP | 1.9529 |
| Metric | Model | Weighted Form | Final Model Input | Source |
|---|---|---|---|---|
| predicted_BB | 0.0000 | 0.6190 | 0.2690 | model_form_blend |
| predicted_ER | 1.0000 | 0.6270 | 0.8379 | model_form_blend |
| predicted_ERA | - | 6.0956 | 6.0956 | form_only |
| predicted_H | 1.0000 | 1.1910 | 1.0830 | model_form_blend |
| predicted_HR | 0.0000 | 0.1390 | 0.0604 | model_form_blend |
| predicted_IP | 1.0000 | 1.0000 | 1.0000 | model_form_blend |
| predicted_SO | 2.0000 | 0.8700 | 1.5089 | model_form_blend |
| predicted_WHIP | - | 1.9529 | 1.9529 | form_only |
| Trace Item | Value |
|---|---|
| Primary player source | data/all_players_stats.csv |
| Rolling form windows | last 5 games, last 10 games, season-to-date before report date |
| Blend formula | 45% last 5 + 35% last 10 + 20% season |
| Active form weights | last_5=45%, last_10=35%, season=20% |
| Model calibration | 35% raw model + 65% weighted form |
| Rows before report date | 27 |
| Season rows before report date | 27 |
| Report year | 2026 |
| Profile rows used | 26 |
| Pitcher metrics | Pitching_InningsPitched, Pitching_ER, Pitching_SO, Pitching_H, Pitching_BB |
| Simulation Box Score Field | Value |
|---|---|
| IP | 1.0 |
| H | 1 |
| R | 1 |
| ER | 1 |
| BB | 0 |
| SO | 2 |
| HR | 0 |
| BF | 4 |
| Pitches | 18 |
| Latest Real Data Column | Value |
|---|---|
| BaseRunning_CS | 0 |
| BaseRunning_PO | 0 |
| BaseRunning_SB | 0 |
| Fielding_E | 0 |
| Fielding_Outfield assists | 0 |
| Fielding_Passed Ball | 0 |
| Fielding_Pickoffs | 0 |
| Hitting_2B | 0 |
| Hitting_3B | 0 |
| Hitting_AB | 0 |
| Hitting_AVG | 0.0 |
| Hitting_BB | 0 |
| Hitting_GIDP | 0 |
| Hitting_H | 0 |
| Hitting_HBP | 0 |
| Hitting_HR | 0 |
| Hitting_IBB | 0 |
| Hitting_R | 0 |
| Hitting_RBI | 0 |
| Hitting_SAC | 0 |
| Hitting_SF | 0 |
| Hitting_SO | 0 |
| Hitting_TB | 0 |
| Hitting_battingOrder | 0 |
| Hitting_substitutionOrder | 0 |
| Pitching_BB | 2 |
| Pitching_Balk | 0 |
| Pitching_Batters Faced | 4 |
| Pitching_ER | 1 |
| Pitching_ERA | 6.29 |
| Pitching_Flyouts | 0 |
| Pitching_Groundouts | 0 |
| Pitching_H | 0 |
| Pitching_HBP | 1 |
| Pitching_HR | 0 |
| Pitching_Inherited Runners | 0 |
| Pitching_Inherited Runners Scored | 0 |
| Pitching_InningsPitched | 0.1 |
| Pitching_Pitches | 16 |
| Pitching_R | 1 |
| Pitching_SO | 1 |
| Pitching_Strikes | 6 |
| Pitching_Wild Pitch | 0 |
| Pitching_decision | H |
| Pitching_pitchingOrder | 5 |
| allPositionsPlayed | P |
| gameID | 20260610_TEX@KC |
| game_type | full |
| mlbID | 668674 |
| playerID | 668674 |
| playerName | Lucas Erceg |
| pos | P |
| started | False |
| startingPosition | P |
| team | KC |
| teamID | 12 |
| game_date | 2026-06-10 |
| sl_k_percent | 19.0 |
| sl_bb_percent | 15.5 |
| sl_woba | 0.401 |
| sl_xwoba | 0.333 |
| sl_sweet_spot_percent | 33.3 |
| sl_barrel_batted_rate | 6.7 |
| sl_hard_hit_percent | 38.7 |
| sl_whiff_percent | 21.9 |
| sl_swing_percent | 45.8 |
| sl_avg_best_speed | 73.873741892 |
| sl_avg_hyper_speed | 94.201546622 |