使用国金证券金融终端搭建个人本地股票数据库

岛屿new 阅读:12 2026-08-24 18:10:53 评论:0

我这几天把一套 A 股量化本地数据库从“下载了一堆文件”整理成了可持续更新、可展示、可写策略的数据系统。
核心原则很简单:不迷信单一数据源,也不把不同口径的数据混在一起。
国金证券金融终端下载的数据作为主数据,负责保存最可靠的本地未复权日线、财务报表、证券主数据和部分市场指标;AkShare 负责补齐终端没有的另类数据,例如龙虎榜、大宗交易、机构买卖等;TDXGP 原始扩展字段单独保留,不强行解释;QMT 则作为复权日线补充源。
整个过程分成了几步:
先把国金终端的 .day、财务文件和市场文件解析进 DuckDB,建立统一的证券代码、交易所、交易日期主键。

保留未复权原始行情作为基础表。价格、成交量、成交额、财务数据、另类事件不互相覆盖,避免后续回测时把不同口径混在一起。

补齐财务数据的“可用日期”。财报不能按报告期提前使用,必须按公告日进入策略,避免未来函数。

用 AkShare 回补龙虎榜、大宗交易、机构席位等终端没有的另类数据,并为网络请求加重试和失败记录。

接入 QMT 导出的前复权、后复权 CSV。发现 QMT 的成交量单位是“手”,数据库统一转换为“股”;前复权文件存在大量空文件,因此不能当作全市场完整数据源,后复权相对完整。

QMT 数据不覆盖原始日线,而是进入独立的 qmt_adjusted_daily_bars 表,明确标记 qfq、hfq、来源文件和导入时间。这样策略可以明确选择“原始价、前复权价或后复权价”。

做了本地网页展厅:可查看个股 K 线、逐日行情、财务时点数据、技术指标、另类事件、数据质量、表结构和字段中文解释。客户可以直接看到每张表的数据来源、最新日期和覆盖范围。

最后做成每日工作流:收盘后先用国金终端更新主数据,再运行脚本同步 AkShare 另类数据和 QMT 最新复权数据。日常只更新最新一日,重建时才导入完整历史。

目前数据库已经形成了“主数据 + 另类数据 + 复权数据 + 财务时点 + 数据质量检查 + 可视化展示”的结构。
我认为量化数据最重要的不是“数据越多越好”,而是每一条数据都能回答四个问题:
它来自哪里?
它是什么口径?
它在什么时候市场可见?
它能不能被策略稳定、重复地读取?
这套系统还不是“完美数据库”。例如部分新股的 QMT 后复权文件为空,AkShare 也可能因上游接口波动暂时不可用。但这些缺口被明确记录,而不是用猜测补值。对量化研究来说,可追溯、可验证,比表面上的“全都有”更重要。nullnullnull

本文由 海星量化研究所 作者提供,转载请保留链接和署名!网址:https://qmt.hxquant.com/?id=79

声明

1.本站原创文章,转载需注明文章作者来源。 2.如果文章内容涉及版权问题,请联系我们删除,向本站投稿文章可能会经我们编辑修改。 3.本站对信息准确性或完整性不作保证,亦不对因使用该等信息而引发或可能引发的损失承担任何责任。

搜索
排行榜
关注我们

扫码开通QMT/ptrade