← 返回
未分类

Cn Stock Volume

获取中国股市四市(沪市、深市、创业板、北交所)指定日期的成交金额、增缩量及比例,并输出四市合计总结。支持查询三市(沪市/深市/北交所)上涨/下跌家数。**首选 Browser 方案**(东方财富网网页版),备用 API 方案(东方财富/新浪/腾讯)。
获取四市(沪市、深市、创业板、北交所)指定日期的成交额、增减量及比例并输出合计;支持查询沪市、深市、北交所的涨跌家数。首选浏览器方案(东方财富网),备用 API 方案(东方财富/新浪/腾讯)。
shinelp100
未分类 clawhub v3.1.0 1 版本 99756.7 Key: 无需
★ 0
Stars
📥 410
下载
💾 0
安装
1
版本
#latest

概述

cn-stock-volume v3.0

获取中国 A 股市场核心数据:三大指数点位及涨跌幅成交量变化涨跌家数比

📊 数据指标

指标获取方式说明示例
----------------------------
上证指数🤖 自动点位 + 涨跌幅3957.05 点,-1.24%
深证成指🤖 自动点位 + 涨跌幅13866.20 点,-0.25%
创业板指🤖 自动点位 + 涨跌幅3352.10 点,+1.30%
上涨家数🤖 自动A 股上涨数量1234 家
下跌家数🤖 自动A 股下跌数量3456 家
今日量能✍️ 手动四市总成交金额待补充
昨日量能✍️ 手动前一交易日成交金额待补充

🚀 快速开始

步骤 1:获取自动数据

# 查询今日(自动获取指数 + 涨跌家数)
python3 scripts/generate_report.py

# 查询指定日期
python3 scripts/generate_report.py 2026-03-22

# 强制刷新(忽略缓存)
python3 scripts/generate_report.py --force

步骤 2:补充成交量数据

# 补充今日和昨日成交量(单位:万亿)
python3 scripts/补数据.py 2026-03-22 --today 1.23 --previous 1.30

# 查看当前手动数据
python3 scripts/补数据.py 2026-03-22 --show

# 清除手动数据
python3 scripts/补数据.py 2026-03-22 --clear

步骤 3:重新生成报告

# 重新生成(使用补充的成交量数据)
python3 scripts/generate_report.py 2026-03-22

📁 输出文件

Markdown 报告(人类阅读)

  • 位置: ~/Desktop/A 股每日复盘/stock-report-YYYY-MM-DD.md
  • 用途: 直接阅读、分享到群聊

JSON 数据(程序调用)

  • 位置: ~/Desktop/A 股每日复盘/data-YYYY-MM-DD.json
  • 用途: 其他程序/脚本调用

🏗️ 目录结构

cn-stock-volume/
├── SKILL.md              # 本文件
├── DESIGN.md             # 详细设计文档
├── scripts/
│   ├── fetch_data.py     # 数据获取核心
│   ├── generate_report.py # 报告生成
│   └── 补数据.py          # 手动补充数据
├── cache/                # 缓存(TTL=24h)
│   └── YYYY-MM-DD.json
├── manual/               # 手动补充数据
│   └── YYYY-MM-DD.json
└── output/               # 输出文件
    ├── report.md
    └── data.json

📋 数据源

同花顺问财(浏览器自动化)

数据查询语句URL
---------------------
上证指数上证指数问财
深证成指深证成指问财
创业板指创业板指问财
上涨家数A 股上涨数量问财
下跌家数A 股下跌数量问财

🔧 特性

缓存机制

  • TTL: 24 小时
  • 位置: cache/YYYY-MM-DD.json
  • 作用: 避免重复调用浏览器,提升速度

非交易日处理

  • 自动检测周末
  • 往前推移直到找到最近交易日
  • 最多往前推 7 天

