# Chan Stock Analysis

> 缠论+基本面+财报+估值综合股票分析技能，生成专业投研报告（含 PDF）。 Use when: 用户提供股票代码，要求进行深度股票分析、缠论技术分析、基本面研究、财报解读、估值分析、综合投研报告。 NOT for: 实时行情播报、简单股价查询、非股票类金融分析。 触发词：缠论分析、股票分析报告、技术面+基本面、综合研究、投研报告、深度分析、估值分析、财报分析、买卖点分析

- Skill: `leoyeai-openclaw-master-skills/chan-stock-analysis` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add leoyeai-openclaw-master-skills/chan-stock-analysis`
- Raw SKILL.md: https://api.skillmd.com/api/skills/leoyeai-openclaw-master-skills/chan-stock-analysis/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: LeoYeAI (https://skillmd.com/u/leoyeai-openclaw-master-skills)
- Updated: 2026-09-21
- Page: https://skillmd.com/skills/leoyeai-openclaw-master-skills/chan-stock-analysis

---


# 📈 缠论+基本面+估值 综合股票分析技能

> 输入股票代码，输出一份涵盖缠论技术面、基本面、估值面的专业投研报告，并自动生成排版精美的 PDF 文件。

---

## 使用场景

**✅ Use when（适用）**

- 用户提供股票代码（如 `600519`、`贵州茅台`、`AAPL`），要求进行综合分析
- 要求生成完整投研报告、买卖点判断、目标价预测
- 需要缠论结构分析（中枢、笔、背驰、买卖点）
- 要求基本面财报解读、估值对比
- 触发词：缠论分析、股票分析报告、投研报告、技术面+基本面、深度分析、估值分析、买卖点分析、财报解读

**❌ NOT for（不适用）**

- 实时股价查询（只看价格，不做分析）
- 简单涨跌预测（无深度分析需求）
- 非 A 股/港股/美股标的
- 基金、债券、期货等非股票品种

---

## 快速开始

```
用户：分析一下 600519
↓
技能自动执行：
1. 解析股票代码 → 贵州茅台 600519.SH
2. 实时获取行情、财务、资金数据
3. 缠论结构 + 多指标共振技术分析
4. 基本面盈利/成长/健康度分析
5. PE/PB/DCF 多维估值
6. 输出 Markdown 投研报告
7. 自动生成专业排版 PDF
```

---

## 详细用法

### 分析流程（严格按阶段执行）

#### 🔴 阶段0：解析股票代码

接收用户输入的股票代码，自动处理格式：
- 输入 `600519` 或 `贵州茅台` → 转换为 `600519.SH`
- 输入 `000001` 或 `平安银行` → 转换为 `000001.SZ`
- 输入 `300750` → 转换为 `300750.SZ`（创业板）
- 输入 `688xxx` → 转换为 `688xxx.SH`（科创板）
- 支持港股（`.HK`）和美股（`.US`）

调用 `stock_basic` 接口确认公司名称、行业、上市交易所。

---

#### 🔴 阶段1：实时数据采集

**并行获取以下数据（全部通过 `finance-data-retrieval` skill 调用）：**

**1.1 行情数据**
```
调用: daily(ts_code=XX, start_date=近250个交易日)  → 日线OHLCV
调用: weekly(ts_code=XX, start_date=近104周)       → 周线数据
调用: daily_basic(ts_code=XX, trade_date=最新)     → PE(TTM)、PB、市值、换手率、量比
```

**1.2 技术指标数据（优先用接口，次选自行计算）**
```
调用: stk_factor(ts_code=XX, start_date=近250日)  → 预计算技术指标（若接口支持）
  包含：MA5/MA10/MA20/MA60、MACD系列、RSI、KDJ、BOLL、ATR、OBV

若 stk_factor 不可用，则基于 daily 数据自行计算：
  - 均线：MA5 / MA10 / MA20 / MA60 / MA120 / MA250
  - 动量：MACD(12,26,9) → DIF、DEA、柱
  - 振荡：RSI(6/12/24)、KDJ(9,3,3)、CCI(14)、WR(14)
  - 波动率：BOLL(20,2)、ATR(14)
  - 量价：OBV、BIAS(20)、BIAS(60)
  - 趋势强度：ADX/DMI(14)
