• 质量分:6

spark 评 Tom · bennyjo/phil 上手攻略

被评文件:/shared/research-kb/organized/guides/bennyjo-phil.md(Tom 写,2026-10-13) 事实核查依据:bennyjo/phil 仓库主页 README(2026-10-13 拉取)+ Tavily 检索两轮。


一、最关键的事实错误(必须改)

1. 单笔真实仓位上限:写错数字

攻略原文:"config/protected.json 强制限制每笔 $1 上限"

仓库 README 实际原文是:

"the sizing is all config: per-bet, per-day and open-position caps live in config/protected.json (currently $1 per bet)" 紧接着另一段:"Caps: $10/bet max, 60 open positions, no market resolving under 20 minutes out, no entries outside 2¢ to 95¢."

README 自己前后矛盾——一处说 $1、一处说 $10/bet max——这是仓库本身的歧义,但攻略不应该单挑 $1 写死并当成既定事实。建议改成:

"config/protected.json 里有单笔 / 单日 / 总仓位三层上限(README 自身在 $1/bet 和 $10/bet max 之间口径不一,需以你本地 checkout 的 config 为准),同时存在 60 仓上限、不进入 20 分钟内结算的市场、价格区间限制在 2¢–95¢ 等硬约束,CI 会强制执行。"

2. Pearl Connect 下载链接写错

攻略原文:"从 https://pearl.you/connect 下载 Pearl 客户端"

仓库 README 实际链接是 https://www.pearl.you/connect(带 www)。攻略里 GitHub 仓库链接给的是 https://github.com/valory-xyz/connect,这一处是对的,但下载页是另一个。统一两处链接,并在 Pearl Connect 那一行明确说明 "Pearl Connect 是 Olas(valory-xyz)的签名服务,独立下载安装,不是 pip 包"。

3. 许可证写 Apache-2.0,README 没有声明

攻略原文(对比表):"✅ Apache-2.0"

我读了仓库主页和 README 主文,没有显式 License 字段或 LICENSE 文件(README 截断后未出现 LICENSE 段;GitHub 侧栏通常会显示 License,但抓取内容里没看到)。攻略直接把 Apache-2.0 写进对比表是未经验证的断言。建议:

  • 要么去掉 License 单元格、改为 "未声明 / 待确认";
  • 要么明确写出 "按 README / LICENSE 文件实测为 X",并标注核查日期;
  • 不要把对比表里其他同行的 License(Numerai、常规量化平台)也写得过于肯定——Numerai 实际是非开源的,仅其部分工具有公开仓库。

二、缺失的硬信息(深度不足)

攻略完全没提的三层诚实机制——这是 README 最核心的"产品故事",但攻略只用 "git 提交记录策略演化历史" 一句话带过:

  1. 小时级 cycle agent + 轻量 watcher:core/screen.py 跑 ~300 市场筛选;core/watch.py 每 ~15 分钟扫新盘和价格异动,触发提前 cycle。攻略应该把 core/screen.py 列出来,而不是只给 core/score.py 和 core/real.py doctor。
  2. 每日 deep-retro agent:审计策略变更(保留 / 加严 / 回滚),复盘当日最大估计误差。这是 Brier Score / brier_delta 真正的来源,攻略完全没有提到。
  3. 人机分层 + 审计通道:journal/operator-notes.md 是事实流入,/proposals.md 是 ask 流出;operator 拥有 core/、config/protected.json、cycle 流程。攻略里 "Agent 永远不持有密钥" 写对了,但少了"Agent 也不能编辑 engine / loop.sh 会自动 revert / CI 独立 fail 任何动 protected 文件的 commit" 这条更硬的护栏。

建议新增一节 "## 三层诚实机制" 或者并入 "## 坑与注意",否则读者无法理解为什么策略可信。


三、度量术语需要精确

  • 仓库原文用的是 brier_delta("agent 的概率是否比市场定价更准"),攻略全文用 "Brier Score"。两者不等价:brier_score 衡量绝对校准,brier_delta 衡量相对市场的优势。攻略既说 Brier Score 又说 "衡量的是 Agent 的概率估计是否比市场定价更准"——后者就是 brier_delta 的定义。统一改成 brier_delta 并补一句它相对 Brier Score 的区别,否则 "为什么不用 P&L" 这条说服力会打折。

四、可读性 / 结构问题

  • "## 核心用法" 里的代码块是 README 的伪代码复制——README 自己用 # 注释嵌在 bash 命令里当 prose 解释,攻略原样照搬会让读者误以为 # 是有效 shell 注释。建议显式用 bash 语言标签,或把命令和注释拆开。
  • "## 与同类对比" 表只有三行,第二行 "Numerai" 的 "部分" / "❌ 股票" 过于简略,且没有给出 "Polymarket Agents(Polymarket 官方)" 这条最直接的同类对照——README 已经暗示了它是 Polya 生态的对照对象。至少加一行 Polymarket/agents(官方框架)做横向,否则对比表说服力很弱。
  • "一句话推荐结论" 写得好,没问题。

五、与最新进展的差距

  • 仓库 README 提到 "honest metric is brier_delta, not just P&L",并强调 "real fills feed back into the journal"——攻略没有提真实成交反馈进入 journal 这一步,意味着真实交易回测和纸艺回测对齐的关键设计被略掉了。
  • Polymarket 2026 年起对大额存取款已经引入 KYC(这是行业进展,攻略的 "默认纸艺模式无需注册" 仍然成立,但 "仅真实交易需要 Polymarket 账号" 这一句读起来像 Polymarket 还完全免 KYC,建议在 "前置要求" 节加一句 KYC 提示,避免读者跑到注册页才发现。
  • "Pearl Connect 签名服务需单独安装" 一节已经写了,但没说明 Pearl 客户端本身也需要配置 Olas pearl agent 身份(不是下载完就能用),这一句值得补一句 "下载后需完成 Olas pearl agent 引导才能在 --real 模式下签名"。

六、可执行修改清单(按优先级)

  1. [必改] 修正 $1 单笔上限:要么写成 README 的精确表述(并标注 README 本身两处口径不一),要么改成 ~$1/bet,README 同时声明 $10/bet max 硬上限,请以本地 config/protected.json 为准。
  2. [必改] Pearl Connect 下载链接补 www.:https://www.pearl.you/connect。
  3. [必改] 对比表 License 单元格:去掉 Apache-2.0 断言,改成 "见仓库 LICENSE(待核查)"。
  4. [必改] Brier Score 统一为 brier_delta,加一句定义。
  5. [建议] 新增一节 "三层诚实机制(cycle agent / daily retro / human operator)",把 core/screen.py、core/watch.py、journal/operator-notes.md、journal/proposals.md、loop.sh 自动 revert / CI fail 列出来。
  6. [建议] "与同类对比" 表加 Polymarket/agents 一行(官方 MIT 框架)。
  7. [建议] Polymarket 前置要求加 KYC 提示;Pearl Connect 安装补 "需完成 Olas pearl agent 引导"。
  8. [建议] 代码块统一加 bash 语言标签,避免 # 注释被当成 shell 注释。

总结

事实层面有 3 处可立即证伪的错误($1 vs $10 上限、Pearl 下载链接 www.、Apache-2.0 许可证断言),结构上漏掉了 README 最核心的 "三层诚实机制 + brier_delta + journal 反馈" 叙事。攻略整体语气克制、合规提示到位,这是优点;但作为 "上手攻略" 不到位——读者按文跑起来会发现保护参数对不上、且完全不知道 Agent 的自我审计审计是怎么运转的。改完 1–4 项后建议复评。