feat: 港股分析助手 skill 初始版本

- SKILL.md: skill 定义文件(触发条件、工作流、输出模板)
- scripts/analyze_stock.py: 单只股票技术面+基本面分析(含缓存+重试机制)
- scripts/portfolio_manager.py: 持仓管理与批量分析
- scripts/install_deps.sh: 依赖自动安装脚本
- references/: 港股代码映射、技术指标说明、输出模板参考

特性:
- 综合评分体系(-10~+10)给出买入/卖出/持有建议
- 10分钟本地缓存 + 指数退避重试,解决 Yahoo Finance 限频
- 批量分析时自动间隔请求,避免触发限流
This commit is contained in:
2026-03-23 20:55:07 +08:00
parent 2cad22c211
commit 7032875977
7 changed files with 1436 additions and 0 deletions

View File

@@ -0,0 +1,79 @@
# 港股代码格式与查询参考
## 代码格式
港股代码在 Yahoo Finance 中使用格式: `XXXX.HK`
- 4位数字 + `.HK` 后缀
- 例如: `0700.HK` (腾讯控股), `9988.HK` (阿里巴巴)
- 数字不足4位时需补零: `0005.HK` (汇丰), `0001.HK` (长和)
## 常用中文名称到代码映射
搜索时可能遇到用户使用中文名称,以下是常用映射:
### 互联网/科技
- 腾讯/腾讯控股 → 0700.HK
- 阿里/阿里巴巴 → 9988.HK
- 美团 → 3690.HK
- 京东 → 9618.HK
- 百度 → 9888.HK
- 小米 → 1810.HK
- 网易 → 9999.HK
- 快手 → 1024.HK
- 哔哩哔哩/B站 → 9626.HK
- 商汤 → 0020.HK
- 金山软件 → 3888.HK
### 金融
- 汇丰 → 0005.HK
- 中国平安/平安 → 2318.HK
- 友邦保险/友邦 → 1299.HK
- 港交所/香港交易所 → 0388.HK
- 中银香港 → 2388.HK
- 工商银行 → 1398.HK
- 建设银行 → 0939.HK
- 招商银行 → 3968.HK
### 消费/零售
- 安踏 → 2020.HK
- 李宁 → 2331.HK
- 海底捞 → 6862.HK
- 蒙牛 → 2319.HK
- 华润啤酒 → 0291.HK
### 新能源/汽车
- 比亚迪 → 1211.HK
- 蔚来 → 9866.HK
- 理想汽车 → 2015.HK
- 小鹏汽车 → 9868.HK
### 电信/能源
- 中国移动 → 0941.HK
- 中国联通 → 0762.HK
- 中国电信 → 0728.HK
- 中国石油 → 0857.HK
- 中国海油/中海油 → 0883.HK
### 地产
- 长和 → 0001.HK
- 新鸿基地产 → 0016.HK
- 碧桂园 → 2007.HK
- 万科 → 2202.HK
### 医药/医疗
- 药明生物 → 2269.HK
- 信达生物 → 1801.HK
- 金斯瑞 → 1548.HK
### 半导体/硬件
- 舜宇光学 → 2382.HK
- 中芯国际 → 0981.HK
- 华虹半导体 → 1347.HK
## 注意事项
- 当用户提到中文名称时,自动匹配对应代码
- 如果无法确定代码,建议用户提供具体的港股代码
- Yahoo Finance 对部分港股数据可能不完整(特别是小市值股票)
- 港股代码也可能有5位数: 如 10000+ 的港股

View File