```

**1.3 资金流向数据**
```
调用: moneyflow(ts_code=XX, start_date=近20个交易日)  → 主力大单净流入
调用: moneyflow_hsgt(start_date=近10日)              → 北向资金（如为沪深300成分股）
```

**1.4 财务数据（确定最新可获取报告期）**

根据当前日期动态判断：
- A股年报披露截止4月30日；三季报截止10月31日；中报截止8月31日；一季报截止4月30日
- 优先使用已披露的最新期次

```
调用: income(ts_code=XX, period=最新报告期)        → 利润表
调用: balancesheet(ts_code=XX, period=最新报告期)   → 资产负债表
调用: cashflow(ts_code=XX, period=最新报告期)       → 现金流量表
调用: fina_indicator(ts_code=XX, period=最新报告期) → 财务指标（ROE等）
获取近4个报告期数据用于趋势分析
```

**1.5 最新公告与新闻**
```
WebSearch: "{公司名} 最新公告 {当前年月}"
WebSearch: "{公司名} 业绩预告 年报"
WebSearch: "{公司名} 股票 最新消息"
```

---

#### 🔴 阶段2：技术分析（缠论主体 + 多指标共振）

**参考文件**：`references/chan-theory.md`

##### 2.1 缠论结构分析（主框架）

**K线处理与分型识别**（基于日线250根 + 周线104根）：
1. 识别包含关系并合并K线
2. 标注顶分型（▼）和底分型（▲）
3. 连接笔：描述近期主要笔的方向和幅度

**中枢识别（日线级别）**：
- 识别近期3~5个主要中枢，标注区间 [ZD, ZG]
- 分析中枢序列方向，判断大趋势（上涨/下跌/震荡）
- 标注当前价格相对中枢的位置（中枢内/突破中枢上方/跌破中枢下方）

**周线级别验证**：
- 用周线判断更大级别趋势方向
- 确认日线操作方向与周线趋势一致

##### 2.2 MACD背驰分析（缠论核心辅助）
基于MACD（12,26,9）——日线+周线双周期：
- 识别近期是否存在趋势背驰（红柱/绿柱面积收缩）
- 判断背驰级别（日线背驰 vs 周线背驰，级别越高越重要）
- 标注背驰信号的可信度（强/中/弱）

##### 2.3 趋势追踪指标组（A类）

**均线系统（MA5/10/20/60/120/250）**：
- 判断多头/空头/均线粘合排列
- 金叉/死叉信号及关键均线的支撑压力
- 年线（MA250）：牛熊分界参考
- 半年线（MA120）：中长期趋势判断

**一目均衡表（Ichimoku）**：
- 判断价格是否在云层上方（多头）/下方（空头）
- 转换线与基准线的TK交叉信号
- 云层厚薄判断支撑压力强度

**ADX/DMI**：
- ADX数值：判断当前是趋势市（>25）还是震荡市（<20）
- +DI/-DI方向：当前多空力量对比
- 重要：ADX<20时缠论震荡策略，ADX>25时缠论趋势策略

##### 2.4 动量振荡指标组（B类）—— 超买超卖共振

**RSI（6/12/24三周期）**：
- 三周期共振超买（均>70）或超卖（均<30）信号强度更高
- 重点关注RSI顶背离/底背离（价格新高低而RSI未跟）
- RSI50分水岭：站上看多，跌破看空

**KDJ（9,3,3）**：
- 高位（>80）死叉卖出，低位（<20）金叉买入
- J值极端值（>100或<0）作为超买超卖的敏感预警
- KDJ底背离与缠论买点共振：信号强度+2

**CCI（14日）**：
- 从极度超买区（>200）回落过+100：卖出确认
- 从极度超卖区（<-200）回升过-100：买入确认
- 与RSI/KDJ形成三重超卖共振时，买入信号极强

**WR威廉指标（14日）**：
- 进入超卖区（<-80）并开始回升：配合KDJ确认底部

##### 2.5 波动率指标组（C类）—— 空间与风险

**布林带（BOLL，MA20±2σ）**：
- 布林带宽度变化：收口→突破方向，开口→趋势延续
- 价格触及下轨+底分型：强力买入共振
- 价格触及上轨+顶分型：强力卖出共振
- 价格突破上轨"走轨"：强势追多机会

**ATR（14日）**：
- 计算动态止损位：止损 = 买入价 - 2×ATR
- 计算目标位：目标 = 买入价 + 3×ATR（风险收益比1:1.5）
- ATR扩张信号：波动率提升，趋势启动确认

**乖离率（BIAS20/BIAS60）**：
- BIAS20 > +10%：短期超买预警
- BIAS20 < -10%：短期超卖，关注买入
- BIAS60 < -20%：中期严重低估，可关注长线布局

##### 2.6 量价关系指标组（D类）—— 量是价的先行

**OBV能量潮**：
- OBV持续上升/下降：资金流向趋势确认
- OBV背离（价格新高而OBV未新高）：趋势弱化预警

**量比 + 换手率**：
- 底部区域量比突然放大（>2.5）：主力吸筹信号
- 高位持续高换手（>10%）：出货嫌疑
- 缩量下跌（量比<0.5）：抛压减弱，底部可能临近

**VWAP**：
- 价格回踩VWAP获支撑：机构成本线，买入共振
- 价格跌破VWAP且无法收复：弱势信号

**MFI资金流量指标**：
- MFI<20超卖 + RSI<30：双重超卖共振，强烈买入信号

##### 2.7 资金面分析（E类）

**主力大单净流入**（moneyflow接口）：
- 近5日主力净流入/流出趋势
- 连续净流入>3日：主力在建仓
- 价格上涨+大单净流出：主力出货，警惕

**北向资金**（沪深300成分股适用）：
- 连续净买入：外资认可
- 大幅净流出：外资撤离压力

##### 2.8 多指标共振评分（买入方向）

按照 `references/chan-theory.md` 第四节"多指标共振评分系统"，对以下14个维度逐一打分：

| 类别 | 检查项 | 结论 | 得分 |
|------|--------|------|------|
| 缠论结构 | 日线买卖点位置 | ? | 0~3 |
| 缠论结构 | MACD背驰 | ? | 0~2 |
| 趋势指标 | 均线多头/空头排列 | ? | 0~1 |
| 趋势指标 | 一目云位置 | ? | 0~1 |
| 动量指标 | RSI底背离/超卖 | ? | 0~2 |
| 动量指标 | KDJ低位金叉 | ? | 0~2 |
| 动量指标 | CCI从-200回升 | ? | 0~1 |
| 波动率 | 布林下轨+底分型 | ? | 0~2 |
| 波动率 | ATR动态止损合理 | ? | 0~1 |
| 量价 | OBV底背离 | ? | 0~2 |
| 量价 | 底部放量（量比>2） | ? | 0~2 |
| 量价 | VWAP支撑 | ? | 0~1 |
| 资金 | 主力净流入 | ? | 0~2 |
| 趋势强度 | ADX>25且+DI>-DI | ? | 0~1 |

**总分及操作建议**：
- ≥15分 → 重仓；12~14分 → 中仓；9~11分 → 轻仓；<9分 → 观望

##### 2.9 技术分析总结输出

```
📊 缠论技术面评分：X/10
当前趋势（日线）：[上涨/下跌/震荡]
当前趋势（周线）：[上涨/下跌/震荡]
当前结构：[一买/二买/三买/一卖/二卖/三卖/中枢震荡]
均线状态：[多头排列/空头排列/均线粘合]
动量状态：RSI=XX | KDJ金叉/死叉 | CCI=XX
波动率：BOLL位置=[上轨/中轨/下轨] | ATR=XX
量价：OBV趋势=[上升/下降/背离] | 近日量比=X.X
资金：主力5日净流入=[+XX亿/−XX亿]
多指标共振评分：XX/23分
关键支撑位：XX.XX 元（来源：XX）
关键压力位：XX.XX 元（来源：XX）
ATR动态止损：XX.XX 元
技术信号：[买入/看多/中性/看空/卖出]
```

---

#### 🔴 阶段3：基本面分析

**参考文件**：`references/financial-analysis.md`

##### 3.1 盈利能力
计算并展示（最新3~4个报告期趋势）：
- 毛利率、净利率趋势
- ROE（及杜邦分解）
- 扣非净利润增速
- 核心结论：盈利能力处于行业什么水平？是否在改善？

##### 3.2 成长能力
- 营收/净利润3年CAGR
- 最新季度同比/环比增速
- 研发投入（若适用）
- 核心结论：是否处于成长期？成长质量如何？

##### 3.3 财务健康度
- 资产负债率、流动比率、速动比率
- 经营现金流 / 净利润比率（盈利含金量）
- 自由现金流（FCF）
- 红旗信号检查（参见`references/financial-analysis.md`第七节）
- 核心结论：财务是否稳健？有无风险信号？

##### 3.4 基本面总结输出
```
📈 基本面评分：X/10
盈利能力：[优秀/良好/一般/较差]
成长性：[高成长/稳定成长/成长放缓/衰退]
财务健康：[稳健/良好/需关注/风险较高]
核心优势：...
核心风险：...
```

---

#### 🔴 阶段4：估值分析

**参考文件**：`references/valuation.md`

##### 4.1 相对估值
- 当前 P/E(TTM)、P/B、EV/EBITDA
- 历史估值百分位（近3年历史区间）
- 同行业可比公司估值对比（调用同行业数据）
- 得出相对估值结论：低估/合理/高估

##### 4.2 PEG分析（成长股）
- PEG = P/E(TTM) / 净利润增速
- PEG < 1 低估，1~2 合理，>2 高估

##### 4.3 简化DCF估值
基于过去3年FCF均值和预测增速，计算合理价值区间：
- 乐观/基准/悲观三种情景
- 给出每股内在价值估算区间

##### 4.4 估值总结输出
```
💰 估值评分：X/10
当前PE(TTM)：XX× （历史分位数：XX%）
当前PB：XX×
EV/EBITDA：XX×
相对同行：[低估XX%/合理/高估XX%]
DCF内在价值区间：XX.XX ~ XX.XX 元（当前价格：XX.XX）
估值结论：[严重低估/低估/合理/高估/严重高估]
```

---

#### 🔴 阶段5：综合研究报告输出

**输出顺序**：先生成 Markdown 报告文件（.md），再按阶段6流程自动生成 PDF。

输出完整Markdown格式报告，结构如下：

> **重要规范**：报告第一章必须是「📋 总体结论与投资建议」，在所有详细章节之前，作为全篇摘要。读者可只看此章节即获得核心判断，后续章节为支撑论据。

```markdown
# [公司名称]（股票代码）综合投研报告
**报告日期**：YYYY年MM月DD日
**分析基准价格**：XX.XX 元（XX月XX日收盘价）
**当前市值**：XXX 亿元

