POPOKERONpokeron.org

PokerOn · method note

How we score skill and peel luck.

PokerOn is skill poker: Hold'em where rank is decision quality, not the river. This page is the working paper in public: estimand, identities, simulation numbers, and what we refuse to claim. Public label remains Unrated until a certified solver season passes the publication gates.

1. Estimand

For a frozen format and value model Q_F, decision skill is negative expected counterfactual regret. The information set I is only what the actor could legally know before the action. Future cards and the realized pot are excluded, so a lucky river cannot rewrite a locked score.

r[i,k] = max_a Q_F(I[k], a) - Q_F(I[k], chosen[i,k])
theta_decision[i] = -E[r[i,k]]

That identity is exact given Q_F. It does not prove Q_F is GTO. Wrong Q with a systematic bias is more dangerous than noisy Q. In a 600-decision stress test, 0.15 BB random Q error kept Spearman 0.983 with latent skill; 0.50 BB persistent bias dropped it to 0.631.

2. Why chips (and even duplicate chips) are not Elo

Skill is not duplicate-normalized winnings. An interactive simulation used real cards, folds, calls, raises, divergent paths, seat rotation, zero-sum pots, and an independent 30,000-hand future-EV oracle. At six mirrored tables and 600 hands, duplicate normalization and raw winnings were statistically tied. Two and three tables were worse than raw; twelve tables helped only a little.

Shared deals cancel a shared deal-seat shock only when that shock survives interaction. They do not cancel opponent behaviour, skill-by-card interaction, or branch divergence.

3. Luck as a zero-mean overlay

Equity is a teaching quantity, not Elo. For a terminal heads-up call with pot P and cost C:

Q(fold) = 0
Q(call) = equity * (P + C) - C
break_even = C / (P + C)
luck = award - equity * pot
E[luck] = 0 over remaining runouts

Rank uses regret versus frozen Q. Luck is stored separately and forced toward 0. Nonterminal actions need ranges, fold equity, sizing, and future play. Equity alone cannot make Q(I,a).

4. Elo is a Rasch channel, not a chip average

X[i,k] = 1[ r[i,k] <= epsilon[k] ]
P(X=1) = 1 / (1 + 10^((D[k]-R[i])/400))
R = 1500 + (400 / ln 10) * theta
RD = (400 / ln 10) * posterior_sd(theta)
decision_EV_loss = 100 * E[mu_r] BB / 100 effective decisions

Elo and EV-loss stay two columns. We do not blend them into a hidden hybrid. Publication needs concordance, RD at most 80, and at least 60 cluster-weighted effective decisions. Repeated trivial spots in the same cluster are down-weighted.

5. How many decisions until skill is visible

Verified strongest-player identification under equal exposure (synthetic model, not a human guarantee):

Group / gap2460120300600
4 players / close42.7%54.6%64.7%80.1%89.5%
4 players / medium67.6%83.1%93.0%99.0%99.9%
6 players / close30.9%39.5%49.6%63.1%75.7%
6 players / medium51.2%68.1%80.1%92.5%97.7%

Session skill winner only if a pre-registered sequential rule (about 90-95% posterior) fires. Equal players may never produce a confirmed winner. That is honesty, not a bug.

6. Additive: information-set class (why 3-way is not heads-up)

A cheap transplant from heads-up study is to treat a checked flop as a capped preflop-raiser range and probe the turn. That heuristic is heads-up. In a 3-way pot the player not last to act often checks an uncapped range, so a flop that checks around is a different game.

I = (n_players, seats, street, board, history including check-around, hole)
class_HU_missed_cbet  !=  class_3way_OOP_probe
if class not in certified(Q_F):  r := undefined   (abstain)
do not score 3-way probes with heads-up Q

Nuts advantage and equity advantage are not the same lever. Card order on the same four cards can change the class (K765 vs 765K). Bet size is part of the action, not a skin. Until a certified multiway Q exists, StackRank leaves those spots unscored instead of inventing a probe chart. That is the learning for geeks: the math is the class of I, not a list of boards to blast.

7. Publication gates (still open)

  1. Frozen format, solver, ranges, abstraction, regret cap, season hash.
  2. Information purity and dominated-action tests.
  3. Agreement with an independent evaluator on a preregistered holdout.
  4. Calibrated Q intervals and abstention outside supported classes.
  5. Prospective prediction on fresh unaided human decisions.
  6. Material paired improvement over chips / equity / simple baselines.
  7. Stability across styles, seats, streets, stacks, and player counts.
  8. Integrity filters specified before inspecting outcomes.
  9. Independent reproduction.

StackRank Labs - Unrated. This is the skill channel the table uses. It is not a claim of scientifically validated public poker Elo.