@@ -0,0 +1,96 @@
# 分析报告输出模板
## 单只股票分析报告
```
## 📊 {公司名称} ({股票代码}) 分析报告
**当前价格**: HK$ {价格} ({涨跌幅}%)
**分析时间**: {时间}
**数据周期**: {周期}
---
### {建议图标} 操作建议: {操作建议}
**综合评分**: {评分}/10
#### 核心信号:
{逐条列出关键信号,每条一行,用 - 前缀}
---
### 📈 技术面分析
| 指标 | 数值 | 信号 |
|------|------|------|
| 均线趋势 | {均线排列} | {信号} |
| MACD | DIF:{DIF} DEA:{DEA} | {信号} |
| RSI(12) | {RSI值} | {信号} |
| KDJ | K:{K} D:{D} J:{J} | {信号} |
| 布林带 | 上:{上轨} 中:{中轨} 下:{下轨} | {信号} |
| 成交量 | 量比:{量比} | {信号} |
### 📋 基本面概况
| 指标 | 数值 |
|------|------|
| 市盈率(PE) | {PE} |
| 市净率(PB) | {PB} |
| 股息率 | {股息率}% |
| ROE | {ROE}% |
| 收入增长 | {增长}% |
| 市值 | {市值} |
| 52周区间 | {低} - {高} |
### 💡 分析总结
{2-3句话的自然语言总结包含操作建议和风险提示}
> ⚠️ 以上分析仅供参考,不构成投资建议。投资有风险,入市需谨慎。
```
## 持仓批量分析报告
```
## 📊 持仓分析报告
**分析时间**: {时间}
**持仓数量**: {数量}只
### 💰 总览
| 指标 | 数值 |
|------|------|
| 总成本 | HK$ {总成本} |
| 总市值 | HK$ {总市值} |
| 总盈亏 | HK$ {盈亏} ({盈亏比例}%) |
---
### 各持仓分析
{对每只股票输出简要分析卡片,格式如下:}
#### {序号}. {公司名称} ({股票代码}) — {操作建议图标} {操作建议}
- **当前价**: HK$ {当前价} | **买入价**: HK$ {买入价}
- **持仓数量**: {数量}股 | **盈亏**: HK$ {盈亏} ({盈亏比例}%)
- **综合评分**: {评分}/10
- **关键信号**: {1-2条最重要的信号}
---
### 💡 持仓总结
{综合所有持仓的建议,明确指出:}
- 建议加仓的股票及理由
- 建议减仓/卖出的股票及理由
- 建议继续持有的股票及理由
> ⚠️ 以上分析仅供参考,不构成投资建议。投资有风险,入市需谨慎。
```
## 模板使用说明
- 所有 `{占位符}` 根据脚本返回的 JSON 数据填充
- 操作建议图标映射:🟢🟢 强烈买入 / 🟢 买入 / 🟡 持有 / 🔴 卖出 / 🔴🔴 强烈卖出
- 数值保留合理小数位(价格 2-3 位,百分比 2 位)
- 若某项基本面数据为 null/缺失,显示为 "N/A"
- 分析总结部分使用自然语言,避免机械堆砌数据

View File