---

## 📋 总体结论与投资建议

> 本节为全篇核心摘要，其余章节为详细支撑论据，建议先阅读本节再按需查阅后续内容。

### 综合评级：[简明评级描述，如"谨慎观望，等待右侧信号确认后逢低分批布局"]

### 【一句话结论】
[100字以内的核心判断，说明技术面现状 + 基本面优势 + 操作建议]

### 【总体情况五维评分】
| 维度 | 评分（星级/5） | 核心结论 |
|------|--------------|---------| 
| 技术面 | ★★☆☆☆ 2/5 | [当前技术信号概要] |
| 基本面 | ★★★★☆ 4/5 | [财务健康状况概要] |
| 估值面 | ★★★☆☆ 3/5 | [PE/PB所处历史区间] |
| 资金面 | ★★☆☆☆ 2/5 | [资金流向及机构持仓] |
| 情绪面 | ★★★☆☆ 3/5 | [市场情绪与主题热度] |
| **综合共振** | **X / 100** | [当前整体判断] |

### 【后续操作建议】
**短期（0~2周）**：[具体操作指导，含关键支撑/压力位和止损线]
**中期（1~3个月）**：[目标价区间与加仓条件]
**长期（6个月以上）**：[战略性配置建议及仓位比例]

### 【主要风险提示】
| 风险类型 | 具体内容 |
|---------|---------| 
| 下行风险 | [跌破关键支撑后的下探目标] |
| 宏观风险 | [宏观/政策层面风险] |
| 行业风险 | [行业竞争/政策层面风险] |
| 估值风险 | [估值层面风险] |

