---
name: a-stock-analysis
description: |
  A股个股深度分析Skill v4.0。
  适用于个股深度研究、10环节SOP分析、投资决策支持。
  
  触发条件：用户要求分析个股、深度研究、10环节分析
---

# ⚠️ 前置检查（强制）

执行本Skill前，必须先：

## 硬性规定（绝对优先执行）

### 第一步：多源新闻搜索（必须首先执行！）

**必须**在开始任何数据获取前，先执行 `multi_source_news_v2.py` 的6类关键词搜索：

```python
from multi_source_news_v2 import search_stock_comprehensive

# 必须首先执行！
results = search_stock_comprehensive(
    stock_code="688372.SH",
    stock_name="伟测科技", 
    industry="半导体测试"
)
```

**6类关键词必须全部搜索**：
1. **基础业务** - 行业关键词
2. **资本运作** - 并购/收购/定增/重组/借壳
3. **风险警示** - 减持/增持/违规/处罚/监管/问询函/关注函/警示函
4. **业务驱动** - 订单/合同/中标/产能扩张/技术突破/专利/产品认证
5. **业绩相关** - 业绩预增/业绩快报/业绩下修/业绩变脸/扭亏/亏损
6. **资本市场** - 研报/评级/目标价/机构调研/龙虎榜/大宗交易/北向资金

**搜索数据源**（优先级）：
- P1: Exa全网语义搜索（mcporter）
- P2: 知识星球调研纪要
- P3: 新浪财经
- P4: 东方财富
- P5: 腾讯财经
- P6: 华尔街见闻

**禁止行为**：
- ❌ 跳过6类关键词搜索直接获取股价数据
- ❌ 只搜索1-2类关键词
- ❌ 忽略知识星球/Exa等关键数据源

### 第二步：其他前置检查

1. **读取AGENTS.md** — 执行其中的方法论和原则
2. **概念分类判断** — 区分个股分析 vs 概念分析 vs 产业链分析
3. **完成自查清单** — AGENTS.md中的7项检查

---

# A股个股深度分析 Skill v4.0 - 完整SOP

---

# ⚠️ 运行环境要求

## 使用venv虚拟环境运行

本Skill建议在venv中运行：

```bash
# 1. 激活虚拟环境
source /root/.openclaw/workspace/venv_activate.sh

# 2. 运行Python脚本
python3 your_script.py
```

## 在Python代码中指定解释器

```python
#!/root/.openclaw/workspace/venv/bin/python3
import sys
sys.path.insert(0, '/root/.openclaw/workspace/skills/a-stock-analysis/scripts')

# 你的代码...
```

## 检查Python版本

```bash
# 确保使用venv中的Python
which python3
# 应该输出: /root/.openclaw/workspace/venv/bin/python3
```

---

# ⚠️ 前置检查清单（必须执行！）

## 硬性要求：自查无误后才发送报告

**绝对禁止**：发现数据问题/搜索不完整时直接发送报告。

**必须执行以下自查流程**：

### 自查Step 1: 新闻搜索完整性检查
```python
# 必须完成的检查项
checklist = {
    "Exa搜索": False,      # mcporter call exa.web_search_exa
    "知识星球搜索": False,  # 本地缓存+API
    "新浪财经": False,     # 公司公告/板块新闻
    "东方财富": False,     # 个股新闻
    "6类关键词": False,    # 基础/资本运作/风险/业务/业绩/资本市场
}

# 每项搜索必须有结果或明确标注"无相关新闻"
# 不允许跳过任何一项！
```

### 自查Step 2: 数据源真实性检查
```python
# 必须验证的数据项
data_verification = {
    "股价": "API获取 + 标注来源",
    "总股本": "API获取 + 反向验证市值",
    "EPS_TTM": "API获取 + 计算PE",
    "市值": "计算值 + 反向验证股价",
    "业绩数据": "财报来源 + 时效性标注",
    "新闻数据": "Exa/知识星球等来源标注",
}
```

### 自查Step 3: 发送前最终确认
```markdown
## 发送前自检清单（必须勾选）

- [ ] **新闻搜索**: Exa/知识星球/新浪/东财全部执行
- [ ] **6类关键词**: 基础/资本运作/风险/业务/业绩/资本市场
- [ ] **新关键词**: 自愿性披露/最新消息/机构调研等
- [ ] **数据验证**: 股价/股本/市值/EPS全部验证通过
- [ ] **计算验证**: 目标价×股本=市值，反向验证无误
- [ ] **来源标注**: 每则新闻/数据都有明确来源
- [ ] **时效性**: 财报/新闻数据标注时间
- [ ] **风险提示**: 分级风险已完整列出

**发现任何问题，立即停止发送，修复后再提交！**
```

### 常见错误（必须避免）
| 错误 | 后果 | 正确做法 |
|------|------|----------|
| 未搜索Exa直接发报告 | 遗漏全网关键新闻 | 必须先mcporter call exa |
| 知识星球API 401直接放弃 | 遗漏调研纪要 | 换有效token或查本地缓存 |
| 跳过"自愿性披露"搜索 | 遗漏重大公告 | 必须搜索新关键词 |
| 数据无来源标注 | 报告不可信 | 每项数据标注来源 |
| 未发现错误就发送 | 低质量报告 | 自查清单全部勾选再发送 |

---

## 新增：Exa mcporter 扩展搜索关键词

### 基础6类关键词（必须搜索）
```python
base_keywords = [
    "基础业务", "资本运作", "风险警示", 
    "业务驱动", "业绩相关", "资本市场"
]
```

### 新增扩展关键词（必须搜索）
```python
extended_keywords = [
    # 公告类
    "自愿性披露",
    "最新消息", 
    "公告",
    "投资者关系",
    
    # 调研类
    "机构调研",
    "券商调研",
    "路演",
    "业绩说明会",
    
    # 订单类
    "中标",
    "合同",
    "订单",
    "框架协议",
    
    # 技术类
    "技术突破",
    "专利",
    "产品认证",
    "研发进展",
    
    # 产能类
    "产能扩张",
    "新厂投产",
    "产能利用率",
    "扩产计划",
    
    # 客户类
    "大客户",
    "供应商",
    "客户认证",
    "进入供应链",
]
```

### Exa mcporter 执行命令模板
```bash
# 基础搜索
mcporter call exa.web_search_exa query="{股票名称} {关键词}" numResults=8

# 自愿性披露
mcporter call exa.web_search_exa query="{股票名称} 自愿性披露 公告" numResults=8

# 最新消息
mcporter call exa.web_search_exa query="{股票名称} 最新消息 2025" numResults=8

# 机构调研
mcporter call exa.web_search_exa query="{股票名称} 机构调研 券商" numResults=8

# 订单合同
mcporter call exa.web_search_exa query="{股票名称} 中标 合同 订单" numResults=8
```

