Excel/WPS 里像写公式一样查 A 股行情:free-stockdb STOCK_DATA 宏快速上手指南
【免费下载链接】free-stockdb面向 A 股日K、分钟K与ETF分钟数据的本地量化引擎,集成增量同步、本地缓存、复权、批量查询、回测与指标计算。项目地址: https://gitcode.com/GitHub_Trending/fr/free-stockdb
在 WPS 表格的单元格里敲下=GP("600633"),回车,一只股票的日K行情连表头带数据一起铺满整片单元格——这就是 free-stockdb 提供的 STOCK_DATA 自定义函数(实现名为 GP)能做到的事情。free-stockdb 是一个面向 A 股日K、分钟K 与 ETF 分钟数据的本地量化引擎,内置增量同步、本地缓存与复权折算。把它的 JS 宏装进表格后,前复权行情查询、批量选股都可以在离线环境里用一行公式完成,全程不经过公网。
快速上手:数据服务与 WPS 宏一起就位
让本地数据服务先在后台待命
Windows 发行包里只需要关心两个程序:
- 双击【数据更新.exe】,等待增量同步完成。每日运行一次即可,运行前请先退出 stockdb.exe;
- 双击【stockdb.exe】,启动本地数据库服务,默认监听
127.0.0.1:7899。
同步完成后,行情数据全部落盘在本机./data目录:断网也能查、能算、能回测;全市场 7000 余只股票的批量查询在本地即可完成,不受任何远程接口限频约束。前复权、后复权、不复权三种模式随参数切换,复权因子由引擎内置,无需自己维护。
两点注意:数据库配置文件 stockdb.conf 请勿修改;完整说明可参考 先看!这个!!使用说明.txt。如果暂时不想装宏,可以直接双击 数据网页版.html,用浏览器按代码、日期区间、周期频率、复权类型查询,并一键导出 Excel/CSV。
四步把 JS 宏装进 WPS 表格
- 打开 WPS 表格,点击顶部开发工具 → JS宏 → 设计器;
- 在宏编辑器窗口中,右键点击"模块",选择插入模块;
- 将 调用方式/excel/wps_js_macro.js 的全部代码复制粘贴进模块;
- 保存并关闭宏编辑器,宏即安装完成。
需要注意:微软 Excel 不支持 JS 宏,请使用 WPS 表格;也可以把宏代码交给 AI 工具,让它改写为对应环境可用的自定义函数,更多做法见 调用方式/excel/说明.txt。
STOCK_DATA 公式拆解:GP 的参数一次看懂
宏装好后,任意单元格输入=GP(...)即可发起查询。GP 一共接受 6 个参数:1 个必填,5 个可选。
| 参数 | 必填 | 默认值 | 含义与取值 |
|---|---|---|---|
| code | 是 | — | 股票代码或 ETF 代码,如"600633" |
| start_date | 否 | 空 | 开始日期,YYYYMMDD格式,如"20260620" |
| end_date | 否 | 空 | 结束日期,YYYYMMDD格式,如"20260626" |
| frequency | 否 | 1d | 1d日K /1w周K /1M月K /1m、5m、15m、30m、60m分钟线 |
| fields | 否 | date,code,name,open,high,low,close,volume,amount | 要返回的字段,英文逗号分隔 |
| fq | 否 | qfq | qfq前复权 /hfq后复权 /none不复权 |
两个细节值得了解:
- 分钟级时间戳自动补全:当 frequency 为分钟线、日期只给 8 位时,宏会自动把开始时间补成
000000、结束时间补成235959,省去手拼时间戳的麻烦; - 周期自动聚合:周K、月K 以及 5/15/30/60 分钟K 都会在本地内存中由基础 K 线聚合生成,无需额外处理。
返回值是一个带表头的二维数组,直接铺满一片单元格,日期按从新到旧排列,方便第一眼看到最新行情,配合条件格式、透视表就能搭自己的选股表。
fields 字段速查:照着填就不会错
| 字段 | 含义 | 字段 | 含义 |
|---|---|---|---|
| date | 日期 | volume / amount | 成交量 / 成交额 |
| open / high / low / close | 开 / 高 / 低 / 收 | pre_close / pct_chg | 前收盘 / 涨跌幅 |
| amplitude / turnover | 振幅 / 换手率 | pe_ttm / pb | 市盈率TTM / 市净率 |
| total_mv / float_mv | 总市值 / 流通市值 | vol_ratio / is_st | 量比 / 是否ST |
| name / code | 股票名称 / 代码 |
四组高频公式,直接抄作业
单只股票日K,看最新行情
=GP("600633")自动返回表头加数据,日期从新到旧,默认前复权。
锁定日期区间,只取需要的列
=GP("600633", "20260620", "20260626", "1d", "date,close,pct_chg")看 15 分钟线
=GP("600633", "20260620", "20260620", "15m")分钟级频率会自动补全时间戳,只需给日期。
前复权与不复权对比
=GP("600633", "", "", "1d", "date,close", "none")把最后一个参数在qfq、hfq、none之间切换,即可对比三种口径的价格序列。
查不出数据?按这三条逐项排查
- 提示"连接错误 / 无法连接数据库":确认 stockdb.exe 是否已在后台运行,服务默认监听
127.0.0.1:7899; - 提示"无数据":核对股票代码是否正确,以及所给时间范围内是否发生过交易;
- 想要比宏更轻量的入口:直接双击 数据网页版.html,用浏览器完成查询与导出;日常增量同步前记得先退出 stockdb.exe。
不止表格:HTTP、Python、网页、AI MCP 都能接
WPS 宏只是 free-stockdb 的四个调用入口之一,其余三种方式都放在 调用方式/ 目录下:
- 浏览器:数据网页版.html 双击即用,也可用 调用方式/excel/查看数据.html;
- HTTP 接口:参考 调用方式/http/http_api.py;
- Python SDK:先运行一次 pybao/安装.py,再按 pybao/stock_sdk.py 的方式调用;
- AI MCP:服务与说明见 调用方式/ai_mcp/。
总入口与数据源细节分别见 调用方式/调用说明.txt 和 docs/DATA_SOURCE.md。
从双击两个程序、粘贴一段宏,到在单元格里出行情,整个过程花不了多少时间,而且所有请求都发往本机127.0.0.1:7899,数据始终留在自己的磁盘上。今天跑完一次数据更新,把宏装进 WPS,你缺的就不止是一张会自己更新行情的选股表了。
【免费下载链接】free-stockdb面向 A 股日K、分钟K与ETF分钟数据的本地量化引擎,集成增量同步、本地缓存、复权、批量查询、回测与指标计算。项目地址: https://gitcode.com/GitHub_Trending/fr/free-stockdb
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考