文章目录
一、关于 AKShare
AKShare 是基于 Python 的财经数据接口库,目的是实现对股票、期货、期权、基金、外汇、债券、指数、加密货币等金融产品的基本面数据、实时和历史行情数据、衍生数据从数据采集、数据清洗到数据落地的一套工具,主要用于学术研究目的。
AKShare 的特点是获取的是相对权威的财经数据网站公布的原始数据,通过利用原始数据进行各数据源之间的交叉验证,进而再加工,从而得出科学的结论。
AKShare 后续会基于学术论文和研究报告来添加更多数据接口和衍生指标,并提供相应的计算代码,敬请关注。
- github : https://github.com/akfamily/akshare
- 官方文档:https://akshare.akfamily.xyz/
- 微信公众号: 数据科学实战
彭涛说 : akshare,一个神奇的 Python 库!
https://zhuanlan.zhihu.com/p/678521592
AKShare 的特色
AKShare 主要改进如下:
- 代码语法符合 PEP8 规范,数据接口的命名统一;
- 最佳支持 Python 3.12 及其以上版本;
- 提供最佳的文档支持,每个数据接口均提供详细的说明和示例,只需要复制粘贴就可以下载数据;
- 持续维护由于目标网页变化而导致的部分数据接口运行异常问题;
- 持续更新财经数据接口,同时优化源代码;
- 提供完善的接口文档,提高 AKShare 的易用性;
- 对于非 Python 用户,提供 HTTP API 接口工具 AKTools。
特点
- 易于使用:只需一行代码即可获取数据;
- 可扩展:易于使用其他应用程序自定义您自己的代码;
- 强大:Python生态系统。
AKShare 的初衷
AKShare 主要是用于财经研究,解决在财经研究中数据获取的问题。目前的版本主要是基于 Python 语言,通过调用相关的数据接口来获取数据到本地。原理上,就是在用户本地运行 Python 代码,实时从网络采集数据到本地,便利与数据分析。由于网络数据采集需要维护的接口众多,且经常由于目标网站变换网页格式需要维护及更新相关接口,所以用户在使用本项目的过程中需要经常更新本项目到最新版本。同时也需要关注项目文档的更新,因为最新的使用方式和接口变更都会第一时间更新到文档中。
二、概览
AKShare需要Python(64位)3.8或更高版本,旨在简化获取财务数据的过程。
少写,多得!
- Documentation: 中文文档
三、安装
General
pip install akshare --upgrade
国内镜像
pip install akshare -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com --upgrade
PR
如果您想为AKShare做出贡献,请查看文档
Docker
拉取镜像
docker pull registry.cn-shanghai.aliyuncs.com/akfamily/aktools:jupyter
运行容器
docker run -it registry.cn-shanghai.aliyuncs.com/akfamily/aktools:jupyter python
测试
import akshare as ak
print(ak.__version__)
四、用法
1、数据
代码:
import akshare as ak
stock_zh_a_hist_df = ak.stock_zh_a_hist(symbol="000001", period="daily", start_date="20170301", end_date='20231022', adjust="")
print(stock_zh_a_hist_df)
输出:
日期 开盘 收盘 最高 ... 振幅 涨跌幅 涨跌额 换手率
0 2017-03-01 9.49 9.49 9.55 ... 0.84 0.11 0.01 0.21
1 2017-03-02 9.51 9.43 9.54 ... 1.26 -0.63 -0.06 0.24
2 2017-03-03 9.41 9.40 9.43 ... 0.74 -0.32 -0.03 0.20
3 2017-03-06 9.40 9.45 9.46 ... 0.74 0.53 0.05 0.24
4 2017-03-07 9.44 9.45 9.46 ... 0.63 0.00 0.00 0.17
... ... ... ... ... ... ... ... ...
1610 2023-10-16 11.00 11.01 11.03 ... 0.73 0.09 0.01 0.26
1611 2023-10-17 11.01 11.02 11.05 ... 0.82 0.09 0.01 0.25
1612 2023-10-18 10.99 10.95 11.02 ... 1.00 -0.64 -0.07 0.34
1613 2023-10-19 10.91 10.60 10.92 ... 3.01 -3.20 -0.35 0.61
1614 2023-10-20 10.55 10.60 10.67 ... 1.51 0.00 0.00 0.27
[1615 rows x 11 columns]
2、Plot
代码:
import akshare as ak
import mplfinance as mpf # Please install mplfinance as follows: pip install mplfinance
stock_us_daily_df = ak.stock_us_daily(symbol="AAPL", adjust="qfq")
stock_us_daily_df = stock_us_daily_df.set_index(["date"])
stock_us_daily_df = stock_us_daily_df["2020-04-01": "2020-04-29"]
mpf.plot(stock_us_daily_df, type="candle", mav=(3, 6, 9), volume=True, show_nontrading=False)
输出:
五、声明
- 所有AKShare提供的数据仅用于学术研究;
- 本公司提供的数据仅供参考,不构成任何投资建议;
- 任何基于AKShare研究的投资者都应该更加关注数据风险;
- AKShare将坚持提供开源财务数据;
- 基于一些不可控因素,AKShare中的部分数据接口可能会被移除;
- 请遵循AKShare使用的相关开源协议;
- 为使用其他程序语言的人提供HTTP API:AKTools。
六、其它
欢迎加入专注于财经数据和量化投资的知识社区,获取《AKShare-财经数据宝典》,其汇集了财经数据的使用经验和指南,还独家分享了 众多国内外财经数据源的使用和注意事项,请点击了解更多。
量化投研视频课程:《PyBroker-入门及实战》已经上架!《PyBroker-进阶及实战》正在更新!
更多视频教程已经发布:《AKShare-初阶-使用教学》、《AKShare-初阶-实战应用》、《AKShare-源码解析》、《开源项目巡礼》, 详情请关注【数据科学实战】公众号,查看更多课程信息!
广告推广:期魔方是一款非常专业本地化期货量化终端,无需部署或搭建环境,可直接调用及时和历史数据做回测实盘, 支持开箱即用的机器学习训练,策略投研、回测均免费,详情请访问期魔方官网。
2025-03-19(三)