Player Index Methodology
Plain-English overview of how we price players and cards. Thresholds match the live valuation engine — we do not invent bands for marketing.
The big idea
Most hobby tools answer "what did this sell for?" Player Index also asks what should this be worthgiven on-field performance, news sentiment, hobby heat, and the card's physical attributes (set, parallel, print run, auto/relic, grade, hype decay).
Players are treated like tickers. Individual cards are treated like derivatives of that ticker: a macro Player Index anchors valuation; card-level multipliers produce algorithmic fair value (AFV), buy/sell/hold signals, and bull/bear cones.
Player Index (macro)
Nightly (and on demand) we compute one index per player. In short:
- Baseline floor — an intrinsic dollar floor for a liquid flagship-style base card by career tier (not a raw eBay scrape for the ticker).
- Performance (career alpha) — sport-specific career metrics (e.g. MLB rWAR, NBA Win Shares, NFL Approximate Value), normalized by positional ceilings, with a prestige floor by tier.
- Sentiment (δn) — news/NLP catalyst score clamped to [−1, +1].
- Hobby heat (τwiki) — Wikipedia / trends multiplier so media attention can lift or damp the ticker.
I_macro = M_base × (1 + α_effective + δ_n) × τ_wiki
Probability cones on the ticker come from projected I_macro ± 1.5σ of recent history (slope + volatility). Flat ±15% (I_macro × 1.15 / × 0.85) is only the cold-start when history is too thin. Card-level cones scale those macro bands onto the card dollar anchor when available.
Card fair value (micro)
For a specific card we anchor on I_macro, then apply a card ratio (how expensive this piece historically trades vs the player), market momentum, and physical multipliers — scarcity / print run, rookie, autograph, relic, grading, and short-term hype decay on new releases. Liquid "benchmark" comps and a multiplier matrix help price thinner parallels when direct sales are scarce. Ultra-scarce 1/1s use a separate grail waterfall over eBay BIN ladders.
Signal legend
Signals compare algorithmic fair value (AFV) to the current ask. Delta = (AFV − ask) / ask × 100.
- STRONG BUYAFV ≥ +20% vs ask
At current prices this card looks meaningfully undervalued — it may be worth picking up before the market catches on.
- BUY+5% to +20%
There's a bit of room between what it's selling for now and where we think it's headed — a reasonable time to buy.
- HOLD−5% to +5%
The price is pretty close to fair value right now. No urgent reason to buy or sell — just keep an eye on it.
- SELL−20% to −5%
The current asking price is above what we'd expect based on the player's momentum. If you own it, this could be a good time to flip.
- OVERPRICEDAFV < −20% vs ask
Sellers are currently asking well above what the market data supports. We'd wait for a correction before buying.
- UNCOMPEDNo usable ask price
Forecast accuracy
Accuracy not published yet
We only show hit rates after a backtest run writes enough samples to forecast_accuracy_daily. Until then we will not display placeholder percentages.
Run backend/scripts/backtest_afv_hit_rate.py to populate this section.
Full breakdown: Accuracy dashboard.
Sports coverage
Macro indexes are published for MLB and, when ledger coverage is live, NFL and NBA. Fantasy trending feeds may remain gated until form models are refreshed for a given sport.
Disclaimer
Card values, forecasts, and arbitrage signals are algorithmic estimates for informational and entertainment purposes only. They are not financial, investment, or collecting advice. Markets can and do disagree with the model.
Deeper math reference for engineers is available in the product repo under docs/arithmetic/.