关于 adverse-selection-prior
adverse-selection-prior 是评估收到的交易或其他提议是否可能对提议方有利的技能。它结合提议类型、表面公平度、信息差和对方类型,计算先验概率及供下游使用的 EV 折扣。
主要功能
- 01按提议类型设定基准先验
- 02评估提议表面公平度
- 03衡量提议方的信息优势
- 04结合对方行为类型调整先验
- 05输出 EV 折扣与复核提示
适用场景
- 01评估奇幻体育交易提议
- 02审查其他团队弃置的球员
- 03分析主动发来的职位或并购提议
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ lyndonkl/ claude --skill adverse-selection-prior安装后在 Claude Code 中输入/adverse-selection-prior确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
resources/methodology.mdtemplate.mdresources/evaluators/rubric_adverse_selection_prior.json详细介绍
逆向选择先验
目录
示例
场景:我们收到一份幻想体育交易提议。对手(归类为 active 原型)用一名明星击球手(对方一侧)换我们两名中档击球手(我方一侧)。表面上看,这笔交易大致公平——我们的自有预测模型认为这笔交易对我们有 +3% 的 EV。
输入:
offer_type:tradeproposer_archetype:activeoffer_symmetry_score:72(看起来公平,对我们略有利)proposer_info_asymmetry:55(中等——我们没有他们可能掌握的终结者消息,但也没有公开的重大消息)
步骤 1 —— 按提议类型设定基础先验:
- 收到的交易提议基础先验 = 0.40(低于 50%,因为是他们主动提出的)。
步骤 2 —— 对称性调整:
offer_symmetry_score= 72 > 70 的阈值 -> +0.07。- 当前先验:0.47。
步骤 3 —— 信息不对称调整:
proposer_info_asymmetry= 55(低于 60 的阈值,但并非微不足道) -> -0.05。- 当前先验:0.42。
步骤 4 —— 原型调整:
active原型 -> 他们在提出交易前做过分析 -> -0.05。- 最终
prior_ev_probability:0.37。
步骤 5 —— 建议的调整(EV 折减):
- 先验为 0.37(中性值为 0.50)。映射为乘法折减系数。
recommended_adjustment= 0.88(对我们自己的预测应用 12% 的 EV 折减)。- 我们的模型给出 +3% 的 EV;折减后:1.03 x 0.88 = 0.907 -> 实际预期收益为负 9.3%。
步骤 6 —— 贝叶斯推理: “这份提议由活跃交易者提出。他们可以提出任意交易,也可以不交易,但他们选择了这笔交易——这是对他们有利的 +EV 的有力证据。表面对称性(72)有所抵消,但中等程度的信息不对称(55)和善于分析的原型使先验降至 0.37。应用 12% 的 EV 折减。我们 +3% 的预测调整后变为 -9%;低于接受阈值。”
步骤 7 —— 覆盖提示:
- “如果终结者消息在过去 48h 内公布,而我们尚未查看新闻源,那么信息不对称程度实际上为 85+;请以 asymmetry=85 重新运行(先验降至约 0.22)。”
- “如果我们能独立确认这名明星击球手没有未公开的伤病或停赛情况,那么对称性实际上为 80+;请以 symmetry=85 重新运行(先验升至约 0.44)。”
- “如果这是一个重复博弈伙伴,我们已与其合作 5+ 次,且他们从未提出过 -EV 交易,那么其原型实际上会转向 'good-faith',基础先验上调 +0.05。”
输出约定:
{
"prior_ev_probability": 0.37,
"recommended_adjustment": 0.88,
"bayesian_rationale": "Active trader selected this offer from all possible offers they could have made -- strong signal it is +EV for them. Surface symmetry (72) partially offsets, but moderate info asymmetry (55) and analytical archetype push prior below 0.40.",
"override_hints": [
"If closer/injury news broke in last 48h, asymmetry jumps to 85+; re-run.",
"If we can independently confirm the star has no hidden issue, symmetry rises to 85; re-run.",
"If repeated-game partner with cooperation history, base prior rises by +0.05."
]
}
工作流
复制此清单并跟踪进度:
Adverse Selection Prior Progress:
- [ ] Step 1: Identify offer_type and set base prior
- [ ] Step 2: Collect proposer_archetype from opponent classifier
- [ ] Step 3: Score offer_symmetry (0-100) from surface analysis
- [ ] Step 4: Score proposer_info_asymmetry (0-100)
- [ ] Step 5: Apply adjustments to produce prior_ev_probability
- [ ] Step 6: Convert prior to recommended_adjustment (multiplicative haircut)
- [ ] Step 7: Write bayesian_rationale and override_hints
- [ ] Step 8: Validate against rubric
步骤 1:识别提议类型并设定基础先验
对收到的提议进行分类。不同提议类型的基础先验不同,因为对手受到的选择压力各不相同。基础先验表请参阅 resources/template.md。
-
trade-> 基础先验 0.40(主动选择;由他们撰写提议) -
waiver_claim_dropped_by_other-> 基础先验 0.42(他们选择放弃该球员;其选择性弱于交易) -
free_agent_pickup_available-> 基础先验 0.48(无人认领;可能只是没人注意到,逆向选择较弱) -
counter_offer-> 基础先验 0.38(他们拒绝了我们的首次提议并拟定反提议——选择性更强) -
generic-> 基础先验 0.40(上下文未知)
步骤 2:收集提议方原型
从对手分类器中读取对手原型(如果可用),或自行估算。完整调整表请参阅 resources/methodology.md。
-
active-> 在出价前已进行分析 -> archetype_delta = -0.05 -
expert-> 选择压力最强 -> archetype_delta = -0.08 -
dormant-> 可能未深入分析便点击 -> archetype_delta = +0.08 -
frustrated-> 情况复杂(恐慌抛售还是暗中筹划) -> archetype_delta = 0.0(但标记出来,逐案审查) -
unknown-> 中性 -> archetype_delta = 0.0
步骤 3:评估报价对称性
使用我们自己的估值模型,计算 offer_symmetry_score(0-100),衡量从表面上看报价有多公平。
- 0-30:明显有利于对方(较少见;通常带有掠夺性)
- 30-70:不对称,但尚属合理
- 70-100:表面上看公平或略微有利于我们
- 应用调整:如果
offer_symmetry_score> 70,则加上 +0.05 到 +0.10(分数高于 85 时取较高值) - 如果
offer_symmetry_score< 30(且仍未明显带有掠夺性),标记为“好得令人难以置信”——进行调查
步骤 4:评估提议方的信息不对称性
估算 proposer_info_asymmetry(0-100)——他们是否可能掌握我们不知道的信息?
- 检查近期消息(伤病、停赛、终结者角色变化、阵容调整、管理层评论)
- 检查公开信号(阵容构建是否暗示他们知道即将发生的交易、DFA 观察名单、左右打席安排变化)
- 0-30:公开信息对等(双方都了解所有相关信息)
- 30-60:差距较小(他们可能关注了我们漏看的球队随队记者)
- 60-100:差距显著(刚发布消息,时机近似知情人士)
- 应用调整:如果不对称性 > 60,则减去 0.10 到 0.20(分数高于 80 时减得更多)
步骤 5:应用调整,得出先验概率
将基础先验概率与所有增量合并。推导过程见 resources/methodology.md。
- 从步骤 1 的
base_prior开始 - 应用步骤 3 的
symmetry_delta - 应用步骤 4 的
asymmetry_delta - 应用步骤 2 的
archetype_delta - 将最终结果限制在 [0.10, 0.70] 范围内——超出此范围表示规范存在错误
-
prior_ev_probability= 限制范围后的总和
步骤 6:将先验概率转换为建议调整值
将先验概率转换为乘数形式的 EV 折减值,下游使用方可将其应用于自己的 EV 计算。映射关系见 快速参考。
- 如果先验概率 >= 0.50:
recommended_adjustment= 1.00(不折减;罕见情况) - 如果先验概率 = 0.45:
recommended_adjustment= 0.95 - 如果先验概率 = 0.40:
recommended_adjustment= 0.90 - 如果先验概率 = 0.35:
recommended_adjustment= 0.85 - 如果先验概率 <= 0.30:
recommended_adjustment= 0.80(大幅折减;强烈的逆向选择信号) - 下游使用方将自己的 EV 乘以此系数:
adjusted_EV = own_EV x recommended_adjustment
步骤 7:撰写理由和覆盖提示
生成字符串输出,使先验概率可供审查。
-
bayesian_rationale:用 2-4 句话说明基础先验概率、影响最大的两项调整和结论 -
override_hints:提供 2-5 条条件语句,格式为“如果 X,则将 Y 调整为 Z 后重新运行” - 提示必须可执行——每条都应指出一个具体输入,且调整后会使先验概率改变 >= 0.05
步骤 8:根据评分标准验证
依据 resources/evaluators/rubric_adverse_selection_prior.json 对输出进行评分。最低标准:平均分达到 3.5 或以上。
常见模式
模式 1:休眠经理的交易提议(先验概率升至 0.50 附近)
- 信号:对方过去 30 天内进行的阵容调整少于 3 次;类型 =
dormant - 解读:对方可能只是随手点击,没有经过分析;通常会导致对方主动提出的交易存在逆向选择的筛选压力较弱
- 调整:archetype_delta = +0.08;如果对称性较高,先验概率可接近 0.50
- 建议调整值:0.95(仅折价 5%)
- 领域示例:并购中不再投入精力的卖方(创始人退休,未做尽职调查)、不了解情况却大量发送工作邀约的招聘人员、以低于市场价出售二手商品的遗产清算人
模式 2:专家交易者的提议(先验概率降至 0.25 附近)
- 信号:对方是公认的精明交易者——能高效赢得拍卖,交易频繁且获利;类型 =
expert - 解读:选择压力最强。对方分析过这笔提议以及其他可能的提议;之所以选择这笔,正是因为它对他们来说最有利(+EV)
- 调整:archetype_delta = -0.08;即使没有明确消息,不对称性也很可能偏高
- 建议调整值:0.80-0.85(大幅折价)
- 领域示例:主动型投资者提出收购你的持仓(他们发现了你错过的价值)、量化基金竞购你的非流动性持仓、顶级招聘人员推荐一个职位(该职位很可能有隐藏的不利因素——你是他们的备选方案)
模式 3:沮丧/恐慌抛售者的提议(情况不一;需具体判断)
- 信号:对方损失惨重、交易受情绪影响;类型 =
frustrated - 解读:分两种情况——(a)确实因情绪失控而恐慌抛售(对我们有利,+EV),或(b)利用沮丧情绪作掩护的策略(对我们不利,-EV)
- 调整:archetype_delta = 0;需要额外信号(近期重大亏损 + 聊天/消息语气)来判断
- 建议调整值:默认 0.90;确认是恐慌抛售时可升至 1.05,怀疑是策略时可降至 0.80
- 领域示例:并购中的困境卖方(因破产而出售)、刚入职就“甩掉”工作的求职者(为何这么快离职?)、离婚期间按低价出售物品的车库甩卖
模式 4:主动发来的工作邀约或并购接洽
- 信号:你没有表示有意求职或出售,对方就发来了邀约
- 解读:他们从大量候选对象中选中了你。为什么偏偏是你?要么(a)你确实稀缺且匹配(+EV),要么(b)你是备选方案,而职位/交易存在缺陷
- 调整:base_prior 0.40;symmetry_delta 取决于表面匹配度;asymmetry_delta 取决于你能否对职位/收购目标开展尽职调查
- 建议调整值:0.85-0.95
- 覆盖规则:如果你能通过非正式渠道确认有首选候选人且对方已将其排除,先验概率还要进一步降低
模式 5:其他队伍放弃球员
- 信号:其他队伍放弃一名球员;该球员现在可以被认领
- 解读:与交易相比,选择性较弱(放弃球员的队伍并没有因为专门向我们提出交易而获得好处),但仍存在逆向选择——他们判断该球员不值得占用一个阵容名额。被放弃球员的平均水平低于同名球员的平均水平
- 调整:base_prior 0.42(略高于交易);放弃球员一方的类型影响较小
- 建议调整值:0.92(轻微折价)
- 领域示例:二手车在经销商拍卖中被弃置、股票在强制清算中被抛售、进入求职市场的前员工
约束
-
收到的报价的基础先验概率始终低于 0.50。这是柠檬市场洞见的核心。如果你的先验概率高于 0.50,说明你要么 (a) 错误指定了行为类型(例如,极为对称的休眠型可以接近但很少超过 0.50),要么 (b) 忽略了选择压力。请仔细检查。
-
“看起来公平” = “可能有问题”。提出交易的对手方,是从所有可能的交易中挑选了这笔交易。从逆向选择的角度看,表面公平的报价是最坏情况,因为他们有许多看起来公平的选项,却选了对自己最有利的那一个。
-
不要重复计算调整。如果你已经根据已知信息调整了自己的 EV(例如,因为知道某位球员受伤而降低了对他的估值),就不要再把这条信息视为不对称信息并据此降低先验概率。不对称信息指的是对方知道而你不知道的信息。
-
将先验概率限制在 [0.10, 0.70] 范围内。超出此范围的先验概率几乎总是规格错误。0.05 的先验概率意味着几乎可以确定这是一笔掠夺性报价,即使是专家也很少如此。0.75 的先验概率则意味着我们应该接受每一笔报价,这与选择论相矛盾。
-
行为类型的信号来自行为,而不是自我描述。声称自己是“休闲玩家”的对手方,如果已经提出过 40 次弃用球员申请并赢得 3 次竞价战,那就不是休眠型。应根据观察到的行为判断类型。
-
必须综合多个信号来判断恐慌抛售。“他们看起来很沮丧”不足以提高先验概率。至少需要以下信号中的两项:近期遭遇重大连败、消息语气方面的证据、明显的情绪化交易(对近期表现火热的球员出价过高)、公开抱怨联盟。
-
重复博弈中的声誉会影响先验概率。如果你与这个对手方合作过 5 次以上,且对方从未发送过负 EV 报价,则与行为类型无关的基础先验概率会上调约 0.05。如果对方以前发送过掠夺性报价,则基础先验概率下调约 0.05。应跟踪每位对手方的历史记录。
-
覆盖提示必须具体且可执行。“做更多研究”不是提示。“如果球队的终结者本周被撤下这一角色,请用 asymmetry=85 重新运行”才是可执行的提示。
-
建议的调整方式是乘法,而非加法。下游使用方会应用
adjusted_EV = own_EV x recommended_adjustment。不要输出加法式折扣——当 own_EV 接近零或为负数时,这会导致问题。 -
此技能生成的是先验概率,而不是结论。下游决策逻辑(接受/还价/拒绝)应由使用方技能(例如
mlb-trade-analyzer或 M&A 决策 Agent)处理。此技能只输出先验概率和折扣系数。
快速参考
按报价类型划分的基础先验:
| 报价类型 | 基础先验 | 原因 |
|---|---|---|
trade | 0.40 | 主动选择;对方提出了报价 |
waiver_claim_dropped_by_other | 0.42 | 对方放弃了它;其选择性弱于有针对性的交易 |
free_agent_pickup_available | 0.48 | 选择性较弱;可能只是疏忽而无人认领 |
counter_offer | 0.38 | 选择性更强——对方拒绝了首个报价,并拟定了这份报价 |
generic | 0.40 | 上下文未知时的默认值 |
类型调整:
| 类型 | 变化值 | 解释 |
|---|---|---|
expert | -0.08 | 选择性最强;对方从众多报价中选中了它 |
active | -0.05 | 提出报价前进行过分析 |
frustrated | 0.0(标记) | 情况复杂:恐慌抛售(+)与布局(-);需要子信号 |
dormant | +0.08 | 对方可能未经分析就点击了 |
unknown | 0.0 | 中性 |
对称性调整(基于 offer_symmetry_score):
| 分数 | 变化值 |
|---|---|
| 85-100 | +0.10 |
| 70-85 | +0.05 至 +0.07 |
| 30-70 | 0.0 |
| < 30 | 0.0(并标记为“好得令人难以置信”) |
不对称性调整(基于 proposer_info_asymmetry):
| 分数 | 变化值 |
|---|---|
| 0-30 | 0.0 |
| 30-60 | -0.03 至 -0.05 |
| 60-80 | -0.10 至 -0.15 |
| 80-100 | -0.15 至 -0.20 |
先验到调整值的映射:
prior_ev_probability | recommended_adjustment | 解释 |
|---|---|---|
| >= 0.50 | 1.00 | 不折价;对收到的报价而言并不常见 |
| 0.45 | 0.95 | 轻度折价 |
| 0.40 | 0.90 | 标准折价 |
| 0.35 | 0.85 | 中度折价 |
| 0.30 | 0.80 | 大幅折价——强烈的逆向选择 |
| <= 0.25 | 0.75 | 怀疑存在掠夺性行为——默认拒绝 |
输出约定:
prior_ev_probability: float in [0.10, 0.70]
recommended_adjustment: float in [0.75, 1.00]
bayesian_rationale: string (2-4 sentences)
override_hints: string[] (2-5 conditional statements)
关键资源:
- resources/template.md:先验调整决策树、示例(休眠型、专家型、受挫型)、输出约定模板
- resources/methodology.md:Akerlof 柠檬市场推导、贝叶斯更新数学、为什么“看起来公平”意味着“很可能有问题”、跨领域示例(金融、劳动力)
- resources/evaluators/rubric_adverse_selection_prior.json:10 项质量标准
所需输入:
offer_type(枚举:trade | waiver_claim_dropped_by_other | free_agent_pickup_available | counter_offer | generic)proposer_archetype(枚举:active | dormant | frustrated | expert | unknown)offer_symmetry_score(整数,0-100)proposer_info_asymmetry(整数,0-100)
生成的输出:
prior_ev_probability(浮点数,0-1,收到的报价基线 < 0.5)recommended_adjustment(浮点数,乘数因子)bayesian_rationale(字符串)override_hints(字符串数组)