pharma-daily-report
- Repo stars 0
- Author updated Aug 24, 2026, 03:33 PM
- Author repo claude-code-skills
医药行业日报
从新浪财经免费公开接口抓取 A 股医药板块实时行情,分析后通过飞书发送日报。
这个 skill 做什么
- 抓取 20 只核心医药股实时数据(新浪
hq.sinajs.cn,GBK 编码,免费无需认证) - 计算赛道排名、涨跌榜 TOP 3、资金流向估算
- 生成飞书富文本日报(含涨跌颜色、赛道奖牌)
- 通过 lark-cli 发送到指定飞书对话
- 在原始数据目录保存当日快照 JSON
能力边界
能做的:
- A 股医药行业 20 只核心标的的实时快照
- 7 大细分赛道对比(创新药 / CXO / 医疗器械 / 中药 / 综合医药 / 医疗服务 / 生物制品)
- 飞书 markdown 美化的日报输出
不能做的:
- 不提供投资建议(日报自带免责声明)
- 不抓取付费/Paywall 内容(只用新浪免费接口)
- 不保证数据无误(来源标注为新浪,交易决策请多方交叉验证)
前置条件
- Python 3.8+(只用 stdlib 的
urllib,无需 pip 装任何包) - lark-cli 已安装且已登录飞书账号
- 能访问
hq.sinajs.cn
如果用户没装 lark-cli:
npm install -g @larksuite/cli
lark-cli auth login --recommend
注意:飞书是国内服务,lark-cli 命令行前必须加 LARK_CLI_NO_PROXY=1。
使用流程
Step 1:确认参数
问用户确认:
- 飞书 profile:用哪个飞书账号发?如果不清楚自己有哪些 profile,运行
lark-cli profile list查看(详见references/feishu_profiles.md) - 飞书对话:发到哪个群/人?用户如果不清楚自己的 chat_id,帮他查:
发给自己就用 Feishu Assistant 对话。发给群就搜群名。LARK_CLI_NO_PROXY=1 lark-cli im +chat-search --query " " --page-size 20 - 股票池:默认用 20 只医药核心标的(见
references/stock_pool.md)。用户可以说"只看创新药"或"加上某某股票"来定制。
Step 2:运行数据管线
直接执行 scripts/daily_pipeline.py:
python3 scripts/daily_pipeline.py \
--feishu-profile <你的飞书profile名> \
--feishu-chat-id <你的飞书chat_id>
脚本一气呵成:抓数据 → 分析 → 生成日报 → 发飞书 → 存快照。
Step 3:向用户汇报结果
告诉用户关键数据:
- 几只上涨 / 几只下跌 / 平均涨跌幅
- 最强赛道和最弱赛道
- 领涨和领跌 TOP 3
- 飞书是否发送成功
数据管线详解
新浪财经实时行情接口
http://hq.sinajs.cn/list=sh600276,sz300122,...
返回 GBK 编码文本,每行格式:
var hq_str_sh600276="股票名称,今开,昨收,现价,最高,最低,...,成交金额,...,日期,时间"
32 个逗号分隔字段。关键字段(从 0 开始数):
| 位置 | 含义 | 示例 |
|---|---|---|
| 0 | 股票名称 | 恒瑞医药 |
| 2 | 昨收 | 45.60 |
| 3 | 现价 | 46.10 |
| 4 | 今日最高 | 46.50 |
| 5 | 今日最低 | 45.30 |
| 9 | 成交金额(元) | 850000000 |
代码前缀规则:6 开头 = sh,其他 = sz。
完整字段速查见 references/sina_api.md。
赛道分类
20 只股票分为 7 个赛道(见 references/stock_pool.md),分析时按赛道聚合涨跌幅和成交额。
资金流向估算
新浪免费接口不提供买卖方向数据。脚本用"涨的股票的成交额 - 跌的股票的成交额"粗略估算净流向,报告中标注为"估算"。
常见问题
股票名称出现空格
新浪返回的个别名称带空格(如"新 和 成"),脚本内置归一化。
飞书消息太长
飞书 markdown 消息有约 4096 字节限制。超长自动截断并标注。
非交易时段
交易时间 9:30-15:00 外,新浪返回上一个收盘价,涨跌幅接近 0。报告仍会显示,但数据时间可以判断是否实时。
网络问题
新浪不可达时脚本报错退出,不使用缓存(金融数据宁可没有也不能是旧的)。
Next Step: 定时发送
日报做好后,用户可能想每天自动发送。建议:
日报测试发送成功!要不要设置每天早上 9:03 自动发到飞书?
A) 设工作日 9:03 — 每个交易日开盘前收到(推荐) B) 设每天 9:03 — 周末也发(数据不动但能看到) C) 暂时不设,手动跑就行
- Fluxly category
- AI
- Author-declared agents
- No explicit declaration found; this is not inferred or tested compatibility
- Static check
- 88 / 100 · heuristic scan, not runtime safety proof
- Author / version / license
- @daymade · no license declared
- Fluxly token estimate
- Lean
- Fluxly setup estimate
- Plug-and-play
- External API key
- No requirement detected
- Detected OS requirements
- macOS · Linux · Windows
- Runtime requirements
- Python >=3.8
- Detected file/system behavior
-
- Read-only
- Detected network behavior
- Local-only
- Install commands
- None (reference only)
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。
The current SKILL.md does not define a fixed output example. 问用户确认: 飞书 profile:用哪个飞书账号发?如果不清楚自己有哪些 profile,运行 lark-cli profile list 查看(详见 references/feishuprofiles.md) 飞书对话:发到哪个群/人?用户如果不清楚自己的 chatid,帮他查:
直接执行 scripts/dailypipeline.py: 脚本一气呵成:抓数据 → 分析 → 生成日报 → 发飞书 → 存快照。
告诉用户关键数据: 几只上涨 / 几只下跌 / 平均涨跌幅 最强赛道和最弱赛道
# 医药行业日报
从新浪财经免费公开接口抓取 A 股医药板块实时行情,分析后通过飞书发送日报。
## 这个 skill 做什么
1. 抓取 20 只核心医药股实时数据(新浪 `hq.sinajs.cn`,GBK 编码,免费无需认证)
2. 计算赛道排名、涨跌榜 TOP 3、资金流向估算
3. 生成飞书富文本日报(含涨跌颜色、赛道奖牌)
4. 通过 lark-cli 发送到指定飞书对话
5. 在原始数据目录保存当日快照 JSON
## 能力边界
**能做的:**
- A 股医药行业 20 只核心标的的实时快照
- 7 大细分赛道对比(创新药 / CXO / 医疗器械 / 中药 / 综合医药 / 医疗服务 / 生物制品)
- 飞书 markdown 美化的日报输出
**不能做的:**
- 不提供投资建议(日报自带免责声明)
- 不抓取付费/Paywall 内容(只用新浪免费接口)
- 不保证数据无误(来源标注为新浪,交易决策请多方交叉验证)
## 前置条件
- Python 3.8+(只用 stdlib 的 `urllib`,无需 pip 装任何包)
- lark-cli 已安装且已登录飞书账号
- 能访问 `hq.sinajs.cn`
如果用户没装 lark-cli:
```bash
npm install -g @larksuite/cli
lark-cli auth login --recommend
```
注意:飞书是国内服务,lark-cli 命令行前必须加 `LARK_CLI_NO_PROXY=1`。
## 使用流程
### Step 1:确认参数
问用户确认:
- **飞书 profile**:用哪个飞书账号发?如果不清楚自己有哪些 profile,运行 `lark-cli profile list` 查看(详见 `references/feishu_profiles.md`)
- **飞书对话**:发到哪个群/人?用户如果不清楚自己的 chat_id,帮他查:
```bash
LARK_CLI_NO_PROXY=1 lark-cli im +chat-search --query " " --page-size 20
```
发给自己就用 Feishu Assistant 对话。发给群就搜群名。
- **股票池**:默认用 20 只医药核心标的(见 `references/stock_pool.md`)。用户可以说"只看创新药"或"加上某某股票"来定制。
### Step 2:运行数据管线
直接执行 `scripts/daily_pipeline.py`:
```bash
python3 scripts/daily_pipeline.py \
--feishu-profile <你的飞书profile名> \
--feishu-chat-id <你的飞书chat_id>
```
脚本一气呵成:抓数据 → 分析 → 生成日报 → 发飞书 → 存快照。
### Step 3:向用户汇报结果
告诉用户关键数据:
- 几只上涨 / 几只下跌 / 平均涨跌幅
- 最强赛道和最弱赛道
- 领涨和领跌 TOP 3
- 飞书是否发送成功
## 数据管线详解
### 新浪财经实时行情接口
```
http://hq.sinajs.cn/list=sh600276,sz300122,...
```
返回 GBK 编码文本,每行格式:
```
var hq_str_sh600276="股票名称,今开,昨收,现价,最高,最低,...,成交金额,...,日期,时间"
```
32 个逗号分隔字段。关键字段(从 0 开始数):
| 位置 | 含义 | 示例 |
|------|------|------|
| 0 | 股票名称 | 恒瑞医药 |
| 2 | 昨收 | 45.60 |
| 3 | 现价 | 46.10 |
| 4 | 今日最高 | 46.50 |
| 5 | 今日最低 | 45.30 |
| 9 | 成交金额(元) | 850000000 |
**代码前缀规则**:6 开头 = `sh`,其他 = `sz`。
… Author text anchors workflow facts; Fluxly only indexes current sections, terms, files, and commands.
sections -> 这个 skill 做什么 → 能力边界 → 前置条件 → 使用流程 → Step 1:确认参数 → Step 2:运行数据管线
terms -> 能做的 · 不能做的 · 飞书 profile · 飞书对话 · 股票池 · 代码前缀规则
files/cmd -> hq.sinajs.cn · urllib · LARKCLINOPROXY=1 · lark-cli profile list · references/feishuprofiles.md · references/stockpool.md · scripts/dailypipeline.py · references/sinaapi.md
body sha256 -> 18703a6fa4e8
Decide Fit First
Design Intent
How To Use It
Boundaries And Review