Awesome
欢迎加入专注于财经数据和量化投资的知识社区,请点击了解更多
量化投研视频课程:《PyBroker-入门及实战》已经上架!《PyBroker-进阶及实战》正在更新!
更多视频教程已经发布:《AKShare-初阶-使用教学》、《AKShare-初阶-实战应用》、《AKShare-源码解析》、《开源项目巡礼》, 详情请关注【数据科学实战】公众号,查看更多课程信息!
AKQuant 量化教程请访问:利用 PyBroker 进行量化投资
本次发布 AKTools 作为 AKShare 的 HTTP API 版本, 突破 Python 语言的限制,欢迎各位小伙伴试用并提出更好的意见或建议! 点击 AKTools 查看使用指南。另外提供 awesome-data 方便各位小伙伴查询各种数据源。
Overview
AKShare requires Python(64 bit) 3.8 or higher and aims to simplify the process of fetching financial data.
Write less, get more!
- Documentation: 中文文档
Installation
General
pip install akshare --upgrade
China
pip install akshare -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com --upgrade
PR
Please check out Documentation if you want to contribute to AKShare
Docker
Pull images
docker pull registry.cn-shanghai.aliyuncs.com/akfamily/aktools:jupyter
Run Container
docker run -it registry.cn-shanghai.aliyuncs.com/akfamily/aktools:jupyter python
Test
import akshare as ak
print(ak.__version__)
Usage
Data
Code:
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)
Output:
日期 开盘 收盘 最高 ... 振幅 涨跌幅 涨跌额 换手率
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]
Plot
Code:
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)
Output:
Communication
Welcome to join the 数据科学实战 knowledge planet to learn more about quantitative investment, please visit 数据科学实战 for more information:
<div> <img alt="data science" src="https://jfds-1252952517.cos.ap-chengdu.myqcloud.com/akshare/readme/qrcode/data_scientist.png"> </div>Pay attention to 数据科学实战 WeChat Official Accounts to get the AKShare updated info:
<div> <img alt="ds" src="https://github.com/akfamily/akshare/blob/main/assets/images/ds.png"> </div>Features
- Easy of use: Just one line code to fetch the data;
- Extensible: Easy to customize your own code with other application;
- Powerful: Python ecosystem.
Tutorials
Contribution
AKShare is still under developing, feel free to open issues and pull requests:
- Report or fix bugs
- Require or publish interface
- Write or fix documentation
- Add test cases
Notice: We use Ruff to format the code
Statement
- All data provided by AKShare is just for academic research purpose;
- The data provided by AKShare is for reference only and does not constitute any investment proposal;
- Any investor based on AKShare research should pay more attention to data risk;
- AKShare will insist on providing open-source financial data;
- Based on some uncontrollable factors, some data interfaces in AKShare may be removed;
- Please follow the relevant open-source protocol used by AKShare;
- Provide HTTP API for the person who uses other program language: AKTools.
Show your style
Use the badge in your project's README.md:
[![Data: akshare](https://img.shields.io/badge/Data%20Science-AKShare-green)](https://github.com/akfamily/akshare)
Using the badge in README.rst:
.. image:: https://img.shields.io/badge/Data%20Science-AKShare-green
:target: https://github.com/akfamily/akshare
Looks like this:
Citation
Please use this bibtex if you want to cite this repository in your publications:
@misc{akshare,
author = {Albert King},
title = {AKShare},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/akfamily/akshare}},
}
Acknowledgement
Special thanks FuShare for the opportunity of learning from the project;
Special thanks TuShare for the opportunity of learning from the project;
Thanks for the data provided by 生意社网站;
Thanks for the data provided by 中国银行间市场交易商协会网站;
Thanks for the data provided by 99期货网站;
Thanks for the data provided by 中国外汇交易中心暨全国银行间同业拆借中心网站;
Thanks for the data provided by 金十数据网站;
Thanks for the data provided by 和讯财经网站;
Thanks for the data provided by 新浪财经网站;
Thanks for the data provided by DACHENG-XIU 网站;
Thanks for the data provided by 上海证券交易所网站;
Thanks for the data provided by 深证证券交易所网站;
Thanks for the data provided by 北京证券交易所网站;
Thanks for the data provided by 中国金融期货交易所网站;
Thanks for the data provided by 上海期货交易所网站;
Thanks for the data provided by 大连商品交易所网站;
Thanks for the data provided by 郑州商品交易所网站;
Thanks for the data provided by 上海国际能源交易中心网站;
Thanks for the data provided by Timeanddate 网站;
Thanks for the data provided by 河北省空气质量预报信息发布系统网站;
Thanks for the data provided by 南华期货网站;
Thanks for the data provided by Economic Policy Uncertainty 网站;
Thanks for the data provided by 申万指数网站;
Thanks for the data provided by 真气网网站;
Thanks for the data provided by 财富网站;
Thanks for the data provided by 中国证券投资基金业协会网站;
Thanks for the data provided by Expatistan 网站;
Thanks for the data provided by 北京市碳排放权电子交易平台网站;
Thanks for the data provided by 国家金融与发展实验室网站;
Thanks for the data provided by 东方财富网站;
Thanks for the data provided by 义乌小商品指数网站;
Thanks for the data provided by 百度迁徙网站;
Thanks for the data provided by 思知网站;
Thanks for the data provided by Currencyscoop 网站;
Thanks for the data provided by 新加坡交易所网站;
Thanks for the tutorials provided by 微信公众号: Python大咖谈.