Skip to content

Blackjack Wonk

Blackjack Wonk (BJW) is a research-grade blackjack simulation framework for evaluating card counting strategies, betting systems, and rule set variations with statistical rigor.

BJW is a tool for people who already know the math — analysts, counters, and researchers who want to run controlled experiments rather than accept published tables at face value.


What It Does

BJW simulates blackjack play under fully specified conditions and produces:

  • EV per hand — expected value under the configured strategy and rules
  • SD, DI, SCORE, N₀ — via BJW's current variance and risk pipeline
  • EV by count bucket — per-TC (or per-RC for unbalanced systems) breakdown of edge contribution
  • Count frequency distribution — time spent at each TC or RC level
  • Action frequencies — doubles, splits, surrenders, insurance decisions
  • Deviation tracking — which index plays were taken and when

Every simulation is driven by a manifest — a JSON configuration capturing game rules, counting system, betting spread, play policy, deviations, and PRNG seed. Same manifest, same seed, same results. Always.


What It Supports

Deck counts: 1, 2, 6, 8 Dealer rules: S17, H17 Doubling: DOA (any two cards), D10 (10/11 only) Split rules: DAS, NDAS, RSA Surrender: Late Surrender, No Surrender Penetration: configurable by percentage cut card

Counting systems: Hi-Lo, KO, REKO, Zen, Halves, Hi-Opt I, Hi-Opt II, Omega II, Red Seven, Ace-Five, and others — see Counting Systems

Betting: flat, count-based spreads (1-2 through 1-16), progressions (Martingale, Paroli, 1-3-2-6, and others), state machine policies

Deviations: Illustrious 18 (Hi-Lo), KO Preferred and Full sets, custom deviation policies


Validation Status

BJW's variance, SD, DI, SCORE, and N₀ outputs are independently recomputed from raw accumulators. Basic strategy across all 16 policy variants has been audited against published charts.

BJW does not currently match CVData output on counted scenarios. The gap is documented, classified by root cause, and published openly.

Full validation positionAudit detail


How It Works

Architecture and designSimulation methodologyHow to read a raw manifest JSON fileHow to read a results JSON file


Questions and Contact

Issues and questions: github.com/ether-ore/BJW/issues