| # | Player | Team | GP | MPG | PPG | RPG | APG | SPG | BPG | STK | FG% | 3P% | FT% | TS% | TOV | +/- |
|---|
β‘ Beyond the Box Score: Novel Basketball Analytics
Traditional stats tell you what happened. These metrics try to tell you how it happened and how reliably it will happen again. We measure player involvement intensity, reward clean play over foul-hunting, and use Sortino-style risk adjustment to penalize only downside variance.
Inspired by Allen's philosophy, the Ethical Hoops metric penalizes free throw attempts (proxy for foul-baiting) while rewarding blocks, steals, and offensive rebounds. Technical and flagrant fouls carry a per-game penalty that dilutes with clean play β redemption is possible. Scroll down to the Appendix for full methodology and formulas.
| # | Player | Team | GP | MPG | Net IPM | Any IPM | Ethical | Eth/Min | R-PTS | R-REB | R-AST |
|---|
π Appendix: Methodology & Formulas
1. Involvement Per Minute (IPM)
IPM measures how frequently a player directly impacts the game β every touch, every action, every mistake β normalized by playing time. It combines traditional box score stats with Second Spectrum tracking data (touches, deflections, screens, etc.) for a fuller picture.
Box Score Component
We track all involvements with different weights:
Any IPM counts everything β even mistakes like turnovers, fouls, and missed shots add to your "involvement" because you're still touching the ball and affecting the game. Net IPM flips all the bad stuff to negatives: missed shots, turnovers, and fouls all hurt you. It's a transparent alternative to black-box metrics like PER, LEBRON, or EPM β just add up the good, subtract the bad.
PTS Γ 0.5: Points (halved to avoid double-counting with made shots)FG_miss Γ Β±0.5: +0.5 for Any (still involvement), -0.5 for Net (wasted possession)FT_miss Γ Β±0.25: +0.25 for Any, -0.25 for NetREB, AST, STL, BLK Γ 1.0: Full credit for these actionsTOV Γ Β±1.0: +1 for Any (still involvement), -1 for Net (costly mistake)PF Γ Β±0.5: +0.5 for Any, -0.5 for Net
Tracking Component (Second Spectrum Data)
The box score misses a lot. Screen assists, deflections, loose balls β these are invisible in traditional stats but crucial to winning basketball. We add tracking data to capture this:
TOUCHES Γ 0.05: Every ball touch counts, but at low weight (~3 contribution for avg starter)DEFLECTIONS Γ 0.5: Active hands on defenseCONTESTED_SHOTS Γ 0.1: Defensive effortSCREEN_ASSISTS Γ 0.5: Off-ball work that creates shotsLOOSE_BALLS Γ 0.5: Hustle playsSECONDARY_AST Γ 0.5: Hockey assists (the pass before the assist)
Calibrated so average top-100 player gets ~6 per game from tracking (~3 from touches, ~3 from hustle).
Final IPM
The Gap Matters: A big gap between Any IPM and Net IPM reveals inefficiency. High Any + Low Net = ball-dominant but wasteful. High Any + High Net = true star.
Minutes Adjustment (The Bench Player Problem)
Raw IPM has a flaw: bench players with tiny sample sizes often top the leaderboards. A guy who plays 6 minutes and goes off looks like a god, while JokiΔ at 35 MPG with steady production looks pedestrian. We fix this with logarithmic scaling:
Where p = 1.5 is the harshness parameter and MPG_max is the league leader in minutes per game. This creates a smooth penalty curve:
- 35 MPG player: scale β 0.97 (nearly full credit)
- 20 MPG player: scale β 0.75 (moderate penalty)
- 6 MPG player: scale β 0.42 (heavy penalty)
Why logarithmic? Linear scaling would be too harsh on rotation players. Log scaling recognizes that the difference between 30 and 35 MPG is less meaningful than the difference between 5 and 10 MPG.
2. Ethical Hoops Score
Named after Jarrett Allen's philosophy, this metric rewards players who score efficiently through real basketball plays rather than hunting for fouls and free throws. It combines box score stats with tracking data to capture the full picture of "playing the right way."
Box Score Component
Breakdown of box score weights:
PTS Γ 1.0: Full credit for points scoredFTM Γ -0.5: Made free throws still required a whistleFTA Γ -1.5: Attempting free throws = hunting fouls (harsh penalty)AST Γ 0.9: Team play bonus (moderated to prevent point guard dominance)OREB Γ 0.9: Hustle playsDREB Γ 0.7: Expected, less credit than offensive boardsBLK Γ 1.5: Rim protection, clean defenseSTL Γ 1.5: Active hands, not flopping (same as blocks)PF Γ -1.2: Undisciplined play (harsher penalty)
Tracking Component (Hustle Stats)
The box score misses the quintessential "ethical hoops" plays: setting screens, boxing out, contesting shots. We add tracking data to reward the dirty work:
DEFLECTIONS Γ 0.4: Active hands on defenseCONTESTED_SHOTS Γ 0.1: Effort defenseSCREEN_ASSISTS Γ 0.5: Selfless off-ball work that creates shots for othersBOX_OUTS Γ 0.4: Doing the dirty work on the glassCHARGES_DRAWN Γ 1.5: Taking contact (capped at BLK weight β it's rare but valuable)
Calibrated so average top-100 player gets ~2.2 per game from tracking.
Final Ethical Hoops
Technical & Flagrant Foul Penalty
Technicals and flagrants represent the opposite of ethical basketball β losing your cool, dangerous plays, disrespecting officials. The penalty is added to the season total, then divided like any other stat. Clean games dilute the impact, creating a redemption path.
TECH Γ -4: Technical foul penalty (β 3 personal fouls worth)FLAG Γ -10: Flagrant foul penalty (β 2.5Γ tech, causes ejections + opponent FTs)
Example penalties (25 GP): JokiΔ (0T 2F) = -0.80/game. Gobert (3T 4F) = -2.08/game. Stewart (5T 2F) = -1.82/game. Meaningful but don't dominate rankings β fouls act as a tiebreaker, not the headline.
Ethical Per Minute (Eth/Min) = Ethical Total / Total Minutes, allowing comparison across different roles and playing times.
Who ranks high? Efficient mid-range assassins, post players who score without drawing fouls, rim protectors, and glue guys who set screens and box out. Who ranks low? Foul merchants who live at the line, players who rely on referee charity over skill.
3. Risk-Adjusted Stats (Sortino-Style)
A player averaging 25 PPG sounds great β but what if they score 40 one night and 10 the next? Consistency matters. Unlike standard deviation which penalizes ALL variance, we use downside deviation (Sortino-style) which only penalizes bad games.
Why Sortino over Sharpe?
Standard deviation treats a 45-point explosion the same as a 5-point dud β both are "variance." But explosions are good! We only want to penalize the downside.
Example with three players, all averaging 20 PPG:
- Player A: [20, 22, 18, 21, 19] β low variance β high R-PTS
- Player B: [10, 15, 20, 25, 30] β high downside games β lower R-PTS
- Player C: [20, 20, 20, 20, 70] β explosion helps, no downside β very high R-PTS
- R-PTS: Risk-adjusted points per game
- R-REB: Risk-adjusted rebounds per game
- R-AST: Risk-adjusted assists per game
Interpretation: R-PTS tells you what floor you can count on. A player with R-PTS of 17 means "even on a bad night, they'll probably give you around 17." It rewards consistency without punishing upside explosions.
4. Stocks (STK)
A simple but useful combination stat for defensive playmakers:
Found on the Player Stats tab. Elite perimeter defenders rack up steals; elite rim protectors rack up blocks. The rare players who do both (like peak Hakeem, prime AD, or current Wemby) are defensive unicorns.
Philosophy
These metrics share a common philosophy: context matters more than counting. Raw totals favor high-minute players on bad teams who chuck shots. Per-minute stats favor low-minute players with small samples. We try to thread the needle β rewarding genuine impact while adjusting for opportunity and reliability.
None of these are perfect. Basketball is too complex to reduce to a single number. But they offer a different lens than traditional stats, one that might surface players the box score undersells and expose players it oversells.
| # | Player | Team | GP | TD | DD | NTD | 30+ | 40+ | 50+ | 20/10 | PTSβ | REBβ | ASTβ | BLKβ | STLβ |
|---|
π Any IPM vs Ethical Hoops
Scatter plot showing player involvement intensity (Any IPM) against ethical play score. Dot colors reflect team colors. Hover for detailed stats with rankings.