@@ -0,0 +1,118 @@
# 港股技术指标参考手册
## 支持的技术指标
### 1. 移动平均线 (MA)
| 均线 | 含义 | 用途 |
|------|------|------|
| MA5 | 5日均线周线 | 短期趋势 |
| MA10 | 10日均线半月线 | 短期趋势确认 |
| MA20 | 20日均线月线 | 中短期趋势 |
| MA60 | 60日均线季线 | 中期趋势 |
| MA120 | 120日均线半年线 | 中长期趋势 |
| MA250 | 250日均线年线 | 长期趋势/牛熊分界 |
**判读方法**:
- 多头排列短期MA > 长期MA→ 上升趋势
- 空头排列短期MA < 长期MA→ 下降趋势
- 价格站上/跌破重要均线 → 趋势转折信号
### 2. MACD (指数平滑异同移动平均线)
**参数**: DIF(12,26), DEA(9), MACD柱状图
| 信号 | 条件 | 建议 |
|------|------|------|
| 金叉 | DIF上穿DEA | 买入信号 |
| 死叉 | DIF下穿DEA | 卖出信号 |
| 零轴上方金叉 | DIF>0且金叉 | 强烈买入 |
| 零轴下方死叉 | DIF<0且死叉 | 强烈卖出 |
| 顶背离 | 价格新高但MACD未新高 | 见顶风险 |
| 底背离 | 价格新低但MACD未新低 | 见底信号 |
### 3. RSI (相对强弱指数)
**参数**: RSI6短期、RSI12中期、RSI24长期
| 区间 | 状态 | 建议 |
|------|------|------|
| > 80 | 严重超买 | 强烈卖出信号 |
| 70-80 | 超买 | 注意风险,准备减仓 |
| 30-70 | 正常 | 中性 |
| 20-30 | 超卖 | 关注买入机会 |
| < 20 | 严重超卖 | 强烈买入信号 |
### 4. KDJ (随机指标)
**参数**: K(9,3,3), D(3), J=3K-2D
| 信号 | 条件 | 建议 |
|------|------|------|
| K金叉D | K值上穿D值 | 买入信号 |
| K死叉D | K值下穿D值 | 卖出信号 |
| J > 100 | J值过高 | 超买区域 |
| J < 0 | J值过低 | 超卖区域 |
| 低位金叉 | K<20时金叉 | 强烈买入 |
| 高位死叉 | K>80时死叉 | 强烈卖出 |
### 5. 布林带 (Bollinger Bands)
**参数**: 中轨=MA20, 上/下轨=中轨±2倍标准差
| 信号 | 条件 | 建议 |
|------|------|------|
| 突破上轨 | 价格 > 上轨 | 超买/强势突破 |
| 突破下轨 | 价格 < 下轨 | 超卖/弱势突破 |
| 带宽收窄 | 上下轨收窄 | 即将变盘 |
| 中轨上方 | 价格在中轨以上 | 偏强运行 |
| 中轨下方 | 价格在中轨以下 | 偏弱运行 |
### 6. 成交量分析
| 信号 | 条件 | 建议 |
|------|------|------|
| 放量上涨 | 量比>2且价涨 | 强势上攻 |
| 放量下跌 | 量比>2且价跌 | 恐慌出逃 |
| 缩量上涨 | 量比<0.5且价涨 | 动力不足 |
| 缩量下跌 | 量比<0.5且价跌 | 抛压减轻 |
## 综合评分体系
最终评分范围约 -10 到 +10映射为
| 评分区间 | 操作建议 |
|----------|----------|
| ≥ 5 | 🟢🟢 强烈买入 |
| 2 ~ 4 | 🟢 买入 |
| -1 ~ 1 | 🟡 持有/观望 |
| -4 ~ -2 | 🔴 卖出 |
| ≤ -5 | 🔴🔴 强烈卖出 |
## 常见港股代码
| 代码 | 名称 | 行业 |
|------|------|------|
| 0700.HK | 腾讯控股 | 互联网 |
| 9988.HK | 阿里巴巴 | 互联网/电商 |
| 3690.HK | 美团 | 互联网/本地生活 |
| 9618.HK | 京东集团 | 电商 |
| 9888.HK | 百度集团 | 搜索/AI |
| 1810.HK | 小米集团 | 消费电子 |
| 0005.HK | 汇丰控股 | 银行 |
| 0941.HK | 中国移动 | 电信 |
| 2318.HK | 中国平安 | 保险 |
| 0388.HK | 香港交易所 | 金融基础设施 |
| 1211.HK | 比亚迪 | 新能源汽车 |
| 2020.HK | 安踏体育 | 体育用品 |
| 9626.HK | 哔哩哔哩 | 视频平台 |
| 1024.HK | 快手 | 短视频 |
| 2382.HK | 舜宇光学 | 光学器件 |
## 重要提醒
- 技术分析仅供参考,不构成投资建议
- 港股交易时间: 9:30-12:00, 13:00-16:00 (港交所时间)
- 港股没有涨跌停限制,波动可能较大
- 部分港股流动性不足,需注意成交量
- 建议结合基本面和市场环境综合判断