如何下载完整股票日线数据

量化课堂 量化课堂
2023年11月2日 17:18

简介

做股票量化交易研究最常用的原材料,就是股票价格数据,这篇文章分享如何用 Python 下载股票数据。

数据样例

下面是某个股票的数据示例,字段有开高低收、成交量、成交额和换手率。

数据样例

运行完下文的代码之后,会获得市场所有股票的日线数据,时间段为上市以来至现在,5500 多个股票的 csv 文件,压缩后文件大小为 200 多兆。

所有数据文件

AKShare 介绍

AKShare 是基于 Python 的财经数据接口库,可以下载股票、期货、期权、基金、外汇、债券、指数、加密货币等金融产品的基本面、实时和历史行情数据、衍生数据。

AKShare 的数据来源于财经数据网站的公开接口,如新浪财经和东方财富等。

代码讲解

代码

运行上面这段代码,即可获得 5500 多个股票的历史日线数据。

从上往下,代码的含义是:

  1. import 部分,导入了所需的库,需要事先通过 pip install akshare 命令安装 AKShare;
  2. stock_zh_a_spot_em() 用来获取所有股票的列表,函数中 em 意思是数据来自 EastMoney 东方财富;
  3. 接下来循环获取所有股票的历史价格;
  4. stock_zh_a_hist() 用来获取某只股票的所有历史日频价格数据,参数传入股票代码即可,此处我获得的是未经复权的数据;
  5. 有的股票结果为空,如果为空则跳过不保存;
  6. 取价格和成交量、成交额和换手率字段,剩下的字段都能由这些字段推算出来,所以不保留;
  7. 将价格数据保存到文件中;
  8. 休息一秒钟,防止请求过快。

总结

AKShare 封装的接口可以很方便的调用,它接入的东方财富的接口,也能通过一次请求获取历史所有价格数据,无需循环遍历。

获取日频数据这份原材料后,就能进行后续的回测开发了。

如果想获取这份代码和数据,可以联系我。

评论
暂无评论