纳西姆·塔勒布 Agent 教程:黑天鹅、尾部风险、反脆弱与凸性投资分析 难度:入门 纳西姆·塔勒布(Nassim Taleb)是《黑天鹅》《反脆弱》的作者,也是著名的风险哲学家。在本 AI 对冲基金项目中, 把塔勒布的核心思想——反脆弱、尾部风险、凸性、否定法(Via Negativa)、利益绑定(Skin in the Game)——翻译成可执行的量化评分流程。它不追求「预测涨跌」,而是审计一家公司或仓位在混乱、冲击、低波动假象下是否脆弱,以及是否存在「损失有限、收益开放」的不对称结构。读完本篇,你将理解这位「风险审计官」如何在多智能体会议中发出与众不同的信号。
难度:入门
纳西姆·塔勒布(Nassim Taleb)是《黑天鹅》《反脆弱》的作者,也是著名的风险哲学家。在本 AI 对冲基金项目中,nassim_taleb_agent 把塔勒布的核心思想——反脆弱、尾部风险、凸性、否定法(Via Negativa)、利益绑定(Skin in the Game)——翻译成可执行的量化评分流程。它不追求「预测涨跌」,而是审计一家公司或仓位在混乱、冲击、低波动假象下是否脆弱,以及是否存在「损失有限、收益开放」的不对称结构。读完本篇,你将理解这位「风险审计官」如何在多智能体会议中发出与众不同的信号。
nassim_taleb_agent 从拉取数据到写回 analyst_signals 的完整执行链路analyze_tail_risk、analyze_antifragility 等)的评分阈值与源码要点塔勒布的世界观可以概括为:我们生活在肥尾分布的世界里,正态假设会害人;要避开脆弱,拥抱反脆弱;用否定法剔除坏结构,比积极挑选好结构更重要。
在本 Agent 的人设中,关注点包括:
| 维度 | 塔勒布式解读 | 代码中的对应函数 |
|---|---|---|
| 尾部风险 | 收益分布是否肥尾、偏斜、回撤是否可控 | analyze_tail_risk(满分 8) |
| 反脆弱性 | 低杠杆、高现金、稳定利润率、持续 FCF | analyze_antifragility(满分 10) |
| 凸性 | R&D 期权价值、涨跌不对称、现金期权 | analyze_convexity(满分 10) |
| 脆弱性(否定法) | 高杠杆、低利息覆盖率、盈利波动 | analyze_fragility(满分 8) |
| 利益绑定 | 内部人净买入 vs 卖出 | analyze_skin_in_game(满分 4) |
| 波动率体制 | 低波动=火鸡问题;适度高波动=机会 | analyze_volatility_regime(满分 6) |
| 黑天鹅哨兵 | 负面新闻 + 成交量异常 | analyze_black_swan_sentinel(满分 4) |
与巴菲特「买好公司」不同,塔勒布更像风险审计员:先问「崩了会怎样」,再问「混乱中能否受益」。与 Druckenmiller 的动量追逐也形成对照——塔勒布对「长期低波动后的突变」高度警惕。
整个流程由 nassim_taleb_agent(state, agent_id) 驱动,对每个 ticker 循环执行:
第一步:拉数(数据获取)
get_prices:近一年日线,用于尾部风险、凸性、波动率体制分析get_financial_metrics:TTM 财务指标,limit=10search_line_items:FCF、净收入、债务、现金、R&D、资本支出等get_insider_trades:近一年内部人交易get_company_news:近 100 条新闻,limit=100get_market_cap:市值,用于现金占比、FCF 收益率计算第二步:七个子分析并行评分
每个子函数返回 {"score": int, "max_score": int, "details": str},然后直接相加(非加权):
total_score = ( tail_risk_analysis["score"] # max 8 + antifragility_analysis["score"] # max 10 + convexity_analysis["score"] # max 10 + fragility_analysis["score"] # max 8 + skin_in_game_analysis["score"] # max 4 + volatility_regime_analysis["score"] # max 6 + black_swan_analysis["score"] # max 4 ) # max_possible_score = 50
第三步:信号映射(规则在 LLM 层)
与 Lynch/Fisher 不同,塔勒布 Agent 不在 Python 层硬编码 bullish/bearish 阈值,而是把 total_score 和各子分析 details 打包成 facts 字典,交给 LLM 按塔勒布 checklist 决策:
第四步:LLM 生成
generate_taleb_output 调用 call_llm,使用 NassimTalebSignal Pydantic 模型约束输出 signal、confidence(0-100)、reasoning(≤150 字符)。置信度刻度:90-100% 为真正反脆弱,10-29% 为明显脆弱或危险波动体制。
第五步:写回状态
HumanMessage(content=json.dumps(taleb_analysis), name=agent_id)state["data"]["analyst_signals"][agent_id]show_reasoning=True,调用 show_agent_reasoning 展示推理analyze_tail_risk(满分 8)returns = prices_df["close"].pct_change().dropna() # 超额峰度 kurtosis if kurt > 5: score += 2 # 极肥尾 elif kurt > 2: score += 1 # 中等肥尾 # 偏度 skew if skew > 0.5: score += 2 # 正偏,利于多头凸性 elif skew > -0.5: score += 1 # 尾比率 = 95th 正收益 / |5th 负收益| if tail_ratio > 1.2: score += 2 elif tail_ratio > 0.8: score += 1 # 最大回撤 if max_dd > -0.15: score += 2 # 回撤 < 15% elif max_dd > -0.30: score += 1
analyze_antifragility(满分 10)analyze_convexity(满分 10)analyze_fragility(满分 8,高分=不脆弱)analyze_skin_in_game(满分 4)net = shares_bought - shares_sold if net > 0: buy_sell_ratio = net / max(shares_sold, 1) if buy_sell_ratio > 2.0: score = 4 elif buy_sell_ratio > 0.5: score = 3
analyze_volatility_regime(满分 6)塔勒布核心洞见——火鸡问题:
vol_regime = current_vol / avg_vol # 21日滚动年化波动 / 63日均值 if vol_regime < 0.7: # 危险低波动,不加分,标注 "turkey problem" elif 0.9 < vol_regime <= 1.3: score += 3 # 正常 elif 1.3 < vol_regime <= 2.0: score += 4 # 反脆弱者的机会
analyze_black_swan_sentinel(满分 4)if neg_ratio > 0.7 and volume_spike > 2.0: score = 0 # 黑天鹅预警 elif neg_ratio < 0.3 and volume_spike < 1.5: score = 3 # 正常 # 逆向加分:负面新闻高但成交量未恐慌 if neg_ratio > 0.4 and volume_spike < 1.5: score += 1
black_swan_sentinel 和 volatility_regimenassim_taleb_agent 是本系统中独特的风险哲学分析师:它不替你做盈利预测,而是用 50 分制的七维评分框架,把反脆弱、凸性、否定法、利益绑定等量化为可审计的数字与文字证据,再交由 LLM 以塔勒布口吻输出最终信号。记住三个关键词:避开脆弱、拥抱凸性、警惕低波动假象。当其他分析师一致看多时,塔勒布的 bearish 信号往往是最值得重视的不同意见。
下一篇请阅读同目录下的《Peter Lynch Agent 教程:GARP 成长投资与十倍股筛选》。