PanWatch 看多看空辩论 + 风控审查:多 Agent 架构如何降低 AI 幻觉风险
【免费下载链接】PanWatchPanWatch — AI stock monitoring for A-shares, HK & US markets, powered by TradingAgents. Portfolio insights, real-time alerts & automated reports.|盯盘侠:覆盖 A股/港股/美股的 AI 盯盘、持仓分析、实时提醒与自动报告。项目地址: https://gitcode.com/GitHub_Trending/pa/PanWatch
PanWatch 是一款覆盖 A 股/港股/美股的 AI 盯盘工具,其深度分析能力基于 TradingAgents 多 Agent 架构:由 4 位分析师独立出具报告,再经过看多看空辩论与激进/中立/保守风控审查,最终由 PM 输出决策书。本文拆解这套 9-Agent 链路如何通过交叉质证、人工复核兜底和决策回测,系统性降低 AI 幻觉风险。
为什么单模型"一问一答"容易幻觉
用单个大模型直接问"该不该买入某只股票",常见的失败模式有三类:
- 单一视角偏见:模型倾向于顺着问题方向给结论,缺少对立观点的挑战;
- 无法解析的自信输出:正文写"卖出",结构化标签却返回"HOLD",二者互相矛盾;
- 无事后校验:结论发出后没有机制验证它是否真的"命中"。
PanWatch 的做法不是把模型换得更聪明,而是用流程结构约束模型——让多个 Agent 扮演互相制衡的角色,并在关键环节加入安全兜底。
9-Agent 决策流水线:从分析师到决策书
整个流程在 observability.py 中被映射为 10 个可视化阶段,前端的进度条可以实时看到当前走到了哪一步:
| 阶段 | 角色 | 作用 |
|---|---|---|
| 1. 数据采集 | Orchestrator | 并发拉取行情、K线、新闻、基本面 4 类数据 |
| 2. 四位分析师 | 技术/情绪/新闻/基本面 | 各自独立出具报告,互不参考 |
| 3. 看多看空辩论 | Bull vs Bear 研究员 | 正反方基于同一份数据对辩 |
| 4. 研究主管裁决 | Research Manager | 对辩论结果给出裁定 |
| 5. 交易员 | Trader | 把研究结论翻译成执行计划 |
| 6. 风控辩论 | 激进/中立/保守三方 | 审查仓位、止损与风险敞口 |
| 7. PM 最终决策 | Portfolio Manager | 整合全部输入,输出评级决策书 |
这种"分工 → 对抗 → 裁决"的拓扑是降低幻觉的第一道防线:任何一方的错误结论都会被下游角色看到并挑战,而不是直接成为最终答案。
看多看空辩论:让结论经过"交叉质证"
辩论环节由上游框架的 Bull/Bear 两个研究员节点驱动,辩论文本、当前回应和裁判结论完整保存在investment_debate_state中,并在 decision.py 里被提取为debate_history、judge_decision等字段落库。
两个细节体现了工程上的克制:
- 辩论轮数可配置:runtime_support.py 中
max_debate_rounds至少为 1 轮,你可以在 Agents 设置页调节轮数——轮数越多结论越稳健,但耗时和成本也越高(单次分析约 3-5 分钟); - 裁判只看正文标签:评级解析优先读取 PM 决策书中的显式评级标签(如"最终交易决策:买入"),而不是扫描正文里的模糊关键词。这专门防住了一类隐蔽幻觉——正文里"否决了之前的买入建议"这种干扰词被误判成卖出信号。
风控审查:激进、中立、保守三方过招
拿到交易员计划后,进入风控辩论:激进派主张进攻、保守派主张防守、中立派居中,最后由风控裁判给出裁决(risk_debate_state.judge_decision)。
风控层是第二道防线——即使研究员和交易员都被乐观叙事带偏,风控裁判仍会基于仓位、止损位和风险敞口提出反对意见。整份风控辩论记录同样完整落库,前端详情页以独立板块呈现,用户可以逐条核对。
三层安全网:REVIEW 兜底、评级映射、决策回测
辩论与风控解决的是"过程对抗",PanWatch 还在结果侧加了三道保险:
1. 不可解析即"待人工复核"
当上游无法解析 PM 评级时,返回 REVIEW 状态。decision.py 将其映射为"待人工复核"标签,并以hold语义阻止任何自动交易,同时保留原始状态供展示。模型不确定时宁可"不行动",而不是猜一个答案。
2. 五档评级到三档动作的保守映射
上游的买入/增持/持有/减持/卖出五档评级,映射为前端买入/持有/卖出三档动作,且 REVIEW 不可被正文评级词覆盖,rating_raw原始档位全程可追溯。
3. 决策日志 + 命中率回测
每次分析结束后,决策日志单独保存;持有期结束且行情可用后,operations.py 会计算 1/5/20 日相对收益并判定"命中",统计出买入/卖出/持有的命中率,再把这些反思带入后续同标的分析。这意味着幻觉产生的错误结论最终会暴露在回测数据里,而不是悄悄消失。
预算与联动:把深度分析用在刀刃上
多 Agent 意味着更高的 token 成本,PanWatch 通过 agent.py 内置了月度预算(默认 $10/月)、超预算拒跑和同日缓存;盘中异动联动(涨跌幅超 5% 自动触发)默认关闭,并带 24 小时冷却期,防止重复分析烧预算。
开启模拟盘联动后,只有"买入/增持"类决策且通过上述全部校验的信号,才会写入模拟盘信号池(卖出建议不开新仓),同标的同日自动去重。
快速上手:配置辩论轮数与预算
- 在Agents页面找到「TradingAgents 深度分析」,进入深度配置;
- 设置
debate_rounds(辩论轮数)与monthly_budget_usd(月度预算); - 可选:为辩论/PM 指定强模型(deep_model),为分析师工具调用指定快模型(quick_model),控制成本;
- 从持仓页或定时任务对单只标的触发分析,3-5 分钟后在详情页查看完整辩论与风控记录。
相关资料
- 完整流程图解:docs/tradingagents-flow.md
- 数据上下文与持仓转换:data_context.py
- 决策映射与模拟盘桥接:decision.py
- 盘中异动自动触发与历史回测:operations.py
- 进度阶段与预算检查:observability.py
PanWatch 的分析结果仅供学习研究参考,不构成投资建议。
【免费下载链接】PanWatchPanWatch — AI stock monitoring for A-shares, HK & US markets, powered by TradingAgents. Portfolio insights, real-time alerts & automated reports.|盯盘侠:覆盖 A股/港股/美股的 AI 盯盘、持仓分析、实时提醒与自动报告。项目地址: https://gitcode.com/GitHub_Trending/pa/PanWatch
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考