方法论:论点如何变成 Gap 分数
四步流水线,把自然语言投资论点转换成一个可比较的概率差距数字。全流程透明,每步都能独立验证。
一句话版本
拆解 → 检索 → 分类 → 计分。主模型把论点拆成可验证的子声明,Polymarket API 检索对应市场, 双模型集成判断方向,加权公式算出 -100 到 +100 的 Gap 分数。典型耗时 30-90 秒。
第 1 步:拆解论点
输入是你写的任何长度自然语言论点。输出是一组原子子声明,每条有:
- claim_text:一句可验证的陈述("美联储在 2026 年 12 月前累计降息不超过 50bps")
- timeframe:明确时间窗口("2026-12-31 前")
- verifiable_predicate:机器可判定的条件("fed_funds_rate 下降 ≤ 0.005")
- search_keywords:3-5 个用于第 2 步检索的关键词
- importance:critical / high / medium,用于第 4 步加权
模型:主模型(大语言模型 API)。 选它是因为长论点里隐含条件的挖掘能力 — 上一代模型经常把"BTC 年底破 12 万" 这种原子声明当成一条,而主模型会意识到其中同时蕴含了时间、价格和 "破"(达到 or 超过?)三个独立可验证维度。
温度设为 0.1 保证同一输入输出稳定。失败后有一次重试, 再失败就在该论点上标记 decompose_failed 并自动退回积分。
第 2 步:检索市场
每条子声明拿着自己的 search_keywords, 查询 Polymarket CLOB API 的 /markets 端点。 只保留:
- 状态为 active(未结算)
- 24 小时交易量 > $1,000(排除完全没流动性的长尾市场)
- 截止日期在子声明时间窗口之内
剩下的候选按关键词相关度 + 交易量排名,每条子声明取 Top 5 送入第 3 步。
如果某条子声明一个候选都找不到(比如论点涉及 Polymarket 从不覆盖的细分话题), 系统会把这条子声明标记为 polymarket_matchability = "none", 交给第 3 步之外的 AI fallback(见下方"无匹配项的处理")。
第 3 步:分类方向
有了候选市场池,接下来要判断每个市场相对于子声明的方向:
- 支持(aligns):市场"YES"概率高 = 子声明为真的概率高
- 反对(contradicts):市场"YES"概率高 = 子声明为假的概率高
- 中立(neutral):两者不直接相关
这一步用双模型集成:两个独立家族的大模型并行对同一 (子声明, 市场) 对给出标签, 投票一致时直接采用,不一致时以主模型为准。
为什么不信任单模型?投资领域的语义歧义很细 — "Fed 不降息"和"Fed 保持利率不变" 在市场术语里不完全等价(后者排除了加息可能性)。让两个不同家族的模型独立判断, 可以捕捉单模型的盲区。实测双模型一致率约 82%,剩 18% 的分歧中主模型胜率略高 (人工验证),所以平手时偏向主模型。
无匹配项的处理:如果某条子声明在第 2 步拿到 0 个候选市场, 另一只独立的备用模型会对这条子声明单独生成一段 100-200 字的独立分析, 在前端明确标注 "AI 独立分析 · 非市场信号"(琥珀色卡片)。 用户可以判断是否把它纳入 Gap 计算。
第 4 步:计算 Gap 分数
最后一步纯计算,在浏览器里实时跑。每条子声明 i 有:
ui:用户滑动滑块输入的主观概率(0-1)mi:该子声明匹配市场的方向加权概率wi:子声明重要性权重(critical=3, high=2, medium=1)
mi 是候选市场池内所有市场概率的方向加权: 支持方向的市场按 +P 计入,反对方向按 1-P, 中立的不计。再按相关度归一。
最终 Gap 分数:
Gap = 100 × ( Σᵢ wᵢ × (uᵢ - mᵢ) ) / ( Σᵢ wᵢ )
范围 -100 到 +100。正数 = 你比市场更乐观 / 更看多这个论点成立; 负数 = 你比市场更悲观 / 更看空。0 附近意味着你的假设几乎完全符合共识。
颜色分档:|Gap| < 10 绿色(基本吻合),10-25 黄色(显著分歧), > 25 红色(你和共识差距很大,值得重审假设)。
失败怎么办?
以下情况会自动退回积分:
- 第 1 步失败(主模型拒绝拆解或重试后仍报错)
- 第 1 步产出 0 条有效子声明
- 后台任务超过 90 秒无响应(通常是 Vercel serverless 超时)
如果第 2 步所有子声明都 0 匹配 — 不退款, 但第 3 步的 AI fallback 会对每条生成独立分析,你看到的仍是一份有内容的报告, 只是 Gap 分数会基于纯 AI 信号而非市场。
已知局限
- Polymarket 覆盖有偏。美国政治、加密、特定宏观事件覆盖极密,但中小盘股票、中国宏观、私人市场几乎空白。 涉及后者的论点会大量走 AI fallback,市场信号占比低。
- 流动性噪声。成交量 < $10K 的市场概率可能单笔 $1000 订单就偏离 5-10%。 我们过滤了 24h 成交 < $1K 的极薄市场,但 $1K-$10K 区间仍会被纳入 — 这些市场 的概率应当理解为弱信号。
- AI 分类有错。双模型集成后仍有约 5-8% 的 (声明, 市场) 对被标错方向。 分析详情页允许用户手动覆盖每条 link 的方向标签。
- 地理限制。Polymarket 在美国受 CFTC 限制,在中国大陆无法访问, 在部分司法辖区(印度、多个中东国家)合法性未定。不建议在这些地区参与市场 — 但读取市场数据做研究通常是合规的(属于公开信息)。