• 欢迎访问爱玩之家
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏爱玩之家

[GitHub]free-stockdb 开源 A 股本地量化数据引擎|日 K / 分钟 K/ETF 行情本地数据库

GitHub awzj 1个月前 (07-27) 86次浏览 已收录 0个评论
文章目录[隐藏]

free-stockdb 开源 A 股本地量化数据引擎|免费本地股票数据库,支持日 K、分钟 K、ETF 行情、自动复权、全市场回测

free-stockdb 是面向 A 股市场的开源本地量化数据引擎,主打日 K、分钟 K、ETF 分钟行情、tick 级行情本地落盘,一站式解决量化研究的数据工程难题。项目采用 C++ 自研时序存储内核,主程序仅 2.2MB 大小,实现双击更新、双击启动、直接调用,完全免费开源。
GitHub 项目地址:https://GitHub.com/hello245m/free-stockdb
本地文件下载地址:

注意:本段内容须成功“回复本文”后“刷新本页”方可查看!


当前版本:v0.2.1 more-power 版
开源协议:MIT License
项目数据:990 Stars、166 Forks;经过数月大规模用户测试,BUG 基本修复,后续即将推出 macOS、Linux 版本。

H2 一、项目诞生背景

很多个人量化研究者长期被传统方案痛点困扰:

  1. 各类在线接口限制繁多:Tushare 需要积分、聚宽、米筐年费高昂;Akshare 容易被封 IP;第三方中转接口速度缓慢。
  2. 通用数据库体验糟糕:SQLite 海量行情卡顿、MongoDB 安装臃肿、DuckDB 同步繁琐、Redis 占用极高内存。
  3. 数据工程工作量巨大:研究者需要自行处理下载、清洗、复权、建索引、指标计算、多端接口适配,从零搭建至少耗费 10~15 个工作日。

作者基于以上痛点从零开发专用股票时序数据库 free-stockdb,把全套数据同步、清洗、复权、指标计算、多端接口封装为开箱即用的本地服务。

H2 二、核心优势:对比在线 API 方案

以全市场 7000 + 标的分钟线回测场景为例: 在线 API 方案存在限频、封号、积分约束,全市场数据完整预处理至少需要 10~15 个工作日;free-stockdb 环境搭建、数据初始化 30 分钟内即可投入回测。

  • 增量同步:Zstd 压缩传输、断点续传,无需反复拉取全量历史数据
  • 自动清洗:自动处理新股、停牌、退市、代码变更、时间序列修正
  • 内置复权:自带完整复权因子,查询时动态计算前复权 / 后复权价格
  • 自研时序存储:无需手动建表、设计索引,开箱即用
  • 高速指标引擎:内置 39 种技术指标,Rust 计算内核速度远超 Pandas
  • 板块映射:内置申万三级行业 + 1200 + 概念板块,毫秒级双向查询
  • 统一多端接口:一套底层数据同时支持 Python、HTTP、Excel、网页、AI MCP 调用

所有查询、回测、指标计算完全依托本地磁盘数据,不再依赖远程接口,不受 IP 限流、账号配额制约。

H2 三、支持数据范围

  • K 线周期:日 / 周 / 月 K、1/5/15/30 分钟 K,按需开启 tick 行情存储
  • 交易标的:全部 A 股、ETF 基金
  • 行情字段:开高低收、成交量、成交额、换手率、市值、ST 标识等
  • 复权模式:不复权、前复权、后复权,保留原始复权因子
  • 板块体系:申万一级 / 二级 / 三级行业、概念板块,支持股票与板块双向检索

数据采用 Zstd 压缩持久化,磁盘占用远低于 CSV、MySQL。仅存储日线约占用 5GB 磁盘;日线 + 全量分钟线建议预留 20GB 空间。

H2 四、内置能力清单

H3 1. 三大核心 API

  1. get_data():批量行情查询,支持全市场多标的、自定义起止时间、周期、复权模式、字段筛选,可直接输出 DataFrame。
  2. zb.get():批量指标计算,内置 39 种技术指标、5 种加权指数算法,支持自定义参数、金叉信号识别。
  3. bk.get():板块查询,根据股票查所属板块、根据板块批量取出成分股。

H3 2. 39 项内置技术指标

趋势类:MA、EMA、SMA、WMA、DMA、EXPMA、TRIX、DMI、DFMA、BBI 震荡类:MACD、KDJ、RSI、WR、CCI、PSY、BIAS、ROC、MTM、DPO 通道类:BOLL、KTN、TAQ 量价类:OBV、VR、EMV、MFI、CR、MASS 综合类:ATR、ASI、BRAR、XSII、STD、SUM、HHV、LLV、REF

5 种指数加权算法:等权、流通市值加权、成交额加权、成交量加权、总市值加权。

H3 3. 五种调用方式

  1. Python SDK:策略回测、量化研究,同步 / 异步接口
  2. HTTP API:任意编程语言对接,默认地址 127.0.0.1:7899
  3. Excel / WPS 宏:表格选股、线下量化分析
  4. HTML 网页端:无代码浏览、筛选本地行情
  5. AI MCP 协议:Claude、Cursor 等 AI 工具直接读写本地行情、自动计算指标

H2 五、快速上手流程(Windows)

  1. 在项目 Releases 下载 v0.2.1 发行包
  2. 运行数据同步工具,行情增量下载至./data目录
  3. 启动 stockdb 服务(程序体积仅 2.2MB)
  4. 通过 Python、网页、Excel 等任意方式调用接口查询数据

初始化完成后,断网环境依旧可以正常执行回测、指标计算;后续启动仅增量更新新增行情。

H2 六、灵活的数据源设计

数据源与引擎解耦,不会因为上游接口失效导致存量数据报废:

  • 修改sync_url.txt切换同步节点、内网私有数据源
  • 支持 file 协议,直接加载本地归档数据快照
  • 预留写入接口,可自行接入其他行情源补充数据
  • 历史数据永久本地留存,无外网也可长期研究

H2 七、部署与安全说明

  • 默认监听127.0.0.1:7899,不会自动暴露公网;可开启局域网共享支持多人分布式回测
  • 同步文件下载完成校验 SHA256 哈希,保障数据完整性
  • 最低硬件:2GB 内存、5GB 磁盘;推荐 8GB 以上内存,20GB 磁盘空间存放分钟线

H2 八、重要免责声明

项目开源协议为 MIT;行情数据版权归属各原始数据源,使用者需要自行确认数据源使用条款。 本工具仅用于量化学习、数据研究,不构成任何投资建议,所有交易风险由使用者自行承担。

写在最后

free-stockdb 解决个人量化最大痛点:繁杂的数据工程工作。把行情下载、清洗、复权、指标运算全部封装成本地服务,研究者可以把精力专注于策略逻辑,不用反复折腾数据库、接口限流、指标优化。适合 A 股个人量化、策略回测、线下因子研究爱好者。


爱玩之家 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:[GitHub]free-stockdb 开源 A 股本地量化数据引擎|日 K / 分钟 K/ETF 行情本地数据库
喜欢 (0)

您必须 登录 才能发表评论!