Box EV is a sum, not a score
EV = Σ ( pull_rate × avg_price ) − sealed_price
Per-rarity pull rates measured from published open data, multiplied by the live average
singles price of that rarity in that set. Every chase card's contribution is itemized
one tap deep. When rates are placeholder-quality, the row says LOW CONF
instead of pretending.
Grading EV uses your gem rate
EV = p₁₀·PSA10 + p₉·PSA9 + (1−p₁₀−p₉)·raw − (raw + fee)
Default is best-case; Pro dials in real P(10)/P(9). Graded comps run through a
trailing-median smoother, and ladders where PSA 10 prints > 12× PSA 9 are dropped
as data noise — the spread that looks too good to be true usually is.
Receipts are point-in-time
RETURN@30D = px(fired + 30d) ÷ px(fired) − 1
A screen's picks are written down the night it fires, at the prices that were live
then. Scoring reads forward from that stamp — never backward from today's winners.
Nothing is re-run against a tuned filter, which is why a screen is allowed to look bad.
Prices carry a trust tier
Feeds disagree, thin markets print junk, vintage sealed has no clean source. Every
sealed price carries an A/B/C trust tier from override / cross-check / sales volume,
and a nightly audit battery flags anything implausible — a box priced below its own
booster pack never survives the morning run.
Exit value, not the sticker
EXIT = venue_price − venue_fees − shipping
Market price is what a card trades at; exit value is what lands in your account after
the venue takes its cut. Venues price the same card differently, so the spread between
them is shown rather than averaged away — sell where the number is best, not where the
chart was drawn.
Delivered cost, not sticker shock
An in-person price shouldn't be judged against a raw market number — the honest
comparison is market plus shipping for the same card delivered. The scanner
does that arithmetic at the table, because $5 over market on a $4 card in hand is a
better deal than it sounds.