---

## 一、公司概况
## 二、技术分析（缠论 + 多指标共振）
## 三、基本面分析
## 四、估值分析
## 五、综合结论与操作建议
## 六、数据来源

⚠️ **免责声明**：本报告仅供参考，不构成投资建议。投资有风险，决策需谨慎。
```

---

#### 🔴 阶段6：PDF 报告生成

**在 Markdown 报告生成完成后，立即执行以下步骤，将报告转换为专业排版 PDF。**

**6.1 环境检查与依赖安装**
```python
import importlib, subprocess, sys
try:
    importlib.import_module("reportlab")
except ImportError:
    subprocess.check_call([sys.executable, "-m", "pip", "install", "reportlab", "-q"])
```

**6.2 中文字体检测**（按优先级查找）
1. `C:\Windows\Fonts\msyh.ttc`（微软雅黑，Windows 首选）
2. `C:\Windows\Fonts\simhei.ttf`（黑体，Windows 备选）
3. `/System/Library/Fonts/PingFang.ttc`（macOS 苹方）
4. `/usr/share/fonts/opentype/noto/NotoSansCJK-Regular.ttc`（Linux）

**6.3 PDF 输出规范**
- 文件命名：`{公司名称}投研报告_{YYYYMMDD}.pdf`
- 保存路径：与 Markdown 报告同目录
- 页面规格：A4，左右边距 20mm，上下边距 20mm
- 必须包含：封面摘要表、页眉（公司名+日期）、页脚（页码+免责声明）、多级标题、数据表格、风险警告段落

**颜色方案**：
- 主色：`#003087`（深蓝）| 辅色：`#1a4a8a`（中蓝）
- 警告：`#cc4400`（红棕）| 风险表头：`#8b1a1a`（深红）| 买入表头：`#1a6b3a`（深绿）

