mcpField
S
stock-cross-verify

stock-cross-verify

github.com/kirkluokun其他6645 次安装32 周前更新
代码仓库

关于 stock-cross-verify

股票信息多源交叉验证是一项面向股票、行业和宏观问题的投研技能,供需要核实市场信息的分析者使用。它汇集多个信息源,并通过 Gemini 梳理及 War Room 多智能体辩论,形成共识、分歧和待验证事项报告。

主要功能

  1. 01按问题维度选择信息源
  2. 02并行采集投研、舆情与新闻
  3. 03使用 Gemini 整理信息
  4. 04通过 War Room 多智能体辩论核验
  5. 05输出共识、分歧与待验证报告

适用场景

  1. 01核实上市公司公告与新闻
  2. 02评估股票基本面和市场情绪
  3. 03交叉验证行业趋势与事件信息
  4. 04快速获取单一来源视角

MCP 相关

技能可直接调用 Tushare MCP 的公告和新闻工具,作为具体公司事实的核查依据。它还使用 Gemini MCP 进行信息整理。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/kirkluokun/awesome-a-stock-openclawskills --skill stock-cross-verify

安装后在 Claude Code 中输入/stock-cross-verify确认已加载。

详细介绍

来自项目 README

股票信息多源交叉验证

针对股票/行业/宏观问题,自动调度 11 个信息源并行采集,用 Gemini 梳理,用 War Room 辩论验证,输出共识 / 分歧 / 待验证三区报告。


信息源路由表

第零层:一手数据核查(Tushare MCP,主 Agent 直接调用)

无需脚本,通过 MCP tool 直接调用,用于获取上市公司一手公告和新闻快讯作为事实基准。

信息源擅长领域MCP Tool关键参数
公司公告财报、重大事项、增减持、股权变动等一手公告原文tushare_annsts_code={TICKER}, start_date, end_date
新闻快讯多源新闻(新浪/华尔街见闻/同花顺/东财/云财经)tushare_newsstart_date, end_date, src(可选来源过滤)

使用时机:不需要每次都调用。当验证问题涉及具体公司事实(财报数据、重大事项、管理层变动)或需要核查某条新闻是否属实时,优先从公告原文和新闻快讯中取证。

第一层:核心投研(主 Agent 执行 capture)
信息源擅长领域技能典型命令
岗底斯快速全面获取市场边际信息(研报/公告/纪要/指标)capture-gangtisepython3 {gangtise}/scripts/query_kb.py "{query}"
AlphaPAIA股全面信息(机构热议/路演纪要/点评/AI问答)capture-alphapaipython3 {alphapai}/scripts/alphapai_api.py search "{query}" --save
AceCamp市场核心专家纪要内容capture-acecamppython3 {acecamp}/scripts/acecamp_fetch.py fetch "{query}" --limit 5
AlphaEngine外资行报告(大摩/高盛/瑞银等)capture-alphaenginepython3 {alphaengine}/scripts/alphaengine_api.py search "{query}" --save
第二层:舆情(Gemini CLI 可执行)
信息源擅长领域技能典型命令
Reddit海外投资者讨论、科技政治舆情capture-reddit-search{reddit}/scripts/reddit-search search "{query}" 10
X/Twitter实时舆论、KOL观点capture-search-xnode {searchx}/scripts/search.js --days 7 "{query}"
第三层:新闻(Gemini CLI 可执行)
信息源擅长领域技能典型命令
NewsAPI全球5000+新闻源搜索news-newsapi-searchnode {newsapi}/scripts/search.js "{query}" --days 7
新闻聚合HN/36Kr/华尔街见闻/微博等8源news-aggregator-skillpython3 {aggregator}/scripts/fetch_news.py --source all --limit 10 --keyword "{query}" --deep

路径说明:{gangtise} 等为各技能的 {skillDir} 路径,实际执行时替换为技能安装的绝对路径。


Phase 1:意图解析

在做任何事之前,先解析用户问题:

输入:"贵州茅台最近怎么了"
拆解:
  SUBJECT = "贵州茅台"
  TICKER = "600519.SH"(如能识别)
  DIMENSIONS = [基本面, 市场情绪, 行业动态]
  QUERY_KEYWORDS = ["贵州茅台", "茅台", "白酒行业"]
  ENGLISH_KEYWORDS = ["Kweichow Moutai", "baijiu"](用于海外源)
  URGENCY = normal | urgent(影响信息源选取数量)

维度映射规则:

问题类型核心维度优先信息源
个股基本面财报、估值、业务tushare公告 + gangtise + alphapai + acecamp
行业趋势行业格局、政策gangtise + aggregator + newsapi
事件驱动并购、政策、危机tushare公告+新闻 + newsapi + X + alphapai
海外视角外资观点、全球配置alphaengine + reddit + X
舆情评估市场情绪、散户/机构分歧X + reddit + alphapai(hot-stock)
公告/新闻核实某条消息是否属实tushare公告+新闻(一手源优先)+ gangtise

Phase 2:并行信息采集

分工原则
  • 主 Agent(Claude)执行:需要认证 token 的 capture 任务(gangtise / alphapai / acecamp / alphaengine)
  • Gemini CLI 执行:无认证要求的简单搜索(reddit / X / newsapi / news-aggregator)
Wave A:核心投研(Claude 执行)

按维度选择性执行,不需要每次全部调用:

# 0. Tushare MCP——一手数据核查(按需,涉及具体公司事实时优先调用)
#    直接通过 MCP tool 调用,无需脚本
#    公司公告:tushare_anns(ts_code="{TICKER}", start_date="YYYYMMDD", end_date="YYYYMMDD")
#    新闻快讯:tushare_news(start_date="YYYYMMDD", end_date="YYYYMMDD")
#    ↑ 作为事实基准,后续 capture 结果与公告/新闻原文对比验证

# 1. 岗底斯——快速获取边际信息
python3 {gangtise}/scripts/query_kb.py "{QUERY_KEYWORDS[0]}" --top 10
# 如有 ticker,补充盈利预测
python3 {gangtise}/scripts/forecast.py {TICKER}

# 2. AlphaPAI——机构视角
python3 {alphapai}/scripts/alphapai_api.py search "{QUERY_KEYWORDS[0]}" --save
python3 {alphapai}/scripts/alphapai_api.py roadshow-search "{QUERY_KEYWORDS[0]}" --save --limit 5

# 3. AceCamp——专家纪要
python3 {acecamp}/scripts/acecamp_fetch.py fetch "{QUERY_KEYWORDS[0]}" --limit 3

# 4. AlphaEngine——外资行(仅海外视角维度时)
python3 {alphaengine}/scripts/alphaengine_api.py search "{ENGLISH_KEYWORDS[0]}" --save

每个 capture 命令执行后,将返回的内容保存到工作目录:

output/sources/
├── tushare_anns.md         # 公司公告原文(按需,作为事实基准)
├── tushare_news.md         # 新闻快讯(按需,用于舆情核查)
├── gangtise_kb.md          # 岗底斯知识库搜索结果
├── gangtise_forecast.md    # 盈利预测(如有)
├── alphapai_search.md      # AlphaPAI 综合搜索
├── alphapai_roadshow.md    # 路演纪要
├── acecamp_articles/       # AceCamp 纪要全文
│   ├── 001_标题.md
│   └── 002_标题.md
└── alphaengine_reports.md  # 外资行报告摘要
Wave B:舆情+新闻(Gemini CLI 执行)

通过 Gemini CLI 或 mcp__gemini__gemini-query 驱动执行,适合简单任务:

# 方式一:直接用 gemini CLI
gemini -m gemini-2.5-flash "
请帮我执行以下搜索命令,并将结果整理为 markdown:

1. Reddit 搜索:
   运行 {reddit}/scripts/reddit-search search '{ENGLISH_KEYWORDS[0]}' 10
   
2. X/Twitter 搜索:
   运行 node {searchx}/scripts/search.js --days 7 '{ENGLISH_KEYWORDS[0]}'

3. 新闻搜索:
   运行 node {newsapi}/scripts/search.js '{QUERY_KEYWORDS[0]}' --days 7

将每个来源的结果整理成以下格式保存到 output/sources/sentiment.md:
## [来源名]
- 主要观点 1(附来源链接)
- 主要观点 2
...
"