### Python执行模板
```python
import subprocess
import json

def search_exa(keyword, num_results=8):
    """Exa搜索封装"""
    try:
        result = subprocess.run(
            ['mcporter', 'call', 'exa.web_search_exa', 
             f'query={keyword}', f'numResults={num_results}'],
            capture_output=True, text=True, timeout=60
        )
        return result.stdout
    except Exception as e:
        return f"搜索失败: {e}"

# 必须执行的扩展搜索
stock_name = "伟测科技"
extended_searches = [
    f"{stock_name} 自愿性披露",
    f"{stock_name} 最新消息",
    f"{stock_name} 机构调研",
    f"{stock_name} 订单 中标",
    f"{stock_name} 产能扩张",
]

for kw in extended_searches:
    print(f"搜索: {kw}")
    results = search_exa(kw)
    # 处理结果...
```

### 搜索执行检查清单（发送前必须全部勾选）

```markdown
## 搜索完整性确认表

| 搜索类型 | 关键词 | 状态 | 结果数 |
|---------|--------|------|--------|
| Exa-基础 | {股票名} | ☐ | ___ |
| Exa-自愿性披露 | {股票名} 自愿性披露 | ☐ | ___ |
| Exa-最新消息 | {股票名} 最新消息 | ☐ | ___ |
| Exa-机构调研 | {股票名} 机构调研 | ☐ | ___ |
| Exa-订单合同 | {股票名} 订单 中标 | ☐ | ___ |
| Exa-产能 | {股票名} 产能扩张 | ☐ | ___ |
| 知识星球 | {股票名} | ☐ | ___ |
| 新浪财经 | {股票名} | ☐ | ___ |
| 东方财富 | {股票名} | ☐ | ___ |

**确认**: 以上所有搜索项已完成或标注"无结果"
**确认人**: ______  **时间**: ______
```

### 常见搜索问题处理

| 问题 | 处理方式 | 记录位置 |
|------|----------|----------|
| Exa 返回空 | 尝试不同关键词组合 | 搜索日志 |
| 知识星球401 | 检查本地缓存文件 | 检查data/zsxq/raw/ |
| 新浪财经无数据 | 检查URL可用性 | 尝试备用API |
| 东方财富限流 | 降低请求频率 | 添加sleep(2) |
| 所有API失败 | 使用本地缓存数据 | 标注数据来源和时间 |

---

分析开始前必须完成以下检查，否则报告无效：

## 1. 真实股价获取（严禁瞎编！）

```python
# ✅ 正确：获取真实股价
import requests
url = 'https://qt.gtimg.cn/q=sz300548'
resp = requests.get(url)
parts = resp.text.split('~')
current_price = float(parts[3])  # 当前价格
market_cap = float(parts[44])    # 总市值

# 或 Tushare
import tushare as ts
df = ts.pro.daily(ts_code='300548.SZ', limit=1)
current_price = df['close'].values[0]
```

**检查点**:
- [ ] 是否获取了真实股价？（不是瞎编35元）
- [ ] 是否获取了总股本？（用于计算目标价）
- [ ] 是否标注了数据来源和获取时间？

---

## 1.2 真实PE/估值数据获取（绝对禁止编造！）

### ⚠️ 血淋淋的教训（[REDACTED_PHONE]光库科技PE造假案例）

**造假行为**：
```
编造数据：
- 天孚通信 PE 45x（编造）
- 中际旭创 PE 35x（编造）  
- 新易盛 PE 40x（编造）

真实数据（长桥API查询）：
- 天孚通信 PE 144x（真实）❌ 差距3.2倍！
- 中际旭创 PE 71x（真实）❌ 差距2倍！
- 新易盛 PE 53x（真实）❌ 差距1.3倍！
```

**后果**：
- 目标市值计算错误（40亿 vs 真实222亿）
- 投资建议严重偏离（高估75% vs 真实高估45%）
- **构成数据造假，报告无效！**

---

### 📋 PE/估值数据强制获取流程

**必须使用API实时查询，严禁编造！**

```python
from longport.openapi import Config, QuoteContext

config = Config.from_env()
ctx = QuoteContext(config)

# Step 1: 查询股价和静态数据
quote = ctx.quote(['300394.SZ'])  # 天孚通信
static = ctx.static_info(['300394.SZ'])

price = float(quote[0].last_done)           # 实时股价
eps_ttm = float(static[0].eps_ttm)          # EPS_TTM
shares = float(static[0].total_shares)      # 总股本

# Step 2: 计算真实PE
pe_real = price / eps_ttm                   # ✅ 真实PE
market_cap = price * shares / 1e8           # ✅ 真实市值

print(f"股价: {price}元")
print(f"EPS_TTM: {eps_ttm}元") 
print(f"PE_TTM: {pe_real:.2f}x")              # 必须显示计算过程
print(f"市值: {market_cap:.2f}亿元")
```

**同业对比时必须查询所有标杆企业：**

```python
peers = ['300394.SZ', '300308.SZ', '300502.SZ']  # 天孚/中际/新易盛
for code in peers:
    quote = ctx.quote([code])
    static = ctx.static_info([code])
    pe = float(quote[0].last_done) / float(static[0].eps_ttm)
    print(f"{code}: PE = {pe:.2f}x")  # 实时查询，严禁编造！
```

---

### 🔴 数据造假识别清单

| 造假行为 | 识别特征 | 正确做法 |
|:---|:---|:---|
| **编造PE** | 用整数（35x/40x/45x） | 从API获取，带2位小数（71.08x） |
| **编造市值** | 整数或规律数字 | 股价×股本计算，验证反向 |
| **编造增速** | 整数百分比（+50%） | 基于财报计算，带1位小数 |
| **来源模糊** | "基于公开信息" | 明确标注"长桥API [REDACTED_PHONE]" |
| **无计算过程** | 直接给结果 | 展示price/eps=pe的完整计算 |

---

### ⚡ 真实性快速验证

**报告提交前必须执行：**

```python
# 验证1：PE反向计算
pe_reported = 45  # 你写的PE
price = 340.48    # 实际股价
eps = 2.3571      # 实际EPS
pe_calculated = price / eps  # = 144.45

assert abs(pe_reported - pe_calculated) < 1, \
    f"PE造假！报告{pe_reported} vs 真实{pe_calculated}"

# 验证2：市值反向计算
cap_reported = 40.63  # 你写的市值（亿元）
shares = 2.4918e8     # 总股本
cap_calculated = price * shares / 1e8

assert abs(cap_reported - cap_calculated) < 1, \
    f"市值造假！报告{cap_reported} vs 真实{cap_calculated}"
```

---

### 🚨 造假后果（写入SKILL）

**任何数据造假行为将导致：**
1. 报告立即作废，不得提交
2. 必须重新使用真实数据生成
3. 在MEMORY.md记录造假行为
4. 向用户诚实承认错误

**数据真实性是底线，绝不允许编造！**

## 1.5 市值计算验证（强制！防止单位错误）

### ⚠️ 血淋淋的教训（[REDACTED_PHONE]光库科技案例分析）

