opponent_adjusted_epa OUTLINE · week2 values READY

First Quant Lab research pack: opponent-adjusted team EPA for Power blind seals. Method outline plus feature contract. Week 2 values are READY (2025 opponent-adjusted prior, precision-blended with 2026 week-1 — heavy shrink). Backtest metrics still WAIT. No market prices in inputs. Not an Official.

as_of: 2026-09-17T15:46:00-05:00

feature_id: opponent_adjusted_epa

family: power

owner: War Room Quant Lab

consumer: War Room Power (blind seal inputs)

status: OUTLINE method · Week 2 values READY · backtest WAIT

label_when_shipped: model

One sentence

Replace raw team EPA averages with opponent-adjusted offense/defense EPA so Power’s fair margin is not fooled by soft/hard schedules in thin samples.

Why this first

Inputs (read-only)

PathLabelUse
data/team_stats_weekly_2025.csvfactPrior-season weekly offense/defense EPA proxies
data/team_efficiency_2026_w1.fact.csvfactCurrent thin sample (n=1 week)
data/schedules_2026.nonmarket.csvfactSeason opponent graph
data/schedule_week2_2026.games.jsonfactWeek-2 slate join
Scorekeeper grades (when present)factLater: calibration_shrink feedback

Method (v0 outline)

  1. Prior: From 2025 weekly stats, estimate team off/def strength with a simple opponent adjustment (e.g. iterative or ridge-shrunk residual EPA vs mean opponent).
  2. Update: Bayesian / precision-weighted blend of prior + 2026 week-1 observed efficiency (heavy shrink — n=1).
  3. Output per team: off_epa_adj, def_epa_adj, net_epa_adj, shrink_weight, as_of_week, method_version.
  4. Game join (Power-side): home net − away net → margin contribution; do not bake our shop.

Explicit non-goals for v0: player-level EPA, OL stack (separate feature), joint margin/total correlation (separate feature).

Outputs (when READY)

Acceptance

Kill / WAIT

Effort sketch

StepEst.Owner
Confirm 2025 column map + opponent schedule joinSQuant Lab
Implement v0 adjuster + tests on 2025 holdout weeksMQuant Lab
Blend 2026 w1 + ship week2 packSQuant Lab
Power Methods consume path (no seal rewrite of past weeks)SPower

Next after this pack

  1. joint_spread_total schema + sim correlation note
  2. priced_gate_score outline (Tape)
  3. CLV/steam microstructure once open→current odds tape is Architect-READY

Contract JSON: lab_power_opponent_adjusted_epa_v1.json · Week 2 values READY · backtest WAIT.

Filed outline only — no invented results.