English. Preflop Lab is a single-file, fully offline Texas Hold'em study tool — four modes in one double-clickable HTML file (no install, no network, no expiry): (1) tournament push/fold Nash (ChipEV + ICM), (2) facing-open response solver with lockable opening ranges (call / 3-bet / reshove, ChipEV + ICM), (3) squeeze spots (open + cold-call, 3-way CFR), (4) a Monte-Carlo-CFR postflop solver for heads-up pots (lockable ranges, any board). Everything is hand-written and approximation-based; it is meant for learning range shapes and boundaries, not for replacing commercial solvers. Not affiliated with HoldemResources (HRC), PioSOLVER, or GTO Wizard.
双击 index.html 即可使用(也可开启 GitHub Pages 直接在线使用)。永不过期、不联网、零依赖。
| 模式 | 干什么 |
|---|---|
| 锦标赛 Push/Fold | 首入全压 or 弃牌的 Nash 均衡(含 ICM,自填奖金结构) |
| 应对开池 | 前位有人开池(尺寸/范围都可调,HRC node-lock 口径),中后位 弃/平跟/3bet/全压,ChipEV + ICM |
| 挤压(三人池) | 开池 + 中间平跟(双范围锁),你在后位:超跟 / 挤压 / 全压,三人 CFR |
| 翻后求解 | 两人池任意牌面 MCCFR 近似均衡:双方范围锁定,逐节点下钻,逐组合 EV 显示, |
| 跨牌面聚合报告(顶张×纹理 43+ 格热力矩阵,默认配置命中预计算库秒开), | |
| 解缓存(IndexedDB 同配置秒开),1500–3000 次迭代 |
共同特点:13×13 矩阵按动作分色、悬停看每手牌各动作频率/EV、范围编辑器(滑块 + 格子 +
22+,A2s+,K9s+,22-TT,ATs-AQs 文本串双向解析)、结果附收敛/可剥削度指标。
- 翻前全压节点精确结算(2.5 万次/对 蒙特卡洛 equity 表 + 全枚举校验);进翻后节点按乘性 equity 实现率近似;ICM = Malmuth-Harville(vs 模式非全压终端按实现后 equity 二值映射,方向性参考)
- 翻后:两人池 ChipEV;外部采样 MCCFR(RM+、遗憾剪枝、转/河牌按牌面效果分桶的不完美回忆抽象); 摊牌按真实牌面精确结算。翻牌根为 MC 近似(±3-5pp),河牌根接近精确;低于 1500 次迭代勿读数
- 无多人池(挤压模式为三人池专用近似)、无 rake、无 FGS/PKO;精细混合频率请以商业求解器为准
完整模型声明见 index.html 页脚与各模式说明。
成品是单文件 index.html(由模板 + 预计算 equity 表 + 聚合报告库注入生成,无需重新生成数据):
cd src && uv run python build.py ../data/equity169.json ../index.html重算 equity 表(约 28 分钟,可选):
cd src && uv run --with numpy python precompute_equity.py --n 25000 --out ../data/equity169.json重算聚合报告库(约 4 分钟,可选):
node src/precompute_library.js # 写 data/library_agg.json(默认 SRP 100bb 配置 48 格)node test/solver_test.js # 翻前求解器 45 项
node test/pf_engine_test.js # 翻后评估器/组合机 18 项
node test/pf_solver_test.js # 翻后求解器行为 26 项
node test/ui_smoke.js # UI 冒烟 56 项(需 npm i jsdom 到 test/.tmp-jsdom/)index.html— 成品(唯一需要打开的文件)src/hrc_template.html— 前端模板(全部求解器与 UI)src/build.py— 注入 equity 表与聚合库生成成品src/precompute_equity.py— equity 表蒙特卡洛预计算 + 自检src/precompute_library.js— 聚合报告库离线预计算(Node)data/equity169.json— 预计算 169×169 equity/tie/组合权重表data/library_agg.json— 预计算聚合报告库(默认 SRP 100bb 配置 48 格,6KB)test/— 数值与 UI 测试
MIT(见 LICENSE)。仅供学习研究;所有结果为近似均衡,不构成任何实战保证。
本项目与 HoldemResources GmbH、PioSOLVER、GTO Wizard 无任何关联;
相关名称仅用于描述算法思路来源。