模块一:数据采集 v1.0 · 已上线
待评审 · 2026-07-13一句话说清楚
模块一是 ZLData 的数据底座。每天收盘后自动从多个数据源采集 A 股全市场和宏观经济数据,存入云端数据库,供前台看板和 API 查询。就像给你装了一条直达证券交易所的数据水管。
这个模块做什么
不是选股、不是交易、不是策略——就是把数据拿进来,洗干净,存好,让你随时查看。它是整个平台一切分析能力的基础。
采集的数据类型
| 类别 | 具体内容 | 举例 |
|---|---|---|
| 行情数据 | 沪深 A 股全部股票(约 5000 只)的每日开/高/低/收、成交量、成交额 | 贵州茅台今天涨了 2%、成交量 50 亿 |
| 财务数据 | 上市公司定期披露的财务指标 | ROE、毛利率、净利率、EPS、每股净资产 |
| 宏观经济 | 央行和统计局发布的宏观指标 | GDP 增速、CPI、PMI、M2 货币供应量 |
| 利率汇率 | 市场化利率和外汇中间价 | Shibor、LPR、美元/人民币中间价 |
| 财经日历 | 重要经济事件和公告日期 | 美联储议息、央行降准、财报披露日 |
| 新闻舆情 | A 股相关财经新闻(规划中) | 政策变动、行业重大消息 |
| 研报评级 | 券商研究报告的评级和摘要(规划中) | “买入”、“增持”、目标价 |
当前状态
| 数据类型 | 状态 | 说明 |
|---|---|---|
| 行情数据 | ✅ 已上线 | QMT 主力源 + akshare 备用源,双重保障 |
| 财务数据 | ✅ 已上线 | QMT 五张报表(资产负债表、利润表、现金流量表等) |
| 宏观指标 | ✅ 已上线 | GDP、CPI、PMI 等 |
| 利率汇率 | ✅ 已上线 | Shibor、LPR 等 |
| 财经日历 | ✅ 已上线 | 百度财经日历源 + LLM 催化剂发现(Qwen Max 联网搜索) |
| 新闻舆情 | ✅ 已上线 | 东方财富个股新闻源 + 两层情感分析(关键词粗筛 + LLM 精读) |
| 研报评级 | ✅ 已上线 | 东方财富评级详情 + 同花顺盈利预期 + 变更检测去重 |
数据从哪来
数据源一览
| 数据源 | 全称 | 采集什么 | 特点 |
|---|---|---|---|
| QMT | 迅投极速量化交易系统 | 行情 + 财务(主力源) | 全量 A 股约 5000 只,数据最全、最准,支持前复权 |
| akshare | 开源金融数据接口 | 行情 + 财务(备用源) | QMT 不可用时自动切换,也用于宏观、利率数据 |
| 公开 API | 央行、统计局等 | 宏观指标、利率 | 通过 akshare 统一调用 |
QMT 采集的特殊规则(2026-07-13 新增)
为什么 QMT 需要特殊处理?
QMT 是本地 Windows 软件——必须先打开 QMT 客户端,Python 程序才能从中读取数据。服务器(Render,Linux 环境)无法运行 QMT。
解决方案:QMT 数据由 AI 代理(无尘)在本地 Windows 电脑上每日运行采集脚本,直接写入云端数据库。Render 服务器上的其他数据采集(akshare、宏观、利率)不受影响。
| 环节 | 谁 | 在哪 | 什么时候 |
|---|---|---|---|
| QMT 行情采集 | 无尘(本地脚本) | Windows 电脑(D:\ZLData\scripts) | 每日 15:35(收盘后) |
| QMT 财务采集 | 无尘(本地脚本) | 同上 | 每季度财报披露后 |
| akshare 备用采集 | Render 服务器(自动) | 云端 Docker | 每日定时 |
| 宏观/利率采集 | Render 服务器(自动) | 云端 Docker | 每日定时 |
数据存在哪
所有采集到的数据统一存储在 Azure SQL 数据库(Microsoft 云端托管的关系型数据库,对标 MySQL/PostgreSQL)。
| 存储位置 | 技术信息 | 业务含义 |
|---|---|---|
| 服务器 | zwusql.database.windows.net | 微软云托管,无需自己运维 |
| 数据库 | SQLDB | 一个数据库管全部 |
| 关键表 | trade_stock_daily | 每只股票每天的行情(开/高/低/收/量/额) |
| 关键表 | trade_stock_financial | 上市公司每季度的财务指标(ROE/毛利率/净利率等) |
| 关键表 | trade_macro_indicator | 宏观经济指标时间序列 |
| 关键表 | trade_rate_daily | 每日利率汇率数据 |
| 关键表 | trade_stock_news | 个股新闻 + 情感分析结果,年增量 ~50万行 |
| 关键表 | trade_report_consensus | 机构研报评级 + 一致预期(变更检测去重),~10万行 |
| 关键表 | trade_calendar_event | 财经日历 + LLM 发现的催化剂事件,年增量 ~2000行 |
数据多久更新一次
| 频率 | 数据 | 触发时间 |
|---|---|---|
| 每个交易日 | A 股行情(日K线) | 15:35(收盘后 35 分钟) |
| **每个交易日 | 利率汇率数据 + 新闻舆情 + 财经日历 | 20:10-22:00 |
| 每月 | 宏观指标(CPI、PMI 等) | 数据发布日后第一个工作日 20:00 |
| 每季度 | 财务数据(季报/年报) | 财报披露期结束后批量更新 |
数据更新状态可在 数据源状态看板 实时查看。
前台能看到什么
1. 数据源状态看板
![数据流向示意]
一眼看出所有数据源是否正常:🟢 绿 = 数据健康,🟡 黄 = 有延迟,🔴 红 = 采集失败。
2. 采集任务列表
每次数据采集都有记录——什么时候开始、什么时候结束、采集了多少条、有没有报错。出问题时从这里找线索。
3. SQL 数据浏览器
输入 SQL 语句直接查询数据库(仅限 SELECT,不能修改数据)。适合想自定义查询的交易研究员。
4. API 接口
程序化读取数据:
GET /api/v1/market/daily— 查询日K线行情GET /api/v1/financial/indicators— 查询财务指标
数据质量保障
| 保障机制 | 说明 |
|---|---|
| 双重数据源 | QMT 不可用时自动切换到 akshare,确保不断流 |
| 幂等写入 | 同一天同一股票不会重复写入,跑了多次也只存一条 |
| 字段校验 | 异常值自动标记(负数价格、缺失日期等) |
| 采集日志 | 每次采集结果记录在案,可追溯 |
下一步(v1.5 规划)
- 详细技术设计
完整的技术实现细节见 数据采集模块详细设计文档。
下一步(v1.5 规划)
- 分钟线/Tick 数据接入
- 数据版本管理(历史数据修正可追溯)
- 研报评级数据接入
- 数据质量自动报警(异常时主动推送通知)
相关页面
Last updated on
来源路径:
docs:/docs/backend/data-collection请勿提交账户、密钥、未脱敏交易数据、真实持仓明细或其他敏感信息。