cue-industry-chain — 产业链投资研究
四阶段递进式产业链投资研究套件,覆盖从宏观赛道扫描到单个标的深度研判的完整一级市场投研流程。
Stage 1 广筛(月度) → Stage 2 精筛(每周) → Stage 3 深挖(按需) → Stage 4 研判(按需)
↓ ↓ ↓ ↓
3D 扫描全市场 → 产业链拆解+五性评估 → 多源标的扫描+评分 → 五维尽调+可行性判定
5-8 个候选方向 3-4 个高价值环节 优先级标的清单 可行/有条件可行/暂缓/不可行
Cue 后端有 300+ 专业数据工具(工商/司法/监管/财报/资金流/招投标/研报/专利),每条结论带可点击来源链接。
范围边界
仅覆盖公开数据源。非上市标的公开数据不完整是常态——标注"公开数据不足"的维度建议通过专家访谈、标的接触等方式补充。本套件不构成投资建议。
准备:API key 一次性配置
- 打开 https://cuecue.cn/api-key 创建 API key
export CUE_API_KEY=sk...或写入~/.cue/config.json
{ "api_key": "sk...", "base": "https://cuecue.cn/api" }
四阶段路由
Agent 根据用户意图自动选择阶段:
| 用户说什么 | 路由到 | Template ID |
|---|---|---|
| "最近有什么赛道值得看" / "扫描一下热门产业链" | Stage 1 广筛 | template_uh7M4C |
| "研究一下XX产业链" / "XX行业哪些环节值得投" | Stage 2 精筛 | template_aiY6uO |
| "XX环节有哪些非上市公司" / "挖一下XX赛道的标的" | Stage 3 深挖 | template_JDXEb9 |
| "分析一下XX公司" / "XX标的能不能投" / "尽调XX" | Stage 4 研判 | template_nmrMhu |
用户也可以显式指定从某个阶段开始,或要求跑完整流水线(从广筛到研判逐阶段推进)。
Stage 1:产业链广筛
输入:研究时间窗口(如近3个月),可选行业方向偏好
策略:政策强度(主信号)→ 一级融资热度(产业背书)→ 二级市场热力(辅助确认),三维扫描全市场
产出:5-8 个候选产业链方向池,每个标注三维信号得分(高/中/低)+ 一句话入选理由
频率:月度 + 重磅政策事件驱动
调用示例
import sys, uuid, json
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent / "scripts"))
from cue_api import chat_stream, CueAPIError
payload = {
"messages": [{"role": "user", "content": f"研究时间窗口: {time_window}"}],
"conversation_id": f"cue-chain-1-{uuid.uuid4().hex[:12]}",
"chat_id": uuid.uuid4().hex,
"template_id": "template_uh7M4C",
"need_analysis": False,
"need_confirm": False,
"need_underlying": False,
"need_recommend": False,
}
Stage 2:产业链精筛
输入:目标产业链名称(如先进封装、具身智能/人形机器人)
策略:产业链拆解(上中下游+价值分布+迁移趋势)→ 五性评估(壁垒性/稀缺性/卡脖子性/议价性/不可复制性)→ 券商研报估值割裂诊断 → 交叉验证 → 四维研判+一票否决
产出:各环节逐行评估表(淘汰/暂缓/通过),最终 3-4 个值得深挖的价值环节
调用示例
payload = {
"messages": [{"role": "user", "content": f"目标产业链: {industry_chain}"}],
"conversation_id": f"cue-chain-2-{uuid.uuid4().hex[:12]}",
"chat_id": uuid.uuid4().hex,
"template_id": "template_aiY6uO",
"need_analysis": False,
"need_confirm": False,
"need_underlying": False,
"need_recommend": False,
}
Stage 3:非上市标的深挖
输入:目标价值环节(如行星滚柱丝杠、混合键合设备)
策略:多路径交叉扫描(工商/融资/专利/招投标)→ 五维度标的扫描 → 可投资性硬约束检查(通过/观察/剔除三档)→ 五维评分(技术产品力/增长斜率/财务健康/估值吸引力/退出确定性,各1-5分,满分25)→ 每个标的回答"四问"
产出:优先级排序的标的清单,含评分(X/25)、退出路径、主要风险
调用示例
payload = {
"messages": [{"role": "user", "content": f"目标价值环节: {value_segment}"}],
"conversation_id": f"cue-chain-3-{uuid.uuid4().hex[:12]}",
"chat_id": uuid.uuid4().hex,
"template_id": "template_JDXEb9",
"need_analysis": False,
"need_confirm": False,
"need_underlying": False,
"need_recommend": False,
}
Stage 4:标的深度研判
输入:Stage 3 产出的高评分标的(如芯慧联新、新剑传动)
策略:五维深度尽调——团队与技术深度(专利质量/发明人背景/招聘动向)→ 产品与市场实力验证(中标记录/签约事件/框架协议与落地合同区分)→ 经营与财务数据推演(增值税倒推营收/环评规模数据/上市公司年报反向查找)→ 估值安全边际(历轮融资/二级可比对标/折价率)→ 退出路径模拟(IPO 标准逐项对标/潜在并购方识别)
产出:一级投资可行性判定(可行/有条件可行/暂缓/不可行)+ 支撑与阻碍因素对照 + 升档前置条件 + 投资方式建议
调用示例
payload = {
"messages": [{"role": "user", "content": f"目标投资标的: {target_company}"}],
"conversation_id": f"cue-chain-4-{uuid.uuid4().hex[:12]}",
"chat_id": uuid.uuid4().hex,
"template_id": "template_nmrMhu",
"need_analysis": False,
"need_confirm": False,
"need_underlying": False,
"need_recommend": False,
}
流水线模式(全流程)
用户说"帮我从零开始看一个赛道"时,按顺序推进:
- 跑 Stage 1 广筛 → 用户从候选池中选 1 个产业链
- 跑 Stage 2 精筛 → 用户从通过环节中选 1 个价值环节
- 跑 Stage 3 深挖 → 用户从标的清单中选 1-2 个标的
- 跑 Stage 4 研判 → 产出最终投资可行性结论
每阶段跑完暂停,等用户确认方向后再进入下一阶段。每阶段消耗 Cue credits,跑前显式确认。
完整 chat_stream 封装
import sys, uuid, json
from pathlib import Path
sys.path.insert(0, str(Path(__file__).resolve().parent / "scripts"))
from cue_api import chat_stream, CueAPIError
TEMPLATES = {
"broad_screen": "template_uh7M4C",
"fine_screen": "template_aiY6uO",
"target_mining": "template_JDXEb9",
"deep_judgment": "template_nmrMhu",
}
def run_stage(stage: str, user_query: str):
"""Run one stage of the industry chain research pipeline."""
template_id = TEMPLATES[stage]
report_pieces = []
payload = {
"messages": [{"role": "user", "content": user_query}],
"conversation_id": f"cue-chain-{uuid.uuid4().hex[:12]}",
"chat_id": uuid.uuid4().hex,
"template_id": template_id,
"need_analysis": False,
"need_confirm": False,
"need_underlying": False,
"need_recommend": False,
}
try:
for event, data in chat_stream(payload, max_seconds=900):
if event == "message":
try:
d = json.loads(data)
delta = d.get("data", {}).get("delta", {})
content = delta.get("content", "")
if content:
report_pieces.append(content)
print(content, end="", flush=True)
except json.JSONDecodeError:
pass
except CueAPIError as e:
print(f"\nError: {e.user_hint()}")
return "".join(report_pieces)
安全规则
- API key 绝不出现在输出/日志中
- 用户不慎粘贴 key → 提醒去 cuecue.cn/api-key 立即轮换
- 本套件不构成投资建议;Stage 4 的可行性判定是基于公开数据的推演,最终投资决策需结合线下尽调
微信扫一扫