**错误案例**：
```
股价: 163.05元
总股本: 2.49亿股
错误计算: 163.05 × 249万 = 40.63亿 ❌
正确计算: 163.05 × 2.49亿 = 406.3亿 ✅
```

**后果**：目标市值、涨跌幅、估值全部错误，投资建议严重偏离实际。

---

### 📋 市值计算强制检查清单

```python
# ✅ 正确：分步计算并验证
current_price = 163.05  # 元
total_shares = 2.49e8   # 股 (2.49亿股 = 249,000,000股)

# Step 1: 明确单位
print(f"股价: {current_price} 元")
print(f"总股本: {total_shares:,.0f} 股 = {total_shares/1e8:.2f} 亿股")

# Step 2: 计算市值（元）
market_cap_yuan = current_price * total_shares
print(f"总市值(元): {market_cap_yuan:,.0f}")

# Step 3: 转换为亿元
market_cap_yi = market_cap_yuan / 1e8
print(f"总市值: {market_cap_yi:.2f} 亿元")

# Step 4: 反向验证
check_price = market_cap_yuan / total_shares
print(f"反向验证股价: {check_price:.2f} 元 ✅" if abs(check_price - current_price) < 0.01 else "❌ 计算错误")
```

**输出示例**：
```
股价: 163.05 元
总股本: 249,000,000 股 = 2.49 亿股
总市值(元): 40,599,450,000
总市值: 405.99 亿元
反向验证股价: 163.05 元 ✅
```

---

### 目标市值计算验证

**必须列式计算**：
```markdown
## 估值计算过程（必须展示）

### 基础数据
- 当前股价: 163.05 元
- 总股本: 2.49 亿股 = 249,000,000 股
- 当前市值: 163.05 × 2.49亿 = 405.99 亿元

### 三情景估值计算
| 情景 | 目标价 | 计算过程 | 目标市值 | 空间计算 |
|------|--------|----------|----------|----------|
| 保守 | 130元 | 130 × 2.49亿 | 323.7亿元 | ([REDACTED_PHONE])/406 = -20.3% |
| 中性 | 200元 | 200 × 2.49亿 | 498.0亿元 | (498-406)/406 = +22.7% |
| 乐观 | 300元 | 300 × 2.49亿 | 747.0亿元 | (747-406)/406 = +84.0% |
```

---

### 常见错误检查表

| 错误类型 | 错误示例 | 正确做法 |
|----------|----------|----------|
| **单位混淆** | 把亿股当成万股 | 明确标注: 2.49亿股 = 249,000,000股 |
| **数量级错误** | 150亿 vs 747亿 | 用计算器验证，不要心算 |
| **反向验证缺失** | 只算一遍 | 市值/股本 = 股价，反向检查 |
| **四舍五入误差** | 406亿写成400亿 | 保留2位小数，标注"约" |

---

### 计算验证检查点

- [ ] **单位确认**: 股本明确是"亿股"还是"万股"
- [ ] **分步计算**: 股价×股本=市值（元），再÷1e8=市值（亿）
- [ ] **反向验证**: 市值÷股本=股价，误差<0.01元
- [ ] **目标价验证**: 每个目标价都计算对应市值
- [ ] **空间验证**: (目标市值-当前市值)/当前市值，手动复核

---

## 2. 多源新闻搜索（必须使用！）

```python
from multi_source_news_v2 import search_stock_comprehensive

# ✅ 正确：全面搜索（自动执行6类关键词）
results = search_stock_comprehensive(
    stock_code="300548.SZ",
    stock_name="长芯博创",
    industry="光模块"
)
# 返回：基础 + 资本运作 + 风险 + 业务驱动 + 业绩 + 资本市场
```

**6类关键词必须全部搜索**：

| 类别 | 关键词 | 重要性 | 用途 |
|:-----|:-------|:------:|:-----|
| **基础** | 行业关键词 | ⭐⭐⭐⭐⭐ | 业务基本面 |
| **资本运作** | **并购、收购、定增、重组、借壳** | ⭐⭐⭐⭐⭐ | 重大事件（如鸿辉光联） |
| **风险** | **减持、增持、违规、处罚、监管、问询函、关注函、警示函** | ⭐⭐⭐⭐⭐ | 风险排查 |
| **业务驱动** | 订单、合同、中标、产能扩张、技术突破、专利、产品认证 | ⭐⭐⭐⭐⭐ | 业绩驱动 |
| **业绩** | 业绩预增、业绩快报、业绩下修、业绩变脸、扭亏、亏损 | ⭐⭐⭐⭐⭐ | 业绩验证 |
| **资本市场** | 研报、评级、目标价、机构调研、龙虎榜、大宗交易 | ⭐⭐⭐⭐ | 市场情绪 |

**检查点**:
- [ ] 是否调用 `search_stock_comprehensive()`？
- [ ] 是否搜索了6类关键词？
- [ ] Exa搜索是否使用"标的+关键词"格式？（如"长芯博创 并购"）
- [ ] 是否标注了数据来源和时效性？

## 3. 财报数据时效性（强制使用最新财报！）

### ⚠️ 血淋淋的教训（[REDACTED_PHONE]铂科新材案例分析）

**错误案例**：分析铂科新材时仅使用2024年报数据，得出"业绩高增长确定"结论，
**实际情况**：2025年三季报显示净利润增速从47%骤降至2.5%，
**后果**：投资结论严重偏离现实，目标价高估约15-20%。

---

### 🕐 财报时效性优先级（必须使用最新可用财报）

| 当前时间 | 必须使用的财报 | 禁止使用的财报 | 原因 |
|:---------|:---------------|:---------------|:-----|
| **3-4月** | 上一年年报(已发布) | 三季报 | 年报最全面准确 |
| **4月** | 上一年年报 + 当年一季报 | 三季报 | 一季报已发布 |
| **5-8月** | 当年一季报/半年报 | 上一年年报 | 数据过时 |
| **8月** | 当年半年报 + 业绩快报 | 一季报 | 半年报更全面 |
| **9-10月** | 当年三季报 | 半年报 | 三季报最新 |
| **10月** | 当年三季报 | 半年报 | 数据过时 |
| **11-12月** | 当年三季报 + 年报预告 | 半年报 | 预告有指引 |

---

### 📋 财报数据检查清单

```markdown
## 财报数据时效性检查（必须完成）

### 当前日期确认
当前分析日期: ______年____月____日

### 最新财报查询（按优先级）
- [ ] **年报**（如果当年1-4月，使用上一年年报；当年4月后，关注当年一季报）
- [ ] **一季报**（4月发布，当年Q1数据）
- [ ] **半年报**（8月发布，当年H1数据）
- [ ] **三季报**（10月发布，当年Q1-Q3数据）
- [ ] **年报预告**（1月发布，当年全年预告）

### 财报数据核对
| 数据类型 | 使用财报 | 数据日期 | 来源 |
|:---------|:---------|:---------|:-----|
| 最新营收 | ______ | ______ | ______ |
| 最新净利润 | ______ | ______ | ______ |
| 最新毛利率 | ______ | ______ | ______ |
| 同比增速 | ______ | ______ | ______ |

### 禁止事项
- [ ] 使用超过3个月的旧财报 ❌ **绝对禁止**
- [ ] 年报已发布仍使用三季报 ❌ **绝对禁止**
- [ ] 一季报已发布仍使用年报 ❌ **绝对禁止**
```