# 方式二:通过 Gemini MCP(更可控)
# 用 mcp__gemini__gemini-query,model=flash,thinkingLevel=low

Gemini 无法执行 capture 时的降级方案:由主 Agent 串行执行 Wave B 的命令。


Phase 3:信息梳理(Gemini 执行)

所有采集完成后,通过 Gemini 对 output/sources/ 下的全部文件进行阅读和结构化整理:

通过 Gemini MCP(mcp__gemini__gemini-query,model=pro,thinkingLevel=high):

prompt: |
  你是一名资深卖方分析师助理。请阅读以下多个信息源的原始内容,
  按以下维度整理成结构化摘要。

  信息源文件:
  [将 output/sources/ 下所有文件内容粘贴]

  请按以下结构输出:

  ## 一、事实层(各源的客观数据)
  | 数据点 | tushare公告 | gangtise | alphapai | acecamp | alphaengine | 新闻 | 舆情 |
  |--------|-----------|---------|---------|---------|------------|------|------|
  | 最新营收 | ✅(一手) | ... | ... | - | ... | - | - |
  | 估值水平 | - | ... | ... | - | ... | - | - |
  | ... | | | | | | | |

  ## 二、观点层(各源的判断和推理)
  | 议题 | 看多观点(来源) | 看空观点(来源) | 中性/不确定(来源) |
  |------|--------------|--------------|----------------|
  | ... | | | |

  ## 三、信号层(异常/分歧/矛盾)
  - 数据矛盾:...
  - 逻辑分歧:...
  - 信息缺口:...

  ## 四、信息源可信度权重
  | 来源 | 类型 | 时效性 | 独立性 | 建议权重 |
  |------|------|--------|--------|---------|
  | gangtise | 券商研报 | 高 | 中 | 0.25 |
  | ... | | | | |

梳理结果保存到 output/organized/structured_summary.md。


Phase 4:War Room 交叉验证

核心环节。调用 swarm-war-room 进行多智能体辩论,对比孰真孰假。

初始化 War Room
bash {warroom}/scripts/init_war_room.sh cross-verify-{SUBJECT}
BRIEF.md 填写
# 交叉验证任务

## 标的:{SUBJECT}({TICKER})
## 核心问题:{用户原始问题}
## 信息源摘要:见 output/organized/structured_summary.md
## 验证目标:
1. 各信息源的事实是否一致?数据冲突如何解释?
2. 各方的推理逻辑是否自洽?有无逻辑谬误?
3. 看多/看空的结论分歧根源是什么?
4. 哪些信息可以交叉确认为高可信度?哪些存疑?
角色配置
角色职责重点维度
BULL(多方立论者)从信息中提取所有支持看多的证据链增长逻辑、催化剂、低估证据
BEAR(空方立论者)从信息中提取所有支持看空的证据链风险因素、高估证据、逻辑缺陷
FACT-CHECKER(事实核查员)逐条核对各源数据是否吻合,标注矛盾数据一致性、时间戳、来源可靠性
CHAOS(魔鬼代言人)攻击所有角色的论点,找致命盲点反共识思维、黑天鹅、信息操纵可能
执行 Wave 协议
Wave 1:BULL + BEAR 并行——各自从 structured_summary.md 提取己方证据链
       → CHAOS 影子审查(攻击双方逻辑薄弱环节)

Wave 2:FACT-CHECKER 逐条核对 Wave 1 中 BULL 和 BEAR 引用的数据点
       → CHAOS 影子审查(质疑核查标准是否足够严格)

Consolidation:合并四方输出,生成交叉验证报告
对比维度(FACT-CHECKER 逐项检查)
┌─ 信息异同 ────────────────────────────┐
│ 哪些事实各源都报道了(高可信度)?        │
│ 哪些事实仅单一源提及(需二次验证)?      │
│ 哪些重要信息某些源有意/无意遗漏?         │
└─────────────────────────────────────┘

┌─ 数据异同 ────────────────────────────┐
│ 同一数据点各源报告值是否一致?            │
│ 不一致时,偏差来源是什么(口径/时间/计算)?│
│ 哪些数字可交叉确认?                     │
└─────────────────────────────────────┘