**6.4 生成脚本结构**（写入独立 `.py` 文件执行，避免命令行字符限制）
```python
# 文件名：generate_pdf_report.py
# 执行：python generate_pdf_report.py

# 核心模块：
# register_fonts()  → 注册中文字体
# build_styles()    → 定义全套段落样式
# table_style()     → 返回统一表格 TableStyle
# build_story()     → 按章节构建 story 列表
# header_footer()   → 页眉页脚回调
# main()            → 组装并输出 PDF
```

---

## 配置选项

| 配置项 | 说明 | 默认值 |
|--------|------|--------|
| 日线K线数量 | 用于缠论分析的历史日线数量 | 250根 |
| 周线K线数量 | 用于周线趋势验证 | 104根 |
| 财报期数 | 用于趋势分析的历史报告期数 | 近4期 |
| PDF输出 | 是否自动生成PDF报告 | 是 |

---

## 错误处理

- **接口调用失败**：明确告知用户哪些数据无法获取，不得凭空捏造数据
- **K线数量不足**（< 100根）：降级分析，如实说明局限性
- **财报未披露**：使用最近已披露的报告期，并在报告中注明
- **PDF生成失败**：提示用户安装 `reportlab`（`pip install reportlab`）

---

## 安全注意

⚠️ **风险提示**

- 缠论分析基于程序化规则，在复杂走势中存在主观性，结论仅供参考
- 所有分析数据基于历史行情，不代表未来表现
- 本技能输出内容**不构成投资建议**，投资者需自行承担投资风险
- 不在分析结果中硬编码 API Key 或任何敏感信息

**隐私保护**

- 所有股票数据通过官方公开接口获取
- 不存储用户查询的股票代码或分析结果到外部服务

---

## 相关文件

- `references/chan-theory.md` - 缠论理论完整参考，含中枢/笔/背驰/买卖点规则及多指标共振评分系统
- `references/financial-analysis.md` - 财务分析框架，含盈利/成长/健康度分析方法及红旗信号检查清单
- `references/valuation.md` - 估值分析方法，含PE/PB/EV/DCF/PEG多维估值模型

---

## 依赖说明

本技能依赖以下外部技能，需提前安装：

- **`finance-data-retrieval`**（必需）：提供 Tushare 行情、财务、资金数据接口
  - 需要配置 Tushare Token（`TUSHARE_TOKEN` 环境变量）

**Python 依赖**（运行时自动安装）：
- `reportlab`：PDF 生成库