---

### 财报数据获取模板

```python
# 获取最新财报数据（必须按时间优先级）
import datetime

now = datetime.datetime.now()
month = now.month

# 根据当前月份确定最新可用财报
if month >= 10:
    # 10月后，三季报已发布
    latest_report = "三季报"
    report_period = f"{now.year}年Q1-Q3"
elif month >= 8:
    # 8月后，半年报已发布
    latest_report = "半年报"
    report_period = f"{now.year}年H1"
elif month >= 4:
    # 4月后，一季报已发布
    latest_report = "一季报"
    report_period = f"{now.year}年Q1"
else:
    # 1-3月，使用上一年年报
    latest_report = "年报"
    report_period = f"{now.year-1}年全年"

print(f"当前时间: {now.strftime('%Y年%m月')}")
print(f"必须使用财报: {latest_report}")
print(f"报告期: {report_period}")
```

---

### 同比/环比分析要求

**必须计算以下增速指标**：

| 指标 | 计算公式 | 重要性 |
|:-----|:---------|:------:|
| **营收同比增速** | (本期营收 - 同期营收) / 同期营收 | ⭐⭐⭐⭐⭐ |
| **净利润同比增速** | (本期净利 - 同期净利) / 同期净利 | ⭐⭐⭐⭐⭐ |
| **环比增速** | (本期 - 上期) / 上期 | ⭐⭐⭐⭐ |
| **逐季增速趋势** | Q1 → Q2 → Q3 → Q4 | ⭐⭐⭐⭐⭐ |

---

## 4. 目标价计算（必须用真实数据！）

### 4.1 计算验证流程（强制！）

**Step 1: 获取基础数据**
```python
# ✅ 正确：获取真实数据
current_price = 163.05  # 真实股价（必须来自API）
total_shares = 2.49e8   # 总股本（必须来自API，单位：股）
current_market_cap = current_price * total_shares / 1e8  # 当前市值（亿元）

print(f"股价: {current_price} 元")
print(f"总股本: {total_shares/1e8:.2f} 亿股")
print(f"当前市值: {current_market_cap:.2f} 亿元")
```

**Step 2: 三情景目标价计算**
```python
# 定义三情景净利润（必须基于业绩预测）
profit_conservative = 2.0  # 保守情景净利润（亿元）
profit_neutral = 2.5       # 中性情景净利润（亿元）
profit_optimistic = 3.0    # 乐观情景净利润（亿元）

# 给予PE倍数（必须说明理由）
pe_conservative = 30  # 保守PE
pe_neutral = 40       # 中性PE
pe_optimistic = 50    # 乐观PE

# 计算目标市值
target_cap_conservative = profit_conservative * pe_conservative  # 保守目标市值
target_cap_neutral = profit_neutral * pe_neutral                  # 中性目标市值
target_cap_optimistic = profit_optimistic * pe_optimistic        # 乐观目标市值

# 计算目标价
target_price_conservative = target_cap_conservative * 1e8 / total_shares
target_price_neutral = target_cap_neutral * 1e8 / total_shares
target_price_optimistic = target_cap_optimistic * 1e8 / total_shares

# 计算空间
upside_conservative = (target_price_conservative - current_price) / current_price * 100
upside_neutral = (target_price_neutral - current_price) / current_price * 100
upside_optimistic = (target_price_optimistic - current_price) / current_price * 100

# 验证：反向计算
check_cap_conservative = target_price_conservative * total_shares / 1e8
print(f"反向验证: {check_cap_conservative:.2f}亿 == {target_cap_conservative:.2f}亿 ✅" 
      if abs(check_cap_conservative - target_cap_conservative) < 0.1 
      else "❌ 计算错误")
```

**Step 3: 输出格式（必须展示计算过程）**
```markdown
### 估值计算过程（必须展示）

**基础数据**:
- 当前股价: 163.05 元
- 总股本: 2.49 亿股 = 249,000,000 股
- 当前市值: 163.05 × 2.49亿 = 406.30 亿元 ✅

**三情景估值计算**:

| 情景 | 2026年净利润 | PE | 目标市值计算 | 目标市值 | 目标价计算 | 目标价 | 空间计算 | 空间 |
|------|-------------|-----|-------------|----------|-----------|--------|----------|------|
| 保守 | 2.0亿 | 30x | 2.0×30 | 60亿 | 60亿÷2.49亿 | 130元 | (130-163)/163 | -20% |
| 中性 | 2.5亿 | 40x | 2.5×40 | 100亿 | 100亿÷2.49亿 | 200元 | (200-163)/163 | +23% |
| 乐观 | 3.0亿 | 50x | 3.0×50 | 150亿 | 150亿÷2.49亿 | 300元 | (300-163)/163 | +84% |

**反向验证**:
- 保守: 130元 × 2.49亿 = 323.7亿 ✅
- 中性: 200元 × 2.49亿 = 498.0亿 ✅
- 乐观: 300元 × 2.49亿 = 747.0亿 ✅
```

### 4.2 计算验证检查点

- [ ] **基础数据**: 股价和股本来自API，不是编造
- [ ] **单位正确**: 市值计算时明确是"元"还是"亿元"
- [ ] **分步展示**: 每一步计算都展示过程和结果
- [ ] **反向验证**: 目标价×股本=目标市值，误差<0.1亿
- [ ] **空间计算**: 涨跌幅度公式正确，结果复核
- [ ] **PE合理性**: 每个PE倍数都有行业对比依据

### 4.3 常见错误清单（对照检查）

| 检查项 | 错误示例 | 正确示例 | 状态 |
|--------|----------|----------|------|
| 市值单位 | 40.63亿(应为406亿) | 406.3亿元 | ☐ |
| 目标市值 | 150亿(应为747亿) | 747.0亿元 | ☐ |
| 股本单位 | 249万(应为2.49亿) | 2.49亿股=249,000,000股 | ☐ |
| 反向验证 | 缺失 | 130×2.49=323.7 ✅ | ☐ |
| 空间公式 | (200-163)/200 | (200-163)/163 | ☐ |

---

## 5. 业绩增速变化分析（强制！发现增速放缓必须深入分析）

### ⚠️ 增速放缓分析要求

**如果发现业绩增速大幅下滑（如从40%降至5%），必须：**

1. **量化增速变化**
   - 对比去年同期增速
   - 对比环比增速
   - 对比市场预期