┌─ 逻辑异同 ────────────────────────────┐
│ 各源的推理链条是否自洽?                  │
│ 是否存在"用结论推数据"的循环论证?        │
│ 各方假设的前提条件是否明确?              │
└─────────────────────────────────────┘

┌─ 结论异同 ────────────────────────────┐
│ 看多/看空/中性各有几个源支持?            │
│ 分歧的根源是事实分歧还是框架分歧?        │
│ 是否存在信息不对称导致的结论差异?         │
└─────────────────────────────────────┘

Phase 5:输出交叉验证报告

最终报告模板:

# {SUBJECT} 交叉验证报告

**验证时间**:{datetime}
**核心问题**:{用户原始问题}
**信息源数量**:{N} 个({列出实际使用的源})

---

## 🟢 共识区(高可信度)

各信息源交叉确认的事实和结论:
1. [事实/结论](来源:gangtise + alphapai + acecamp,3源确认)
2. ...

## 🟡 分歧区(需判断)

各信息源存在不同观点或数据的领域:

### 分歧 1:[议题]
| 立场 | 核心论据 | 来源 | CHAOS 评估 |
|------|---------|------|-----------|
| 多方 | ... | ... | SURVIVE / WOUNDED / KILLED |
| 空方 | ... | ... | SURVIVE / WOUNDED / KILLED |

**FACT-CHECKER 判定**:数据[一致/有X%偏差],逻辑[自洽/存在Y缺陷]

### 分歧 2:...

## 🔴 待验证区(信息不足)

单一来源提及、尚无法交叉确认的信息:
1. [信息](仅来源:X)——建议验证方式:...
2. ...

## 📊 信息源可信度矩阵

| 来源 | 本次覆盖 | 时效性 | 独立性 | 与其他源一致率 | 综合权重 |
|------|---------|--------|--------|-------------|---------|
| ... | ✅/❌ | 高/中/低 | 高/中/低 | X% | 0.XX |

## 💡 结论与建议

[基于共识区和分歧区的综合研判,以及后续应关注的催化剂/风险点]

报告保存至 output/report_{SUBJECT}_{date}.md。


快速模式 vs 深度模式

模式跳过耗时适用场景
快速模式(--quick)跳过 War Room,P3 梳理后直接输出初步综合3-5分钟日常快速验证
深度模式(默认)完整 P1→P510-20分钟重要投资决策
聚焦模式(--focus [源])仅用指定信息源1-3分钟快速查单一视角

快速模式下跳过 Phase 4,Phase 3 输出即为最终报告(无辩论验证)。


执行示例

用户:帮我交叉验证一下贵州茅台最近的情况

Agent:
  P1 → 解析:SUBJECT=贵州茅台, TICKER=600519.SH, DIMENSIONS=[基本面, 市场情绪]
  P2 → 并行执行:
       [Claude] tushare_anns 拉取 600519.SH 近期公告(事实基准)
       [Claude] tushare_news 拉取近 7 天新闻快讯
       [Claude] gangtise 搜索"贵州茅台" + 盈利预测
       [Claude] alphapai 搜索"贵州茅台" + 路演纪要
       [Claude] acecamp 搜索"贵州茅台"
       [Gemini] newsapi 搜索"贵州茅台"
       [Gemini] X 搜索"Kweichow Moutai"
  P3 → Gemini 读取 output/sources/ 全部文件,输出 structured_summary.md
  P4 → War Room: BULL+BEAR+FACT-CHECKER+CHAOS 辩论
  P5 → 输出交叉验证报告

注意事项

  • Token 管理:各 capture 技能的认证状态独立管理,执行前无需在本技能中处理
  • 降级策略:若某信息源 API 报错,标注为"本次未覆盖"继续执行,不中断流程
  • Gemini 调用:优先用 mcp__gemini__gemini-query(model=pro),降级用 gemini CLI
  • 信息时效:所有信息标注获取时间,超过 7 天的数据在报告中标注 ⚠️
  • 安全:本技能不存储任何凭证,所有认证由各子技能自行管理

评论

支持 Markdown