手动补充

  • 成交量数据需手动补充
  • 支持命令行补充(补数据.py
  • 支持直接编辑 JSON 文件
  • 补充后重新生成报告即可更新

错误处理

  • 单个数据失败 → 使用占位符 待补充
  • 不影响其他数据获取
  • 清晰的错误提示

📝 输出示例

Markdown

# 📊 A 股市场日报 | 2026-03-22

## 三大指数

| 指数 | 点位 | 涨跌幅 |
|------|------|--------|
| 上证指数 | 3957.05 | 📉 -1.24% |
| 深证成指 | 13866.20 | 📉 -0.25% |
| 创业板指 | 3352.10 | 📈 +1.30% |

## 成交量

- **今日量能**:1.23 万亿
- **量能变化**:缩量 0.07 万亿 (-5.69%)
- **市场情绪**:🟢 缩量调整

## 涨跌家数

- **上涨**:1234 家
- **下跌**:3456 家
- **涨跌比**:≈ 1:2.8(下跌显著多于上涨)

JSON

{
  "date": "2026-03-22",
  "indices": {
    "shanghai": { "point": 3957.05, "change": -1.24 },
    "shenzhen": { "point": 13866.20, "change": -0.25 },
    "chinext": { "point": 3352.10, "change": 1.30 }
  },
  "volume": {
    "today": 1.23,
    "previous": 1.30,
    "change": -0.07,
    "changePercent": -5.38,
    "type": "缩量"
  },
  "sentiment": {
    "up": 1234,
    "down": 3456,
    "ratio": "1:2.8",
    "description": "下跌显著多于上涨"
  }
}

⚠️ 注意事项

  1. 浏览器依赖: 需要 OpenClaw browser 工具可用(自动获取数据时)
  2. 网络要求: 需要能访问同花顺问财网站
  3. 成交量手动补充: 目前不支持自动获取,需手动补充
  4. 缓存清理: 手动删除 cache/ 目录可清空缓存
  5. 非交易日: 周末自动往前推,可能不是用户期望的日期

🛠️ 开发状态

  • [x] 目录结构创建
  • [x] 数据获取框架(fetch_data.py)
  • [x] 报告生成脚本(generate_report.py)
  • [x] 手动补充脚本(补数据.py)
  • [x] 缓存逻辑
  • [x] 非交易日处理
  • [x] 浏览器工具集成(调用 OpenClaw browser.snapshot)
  • [x] 数据解析逻辑(解析 snapshot 文本)
  • [x] 完整流程测试(2026-03-22 测试通过)

📖 相关文档

💡 使用技巧

批量补充多日数据

# 连续补充 3 天数据
python3 scripts/补数据.py 2026-03-20 -t 1.20 -p 1.25
python3 scripts/补数据.py 2026-03-21 -t 1.25 -p 1.20
python3 scripts/补数据.py 2026-03-22 -t 1.23 -p 1.25

查看缓存状态

ls -lh cache/

查看手动数据

cat manual/2026-03-22.json

版本历史

共 1 个版本

  • v3.1.0 当前
    2026-05-03 09:56 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Stock Theme Events

shinelp100
获取A股炒作题材对应的真实新闻事件。功能:(1)分析近N日涨幅前列股票题材分布,(2)聚类合并相似题材,(3)从金十数据等获取题材相关资讯,(4)生成题材-事件关联报告。支持独立运行或被其他skill调用。
★ 0 📥 394

Ths Stock Themes

shinelp100
获取同花顺个股题材/概念板块和人气排名数据。使用场景:(1) 查询单只股票在同花顺的题材/概念分类,(2) 获取同花顺个股人气排名榜单,(3) 生成包含题材和人气信息的 Markdown 报告。
★ 1 📥 1,063

Astock Top Gainers

shinelp100
获取 A 股近 N 日涨幅排名前 N 只股票(排除 ST 股),输出格式化表格。当用户询问"近 N 日涨幅排行"、"A 股涨幅排名"、"涨幅最大的股票"、"哪些股票涨得最多"、"最近涨得好的股票"时使用此技能。数据来源为同花顺问财。
★ 0 📥 653