2. **深入分析原因（至少3个可能原因）**
   - 行业需求变化
   - 客户订单节奏
   - 竞争格局变化
   - 产能瓶颈
   - 基数效应

3. **验证原因（搜索相关新闻）**
   - 客户财报/出货量
   - 行业数据
   - 竞争对手情况

4. **调整投资结论**
   - 下调目标价
   - 调整仓位建议
   - 更新风险提示

**案例模板（铂科新材2025年）：**

```markdown
### 增速放缓原因分析

| 原因 | 证据 | 影响程度 | 持续性 |
|:-----|:-----|:--------:|:-------|
| 芯片电感基数效应 | 2024年增长275%，基数过高 | ⭐⭐⭐⭐ | 短期 |
| GB300量产节奏延后 | 原计划2025H1，实际2025H2 | ⭐⭐⭐ | 中期 |
| 光伏需求疲软 | 行业整体增速放缓 | ⭐⭐⭐ | 中期 |
```

---

## 6. 10环节检查清单

- [ ] 0️⃣ 投资摘要（含真实股价）
- [ ] 1️⃣ 公司基本画像
- [ ] 2️⃣ 业务结构分析
- [ ] 3️⃣ 产业链定位与竞争格局
- [ ] 4️⃣ 订单与产能分析
- [ ] 5️⃣ 财务深度分析
- [ ] 6️⃣ 行业景气度验证
- [ ] 7️⃣ 客户与供应商分析
- [ ] 8️⃣ 业绩预测与估值（基于真实股价）
- [ ] 9️⃣ 风险提示
- [ ] 🔟 投资建议

---

## 一、分析流程总览（10环节标准流程）

```
┌─────────────────────────────────────────────────────────────────┐
│  0. 投资摘要（前置）- 关键数据一目了然                           │
├─────────────────────────────────────────────────────────────────┤
│  1. 公司基本画像 - 业务定位+估值+概念板块                        │
├─────────────────────────────────────────────────────────────────┤
│  2. 业务结构分析 - 收入拆分+产品细分+核心竞争力                  │
├─────────────────────────────────────────────────────────────────┤
│  3. 产业链定位与竞争格局 - 产业链图+同行对比+竞争优势           │
├─────────────────────────────────────────────────────────────────┤
│  4. 订单与产能分析 - 产能布局+订单情况+扩产计划                 │
├─────────────────────────────────────────────────────────────────┤
│  5. 财务深度分析 - 利润表+盈利能力+杜邦分析+扣非验证            │
├─────────────────────────────────────────────────────────────────┤
│  6. 行业景气度验证 - 下游需求+国产替代趋势+政策支撑             │
├─────────────────────────────────────────────────────────────────┤
│  7. 客户与供应商分析 - 客户结构+集中度+供应商议价能力           │
├─────────────────────────────────────────────────────────────────┤
│  8. 业绩预测与估值 - 历史业绩+三情景估值+券商研报汇总           │
├─────────────────────────────────────────────────────────────────┤
│  9. 风险提示（分级）- 高/中/低风险+应对措施                     │
├─────────────────────────────────────────────────────────────────┤
│  10. 投资建议 - 综合评级+买入区间+目标价+跟踪指标               │
├─────────────────────────────────────────────────────────────────┤
│  附：数据源汇总 - 标注所有数据来源和时效性                       │
└─────────────────────────────────────────────────────────────────┘
```

---

## 二、详细SOP（标准操作程序）

### 环节0: 投资摘要（必须前置！）

**目的**: 让读者30秒内掌握核心信息

**必含表格**:
```markdown
| 项目 | 数据 | 来源 | 说明 |
|------|------|------|------|
| 当前股价 | XX元 | Tushare | 202X-XX-XX |
| 总市值 | XX亿元 | Tushare | 计算得出 |
| 202X年前三季度营收 | XX亿元 | Tushare | 同比+XX% |
| 202X年前三季度净利润 | XX亿元 | Tushare | 同比+XX% |
| 202X年预测净利润 | XX亿元 | 券商平均 | 同比+XX% |
| 202X年预测PE | XX倍 | 计算 | 基于XX亿市值 |
```

**一句话总结**: 
> "全球半导体XX龙头，技术领先（XXnm认证）+国产替代+业绩高速增长，但估值偏高。"

---

### 环节1: 公司基本画像

#### 1.1 基本信息
- 股票代码、公司名称、所属行业
- 实际控制人、企业性质、上市日期
- **主营业务一句话描述**

#### 1.2 市值与估值（Tushare实时）
```python
df = pro.daily_basic(ts_code='300666.SZ', trade_date='20260226')
pe_ttm = df['pe_ttm'].values[0]  # PE_TTM
pb = df['pb'].values[0]  # PB
total_mv = df['total_mv'].values[0] / 10000  # 总市值（万元→亿元）
```

**输出表格**:
| 指标 | 数值 | 评价 |
|------|------|------|
| PE_TTM | XX倍 | 偏高/合理/低估 |
| PB | XX倍 | - |
| 总市值 | XX亿元 | - |
| 股息率 | XX% | - |

#### 1.3 核心概念板块
用⭐标注重要性：
- ⭐⭐⭐⭐⭐ 核心业务概念
- ⭐⭐⭐⭐ 重要驱动概念
- ⭐⭐⭐ 辅助概念

---

### 环节2: 业务结构分析（重点优化！）

#### 2.1 收入结构（按业务线拆分）
```markdown
| 业务板块 | 202X年上半年 | 占比 | 增速 | 毛利率 |
|----------|-------------|------|------|--------|
| XX业务 | XX亿 | XX% | +XX% | XX% |
| XX业务 | XX亿 | XX% | +XX% | XX% |
```

#### 2.2 产品结构（重点！细分到具体产品）
```markdown
| 产品类型 | 占比 | 应用领域 | 技术壁垒 | 竞争格局 |
|----------|------|----------|----------|----------|
| XX产品 | XX% | 半导体 | 高 | 全球少数掌握 |
| XX产品 | XX% | 面板 | 中 | 竞争激烈 |
```

#### 2.3 客户集中度
- 核心客户列表（前3-5大客户）
- 客户集中度风险：CR5占比
- **客户质量评估**（是否为行业龙头）

---

### 环节3: 产业链定位与竞争格局（重点优化！）

#### 3.1 产业链定位图
**必须画产业链树状图**：
```
上游: XX原材料
  ↓
中游: 【公司】核心产品制造
  ↓
下游: XX行业应用
```

#### 3.2 竞争格局分析（关键！正确选择对比公司）

**同行业选择原则**（重要！）：
1. **同业务优先**: 直接竞争对手（产品相同/相似）
2. **同产业链**: 上下游关联公司
3. **同逻辑**: 同赛道不同细分（如都是半导体材料国产替代）
4. **标注差异**: 必须说明可比性和差异点

**案例分析 - 江丰电子**:
- ✅ **正确**: 对比阿石创（PVD镀膜材料）、隆华科技（ITO靶材）
- ❌ **错误**: 对比安集科技（抛光液，业务完全不同）

**输出表格**:
```markdown
| 公司 | 代码 | PE_TTM | PB | 总市值 | 主营业务 | 可比性说明 |
|------|------|--------|-----|--------|----------|------------|
| 目标公司 | XXX | XX | XX | XX亿 | XX业务 | - |
| 可比公司A | XXX | XX | XX | XX亿 | XX业务 | 同业务，规模差距X倍 |
| 可比公司B | XXX | XX | XX | XX亿 | XX业务 | 产业链上下游 |
```

#### 3.3 核心竞争力
用⭐标注护城河强度：
- 技术壁垒、客户认证、国产替代、业绩增长、产能扩张

---

### 环节4: 订单与产能分析

#### 4.1 产能布局
| 基地 | 位置 | 状态 | 产能贡献 |
|------|------|------|----------|
| XX基地 | XX | 🟢满产 | 主产能 |
| XX基地 | XX | 🟢投产 | 扩产中 |

#### 4.2 在手订单
- 订单金额（如有披露）
- 订单增速趋势
- 订单完成率

---

### 环节5: 财务深度分析（重点优化！）

#### 5.1 利润表分析（真实数据）
```markdown
| 年份 | 营收(亿) | 营收增速 | 净利润(亿) | 净利润增速 | 净利率 | ROE |
|------|----------|----------|------------|------------|--------|-----|
| 2022A | XX | - | XX | - | XX% | XX% |
| 2023A | XX | +XX% | XX | +XX% | XX% | XX% |
| 2024A | XX | +XX% | XX | +XX% | XX% | XX% |
| 2025Q3 | XX | - | XX | +XX% | XX% | XX% |
```

#### 5.2 盈利能力分析
- 毛利率趋势（分业务线）
- 净利率趋势
- ROE趋势

#### 5.3 杜邦分析
```
ROE = 净利率 × 资产周转率 × 权益乘数
    = XX% × XX × XX
    = XX%
```

#### 5.4 成长性验证（关键！新增）
**必须分析扣非净利润**:
```markdown
| 指标 | 2025Q1 | 同比 | 说明 |
|------|--------|------|------|
| 归母净利润 | 1.57亿 | +163.58% | 表面增速极高 |
| 扣非净利润 | 0.91亿 | +30.36% | 真实增速 |
| 投资收益 | 0.66亿 | - | 占净利润42% |
```

**判断标准**:
- ✅ 真成长: 扣非增速 ≈ 营收增速
- ⚠️ 需警惕: 扣非增速 << 归母增速（投资收益占比高）

---

### 环节6: 行业景气度验证

#### 6.1 下游需求景气度
| 下游行业 | 景气度 | 驱动因素 | 对公司影响 |
|----------|--------|----------|------------|
| XX行业 | 🟢极高 | AI/国产替代 | 核心受益 |
| XX行业 | 🟢高 | 扩产 | 需求增长 |

#### 6.2 国产替代趋势
| 技术节点 | 国产化率 | 主要供应商 | 公司进展 |
|----------|----------|------------|----------|
| 90nm以上 | 80%+ | 多家 | ✅批量供应 |
| 28-90nm | 60%+ | 少数 | ✅批量供应 |
| 7nm | 30%+ | 江丰+海外 | ✅批量应用 |
| 5nm | 10%+ | 海外为主 | ✅验证中 |

---

### 环节7: 客户与供应商分析

#### 7.1 客户结构
| 客户类型 | 占比 | 代表客户 | 特点 |
|----------|------|----------|------|
| 类型A | XX% | XX公司 | 高增长 |
| 类型B | XX% | XX公司 | 稳定 |

#### 7.2 供应商结构
| 供应品类 | 主要供应商 | 议价能力 | 风险等级 |
|----------|------------|----------|----------|
| XX材料 | XX公司 | 高 | 🟡中 |

---

### 环节8: 业绩预测与估值（重点优化！）

#### 8.0 业绩预测方法选择（新增！）

**必须使用 `stock-earnings-forecast` Skill 进行业绩预测：**

```python
# 导入收入-成本模型预测器
import sys
sys.path.insert(0, '/root/.openclaw/workspace/skills/stock-earnings-forecast/scripts')

from revenue_cost_forecaster import OperatingLeverageForecaster

# 创建预测器
forecaster = OperatingLeverageForecaster()

# 添加行业标杆（至少3家）
forecaster.add_benchmark("300394.SZ", "天孚通信", 0.35)  # 权重35%
forecaster.add_benchmark("300308.SZ", "中际旭创", 0.35)  # 权重35%
forecaster.add_benchmark("300502.SZ", "新易盛", 0.30)    # 权重30%

# 加载标杆季度数据（自动从Tushare获取）
forecaster.load_all_benchmark_data()

# 设置目标企业
forecaster.set_target(
    code="300620.SZ",
    name="光库科技",
    revenue_2025=15.0,      # 2025年预估营收（亿元）
    profit_2025=2.5,        # 2025年预估净利润（亿元）
    total_shares=2.4918e8   # 总股本
)

# 执行预测
result = forecaster.forecast_2025_2026(market_share_change=0)

# 提取结果
profit_2026 = result['profit']['2026']  # 2026年预测净利润
revenue_2026 = result['revenue']['2026']  # 2026年预测营收
```

**预测结果必须展示完整计算过程：**
```markdown
### 收入-成本模型预测结果

【标杆企业分析】（2025年真实财报）
- 天孚通信Q1→Q2: +60.0%, Q2→Q3: -3.2%
- 中际旭创Q1→Q2: +21.6%, Q2→Q3: +25.9%
- 新易盛Q1→Q2: +57.6%, Q2→Q3: -5.0%
- 行业平均季度环比: +26.1%

【成本结构】（基于标杆Q3数据）
- 变动成本率: 50%（随营收线性变化）
- 固定成本率: 13%（不随营收变化）

【2026年预测】
- 营收: 15.0亿 × (1+45%) = 21.8亿
- 固定成本: 1.95亿 × 1.03 = 2.01亿
- 变动成本: 21.8亿 × 50% = 10.9亿
- 净利润: [REDACTED_PHONE] = 8.9亿
```

**⚠️ 禁止事项：**
- ❌ 不使用stock-earnings-forecast Skill，直接拍脑袋预测
- ❌ 不展示标杆企业季度数据和环比计算
- ❌ 不展示成本分解和利润计算过程
- ❌ 使用PE倍数作为主要估值依据

---

#### 8.1 历史业绩与预测
```markdown
| 年份 | 营收(亿) | 营收增速 | 净利润(亿) | 净利润增速 | 净利率 | 数据来源 |
|------|----------|----------|------------|------------|--------|----------|
| 2023A | XX | +XX% | XX | +XX% | XX% | **年报** |
| 2024A | XX | +XX% | XX | +XX% | XX% | **年报** |
| 2025E | XX | +XX% | XX | +XX% | XX% | **预测** |
| 2026E | XX | +XX% | XX | +XX% | XX% | **预测** |
```

**预测逻辑说明**: 基于XX产能释放+XX需求增长

#### 8.2 三情景估值（关键！）
```markdown
| 情景 | 净利润 | 给予PE | 目标价 | 当前价 | 空间 | 假设 |
|------|--------|--------|--------|--------|------|------|
| 保守 | XX亿 | XXx | XX元 | XX元 | XX% | 业绩miss |
| 中性 | XX亿 | XXx | XX元 | XX元 | XX% | 符合预期 |
| 乐观 | XX亿 | XXx | XX元 | XX元 | XX% | 超预期 |
```

#### 8.3 券商研报观点汇总（Tushare Pro）
```python
# 获取最新研报
df = pro.report_rc(ts_code='300666.SZ')
df_recent = df[df['report_date'] >= '20250101']
```

**输出表格**:
| 券商 | 评级 | 目标价 | 核心观点 | 日期 |
|------|------|--------|----------|------|
| XX证券 | 买入 | XX元 | XX | 202X-XX |

**统计**: 共XX条202X-202X年研报，平均目标价XX元

#### 8.4 估值敏感性分析（新增！）
```markdown
假设2026年净利润:
| 增速 | 净利润 | 2026年PE | PEG | 估值判断 |
|------|--------|----------|-----|----------|
| +15% | XX亿 | XX倍 | XX | 🔴 高估 |
| +25% | XX亿 | XX倍 | XX | 🟡 偏高 |
| +40% | XX亿 | XX倍 | XX | 🟢 合理 |
```

---

### 环节9: 风险提示（分级）

#### 9.1 🔴 高风险
| 风险类型 | 具体表现 | 影响 | 应对 |
|----------|----------|------|------|
| 估值过高 | PE XX倍 | 回归压力大 | 等待回调 |

#### 9.2 🟡 中风险
| 风险类型 | 具体表现 | 影响 | 应对 |
|----------|----------|------|------|
| 客户集中 | CR5占比XX% | 议价压力 | 拓展新客户 |

#### 9.3 🟢 低风险
| 风险类型 | 具体表现 | 影响 | 应对 |
|----------|----------|------|------|
| 行业周期 | 波动 | 短期影响 | 长期持有 |

---

### 环节10: 投资建议（重点优化！）

#### 10.1 投资逻辑评分
| 维度 | 评分 | 说明 |
|------|------|------|
| 行业景气度 | ⭐⭐⭐⭐⭐ | XX |
| 业绩成长性 | ⭐⭐⭐⭐⭐ | XX |
| 竞争优势 | ⭐⭐⭐⭐⭐ | XX |
| 估值合理性 | ⭐⭐ | XX |

#### 10.2 投资建议（关键！具体可操作）
| 建议项 | 内容 |
|--------|------|
| **综合评级** | 🟢买入/🟡持有/🔴卖出 |
| **核心逻辑** | 一句话总结 |
| **当前状态** | 估值/业绩/市场情绪 |
| **买入区间** | **¥XX-XX**（回调X%） |
| **止损位** | ¥XX（-X%） |
| **目标价** | XX元（+X%） |
| **建议仓位** | X-X% |
| **核心催化剂** | XX事件/数据 |

#### 10.3 关键跟踪指标
| 指标 | 频率 | 数据源 | 阈值 |
|------|------|--------|------|
| 季度净利润增速 | 季度 | Tushare | <X%警惕 |
| 毛利率 | 季度 | 财报 | <X%警惕 |
| XX占比 | 年报 | 公司披露 | 持续提升 |

---

## 三、数据源规范（重要！）

### 3.1 必须标注的数据源

**⚠️ 严格规定：所有实时数据必须从API获取，禁止从本地数据库获取！**

| 数据类型 | 首选来源 | 禁止来源 | 单位转换 |
|----------|----------|----------|----------|
| **估值数据** | Tushare daily_basic | ❌ 本地数据库 | 市值:万元→亿元(÷10000) |
| **财务数据** | Tushare income/fina_indicator | ❌ 本地数据库 | 营收/净利润:元→亿元(÷1e8) |
| **研报数据** | Tushare report_rc | ❌ 本地数据库 | - |
| **行情数据** | Tushare daily / 长桥API | ❌ 本地数据库 | - |
| **公司信息** | Tushare stock_basic | ❌ 本地数据库 | - |

**🚫 绝对禁止**:
- 从`sqlite3 data/historical/historical.db`获取实时股价、估值
- 使用本地缓存的财务数据（可能过时）
- 混用本地数据和API数据

**✅ 必须执行**:
- 每次分析前，重新调用Tushare Pro接口
- 标注数据来源和获取时间
- 多源交叉验证（Tushare + 长桥API）

**必须在报告开头和结尾标注**:
```markdown
> **数据来源**: Tushare Pro + 202X-202X年最新研报  
> **报告时间**: 202X-XX-XX  
> **数据时效**: 财报截至202X年Q3，估值截至202X-XX-XX
```

### 3.3 行业新闻与调研分析获取（重要！确保搜索完整性）

**⚠️ 严格规定：个股分析必须使用所有可用新闻搜索方式，综合整理！**

**优先级只是搜索顺序，不是只用P1！所有方式都必须使用并综合。**

#### 新闻搜索方式汇总

| 优先级 | 搜索方式 | 数据源 | 获取内容 | 必须使用 |
|:---:|:---|:---|:---|:---:|
| **P1** | Exa全网搜索 | AI语义搜索 | 行业动态、政策变化、公司新闻 | ✅ |
| **P2** | 新浪财经API | 新浪财经 | 公司公告、板块新闻 | ✅ |
| **P3** | 知识星球 | 调研纪要 | 产业链调研、专家观点、订单情况 | ✅ |
| **P4** | 券商研报 | Tushare report_rc | 业绩预测、目标价、投资评级 | ✅ |
| **P5** | 华尔街见闻 | 财经媒体 | 深度分析、行业数据 | ✅（如配置）|
| **P6** | 第一财经 | 财经媒体 | 政策解读、独家数据 | ✅（如配置）|

#### 新闻搜索执行流程

```python
# Step 1: Exa全网搜索（多个关键词）
mcporter call 'exa.web_search_exa({"query": "公司名称 最新动态 订单", "numResults": 10})'
mcporter call 'exa.web_search_exa({"query": "行业关键词 涨价 产能", "numResults": 10})'

# Step 2: 新浪财经API
curl "https://feed.mix.sina.com.cn/api/roll/get?pageid=153&lid=2516&num=10&keywords=公司名称"

# Step 3: 知识星球调研
python3 tools/zsxq_fetcher.py search --keyword "公司名称/行业" --count 10

# Step 4: 券商研报（Tushare）
pro.report_rc(ts_code='300666.SZ')

# Step 5: 其他新闻源（如配置了华尔街见闻、第一财经API）
# 调用对应API
```

#### 新闻综合整理要求

1. **必须列出所有搜索来源**（P1+P2+P3+P4+...）
2. **必须标注每则新闻的来源和时间**
3. **必须交叉验证**（多个来源报道同一事件）
4. **必须区分事实与观点**
5. **必须验证与业绩数据的匹配度**

#### 新闻输出格式示例

```markdown
## 多源新闻综合整理

### 搜索方式汇总
| 方式 | 来源 | 关键发现 |
|:---:|:---|:---|
| P1 Exa | 外部AI搜索 | 公司5nm产品突破 |
| P2 新浪 | 新浪财经 | 订单增长80% |
| P3 星球 | 调研纪要 | 产能利用率95% |
| P4 研报 | Tushare | 中信目标价150元 |

### 核心新闻验证
**【技术突破】** (Exa搜索 电子工程专辑 [REDACTED_PHONE] / 知识星球验证)
• 公司5nm产品已进入台积电产线
• 验证：多个来源一致报道，与业绩数据匹配

**【订单情况】** (知识星球 [REDACTED_PHONE])
• 订单排期至2027Q1
• 验证：与财报收入增长匹配

**【券商观点】** (Tushare 中信/中金研报 2026-01)
• 中信：买入，目标价150元
• 中金：跑赢行业，目标价145元
```

#### 数据缺失说明

如果某些数据无法获取，必须明确标注:
```markdown
⚠️ **缺失数据说明**:
| 缺失项 | 原因 | 建议获取方式 |
|--------|------|--------------|
| 最新调研纪要 | 知识星球权限受限 | 券商APP/公司IR |
| 机构持仓数据 | 需付费 | Wind/东方财富 |
```

---

## 四、并购/收购分析SOP（新增！）

当分析并购事件时，增加以下模块：

### 并购分析框架

#### 1. 交易概况
| 项目 | 内容 |
|------|------|
| 收购标的 | XX公司（代码） |
| 收购比例 | XX% |
| 交易金额 | XX亿元 |
| 支付方式 | 现金/股权 |

#### 2. 协同效应五维分析（关键！）

**2.1 客户协同**
- 客户重叠度分析（具体列出重叠客户）
- 交叉销售潜力
- 客户粘性提升

**2.2 供应链协同**
- 上游整合可能性
- 下游渠道共享
- 物流/仓储整合

**2.3 技术协同**
- 技术交叉点
- 研发协同
- 专利共享

**2.4 财务协同**
- 并表后收入/利润测算
- 毛利率影响
- ROE影响

**2.5 战略协同**
- 产业链一体化
- 平台化升级
- 估值重塑

#### 3. 时间维度分析
| 维度 | 影响 | 观察指标 |
|------|------|----------|
| 短期(6-12月) | 财务拖累/整合风险 | 并表数据 |
| 中期(1-2年) | 协同显现 | 交叉销售数据 |
| 长期(3-5年) | 平台成型 | 市场份额 |

#### 4. 风险提示
- 整合风险（文化/管理）
- 财务风险（现金支出/ROE下降）
- 业绩承诺风险

---

## 五、质量检查清单（发布前必查）

### 5.1 数据检查
- [ ] 所有数值标注数据来源
- [ ] 单位转换正确（市值:万元→亿元）
- [ ] 财务数据:元→亿元
- [ ] 同行对比公司选择正确
- [ ] 研报数据筛选202X-202X年最新
- [ ] **新闻搜索完整性（P1+P2+P3+P4+...）**
- [ ] **多源新闻交叉验证**

### 5.1.1 数据真实性强制检查（新增！防止造假）

**⚠️ 绝对禁止行为（一经发现，报告作废）：**

| 造假行为 | 识别特征 | 检查方法 |
|:---|:---|:---|
| **编造PE** | 用整数（35x/40x/45x） | 必须用API查询price/eps_ttm |
| **编造市值** | 整数或规律数字 | 必须股价×股本计算 |
| **编造增速** | 整数百分比（+50%） | 必须用财报数据计算 |
| **来源模糊** | "基于公开信息" | 必须标注"长桥API [REDACTED_PHONE]" |
| **无计算过程** | 直接给结果 | 必须展示price/eps=pe |

**自查清单（强制勾选）：**
- [ ] 我没有编造任何股价数据
- [ ] 我没有编造任何PE数据（price/eps_ttm实时查询）
- [ ] 我没有编造任何市值数据
- [ ] 我没有编造任何增速数据
- [ ] 我没有编造任何总股本数据
- [ ] 所有数据都有明确的API来源和时间

**如果任何一项未勾选，立即停止报告生成！**

### 5.1.2 计算验证检查（防止单位错误）

**必须完成以下验证，否则报告无效**：

```markdown
### 计算验证清单（强制）

**基础数据确认**:
- [ ] 股价: ____ 元（来源: API/长桥/Tushare）
- [ ] 总股本: ____ 亿股 = ______ 股（来源: API）
- [ ] 当前市值: ____ × ____ = ______ 亿元 ✅

**反向验证**:
- [ ] 市值 ÷ 股本 = ______ 元（应≈股价，误差<0.01） ✅

**三情景估值验证**:
| 情景 | 目标价 | × 股本 | = 目标市值 | 空间公式 | 空间 |
|------|--------|--------|------------|----------|------|
| 保守 | ____ | × ____ | = ______ 亿 | (____-____)/____ | ____% |
| 中性 | ____ | × ____ | = ______ 亿 | (____-____)/____ | ____% |
| 乐观 | ____ | × ____ | = ______ 亿 | (____-____)/____ | ____% |

**常见错误自查**:
- [ ] 没有把"亿股"当成"万股"（10^8 vs 10^6）
- [ ] 目标市值不是随意编造（如150亿 vs 747亿）
- [ ] 每个目标价都经过"目标价×股本"验证
- [ ] 空间计算公式正确: (目标价-当前价)/当前价
```

### 5.2 内容检查
- [ ] 投资摘要前置
- [ ] 业务结构细分到产品
- [ ] 扣非净利润分析（如有投资收益）
- [ ] 三情景估值完整
- [ ] **三情景估值计算过程展示**
- [ ] **反向验证通过**
- [ ] 敏感性分析（可选）
- [ ] 操作建议具体（买入区间/止损位）

### 5.3 格式检查
- [ ] 表格使用Markdown标准格式
- [ ] 产业链图使用ASCII树状图
- [ ] ⭐标注重要性
- [ ] 🟢🟡🔴标注评级/风险
- [ ] **计算验证清单附录**

---

## 六、示例报告

详见: 
- `examples/sample_report_multisource.md` - 标准10环节示例
- `examples/report_300666_jf_v5.md` - 江丰电子完整版（含并购分析）

---

*版本: v4.2*  
*更新: [REDACTED_PHONE]*  
*核心: 10环节流程 + 详细SOP + 并购分析 + **数据真实性强制验证***