https://github.com/akfamily/akshare
AKShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库
https://github.com/akfamily/akshare
academic akshare asset-pricing bond currency data data-analysis data-science datasets economic-data economics finance finance-api financial-data fundamental futures option quant stock
Last synced: about 18 hours ago
JSON representation
AKShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库
- Host: GitHub
- URL: https://github.com/akfamily/akshare
- Owner: akfamily
- License: mit
- Created: 2019-10-01T07:34:12.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2026-10-30T09:53:10.000Z (5 days ago)
- Last Synced: 2026-10-30T09:56:29.138Z (5 days ago)
- Topics: academic, akshare, asset-pricing, bond, currency, data, data-analysis, data-science, datasets, economic-data, economics, finance, finance-api, financial-data, fundamental, futures, option, quant, stock
- Language: Python
- Homepage: https://akshare.akfamily.xyz
- Size: 8.65 MB
- Stars: 23,135
- Watchers: 259
- Forks: 3,560
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-quant-ai - akshare - shares, futures, funds, macro) | China market research; no account required | (Tools and Platforms / On-Chain / DeFi Quantitative Strategies)
- awesome-python - akfamily/akshare - AKShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库 (Other / Scientific Computing)
- Awesome_AI4Finance - AKShare - square) | Elegant Python financial data interface covering A-shares, futures, options, funds, forex, bonds, indices, and crypto from authoritative Chinese sources. | (Data Sources)
- awesome-python-resources - GitHub
- awesome-systematic-trading - AkShare - commit/akfamily/akshare/main) |`Python`| - AKShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库 (Data Source / Stocks and General)
- awesome-quant - akshare - `Python` - AkShare is an elegant and simple financial data interface library for Python, built for human beings! <https://akshare.readthedocs.io>. (Market Data & Data Sources)
- awesome-systematic-trading - AkShare - with-python](https://img.shields.io/badge/Made%20with-Python-1f425f.svg) | (Data Sources / General)
- my-awesome - akfamily/akshare - pricing,bond,currency,data,data-analysis,data-science,datasets,economic-data,economics,finance,finance-api,financial-data,fundamental,futures,option,quant,stock pushed_at:2026-10 star:22.9k fork:3.5k AKShare is an elegant and simple financial data interface library for Python, built for human beings! 开源财经数据接口库 (Python)
- awesome-quant-cn - akshare - - 基于 Python 的财经数据接口库, 目的是实现对股票、期货、期权、基金、外汇、债券、指数、加密货币等金融产品的基本面数据、实时和历史行情数据、衍生数据从数据采集、数据清洗到数据落地的一套工具 (金融数据)
- awesome-data - AKShare
- fucking-awesome-python - akshare - A financial data interface library, built for human beings! (Data Analysis)
- awesome-python - akshare - A financial data interface library, built for human beings! (Data Analysis)
- awesome-stock-quant-skills - akfamily/akshare - to open-source A-share data library | 22.2k | MIT | Index only | (Index / D. Data APIs)
- awesome-quant - AkShare - 免费开源财经数据接口库,目前包含中文领域最全的数据接口 (数据源)
- awesome-quant-interview - akfamily/akshare
- Awesome-AITools - Github
- awesome-quant - akfamily/akshare - 05-27 · license MIT (Utilities)
README
**资源分享**:对于想了解更多财经数据与量化投研的小伙伴,推荐一个专注于财经数据和量化研究的知识社区。
该社区提供相关文档和视频学习资源,汇集了各类财经数据源和量化投研工具的使用经验。
有兴趣深入学习的朋友可点此[了解更多](https://t.zsxq.com/ZCxUG),也推荐大家关注微信公众号【数据科学实战】。
**重磅推荐**:AKQuant 是一款专为 **量化投研 (Quantitative Research)** 打造的高性能量化回测框架。它以 Rust 铸造极速撮合内核,
以 Python 链接数据与 AI 生态,旨在为量化投资者提供可靠高效的量化投研解决方案。参见[AKQuant](https://github.com/akfamily/akquant)
**工具推荐**:期魔方是一款本地化期货量化分析工具,适合数据分析爱好者使用。无需复杂部署,支持数据分析和机器学习功能,研究功能免费开放。
如需了解更多信息可访问[期魔方](https://qmfquant.com)。

[](https://pypi.org/project/akshare/)
[](https://pypi.org/project/akshare/)
[](https://pepy.tech/projects/akshare)
[](https://akshare.akfamily.xyz/)
[](https://github.com/astral-sh/ruff)
[](https://github.com/akfamily/akshare)
[](https://github.com/akfamily/akshare/actions/workflows/main_dev_check.yml)
[](https://github.com/akfamily/akshare/actions/workflows/release_and_deploy.yml)
[](https://github.com/akfamily/akshare/blob/main/LICENSE)
[](https://github.com/akfamily/akshare)
[](https://github.com/akfamily/akshare)
[](https://github.com/akfamily/akshare)
## Overview
[AKShare](https://github.com/akfamily/akshare) requires Python(64 bit) 3.11 or higher and
aims to simplify the process of fetching financial data.
**Write less, get more!**
- Documentation: [中文文档](https://akshare.akfamily.xyz/)
- **MCP server for AI assistants**: [AKTools](https://github.com/akfamily/aktools) lets Claude, Cursor and other MCP clients fetch AKShare data in natural language — see [AI Assistants (MCP)](#ai-assistants-mcp)
- HTTP API: [AKTools](https://aktools.akfamily.xyz/) also serves AKShare over HTTP for other programming languages
## AI Assistants (MCP)
AKShare is a Python library and does not run an MCP server itself. Its companion
project [AKTools](https://github.com/akfamily/aktools) ships one — registered in
the [official MCP Registry](https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.akfamily/aktools)
as `io.github.akfamily/aktools` — so AI assistants such as Claude Code, Claude
Desktop and Cursor can look up and call every AKShare interface from a
natural-language question, e.g. *"贵州茅台 2024 年 10 月 8 日到 11 日的前复权日线行情"*.
No separate install is needed beyond [uv](https://docs.astral.sh/uv/):
```shell
claude mcp add aktools -- uvx --from aktools aktools-mcp
```
Claude Desktop, Cursor and other clients:
```json
{
"mcpServers": {
"aktools": {
"command": "uvx",
"args": ["--from", "aktools", "aktools-mcp"]
}
}
}
```
[](https://cursor.com/install-mcp?name=aktools&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyItLWZyb20iLCJha3Rvb2xzIiwiYWt0b29scy1tY3AiXX0%3D)
Instead of registering 1000+ tools, it exposes three generic ones that the
assistant chains together:
| Tool | Purpose |
| --- | --- |
| `search_interfaces` | Find interface names by keyword |
| `describe_interface` | Show an interface's parameters, defaults and description |
| `get_data` | Call an interface and return up to `max_rows` rows (default 100, max 1000) |
A running `python -m aktools` server also exposes the same tools over Streamable
HTTP at `http://127.0.0.1:8080/mcp`. See the
[MCP guide](https://akshare.akfamily.xyz/mcp.html) (中文) for HTTP mode, proxies,
access tokens and LAN access.
## Installation
### uv (Recommended)
```shell
uv pip install akshare --upgrade
```
See the [uv environment guide](https://akshare.akfamily.xyz/uv.html) for installing uv and creating a virtual environment.
### pip
```shell
pip install akshare --upgrade
```
### China
```shell
uv pip install akshare --upgrade --default-index https://pypi.tuna.tsinghua.edu.cn/simple
# or
pip install akshare --upgrade -i https://pypi.tuna.tsinghua.edu.cn/simple
```
## Usage
### Data
Code:
```python
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]
```
### Search
AKShare ships an offline interface registry, so you can look up an interface by
keyword without leaving Python and without any network request. This is
especially handy for LLM-driven programs that need to resolve a description into
a callable interface name.
Code:
```python
import akshare as ak
search_df = ak.search("可转债 实时行情", limit=5)
print(search_df)
# full metadata of a single interface: params, output columns and a usage example
interface_info_dict = ak.interface_info("bond_cb_jsl")
print(interface_info_dict)
```
Output:
```
接口名 类目 描述 有无文档 匹配分
0 bond_cb_jsl bond 集思录可转债实时数据,包含行情数据(涨跌幅,成交量和换手率等)及可转债基本信息(转股价,溢价率和到期收益率等) True 27.0
1 bond_zh_hs_cov_min bond 东方财富网-可转债-分时行情 True 20.0
2 bond_zh_hs_cov_pre_min bond 东方财富网-可转债-分时行情-盘前分时 True 20.0
3 bond_cov_comparison bond 东方财富网-行情中心-债券市场-可转债比价表 True 17.0
4 fund_etf_spot_em fund 东方财富-ETF 实时行情 True 17.0
```
Passing a full interface name always ranks that interface first, which makes it
a reliable way to confirm a half-remembered name. Note this is keyword matching
rather than semantic search — see the
[interface search docs](https://akshare.akfamily.xyz/search.html) for what it
can and cannot do.
### Plot
Code:
```python
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)
```
## Features
- **Ease of use**: Just one line code to fetch the data;
- **Extensible**: Easy to customize your own code with other application;
- **Powerful**: Python ecosystem.
## Tutorials
1. [Overview](https://akshare.akfamily.xyz/introduction.html)
2. [Installation](https://akshare.akfamily.xyz/installation.html)
3. [Interface Search](https://akshare.akfamily.xyz/search.html)
4. [AI Assistants (MCP)](https://akshare.akfamily.xyz/mcp.html)
5. [Tutorial](https://akshare.akfamily.xyz/tutorial.html)
6. [Data Dict](https://akshare.akfamily.xyz/data/index.html)
7. [Indicator](https://akshare.akfamily.xyz/indicator.html)
8. [FAQ](https://akshare.akfamily.xyz/faq.html)
9. [Trade](https://akshare.akfamily.xyz/trade.html)
## Contribution
[AKShare](https://github.com/akfamily/akshare) is still under development, feel free to open issues and pull requests:
- Report or fix bugs
- Require or publish interface
- Write or fix documentation
- Add test cases
See the [contributing guide](https://akshare.akfamily.xyz/contributing.html) before
opening a pull request.
> Notice: We use [Ruff](https://github.com/astral-sh/ruff) to format the code
## Statement
1. All data provided by [AKShare](https://github.com/akfamily/akshare) is just for academic research purpose;
2. The data provided by [AKShare](https://github.com/akfamily/akshare) is for reference only and does not constitute any investment proposal;
3. Any investor based on [AKShare](https://github.com/akfamily/akshare) research should pay more attention to data risk;
4. [AKShare](https://github.com/akfamily/akshare) will insist on providing open-source financial data;
5. Based on some uncontrollable factors, some data interfaces in [AKShare](https://github.com/akfamily/akshare) may be removed;
6. Please follow the relevant open-source protocol used by [AKShare](https://github.com/akfamily/akshare);
7. Provide HTTP API and MCP server for other programming languages and AI assistants: [AKTools](https://aktools.akfamily.xyz/).
## Show your style
Use the badge in your project's README.md:
```markdown
[](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:
[](https://github.com/akfamily/akshare)
## Citation
Please use this **bibtex** if you want to cite this repository in your publications:
```markdown
@misc{akshare,
author = {Albert King and Yaojie Zhang},
title = {AKShare},
year = {2022},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/akfamily/akshare}},
}
```
## Acknowledgement
Special thanks [FuShare](https://github.com/LowinLi/fushare) for the opportunity of learning from the project;
Special thanks [TuShare](https://github.com/waditu/tushare) for the opportunity of learning from the project;
Thanks for the data provided by [东方财富网站](http://data.eastmoney.com);
Thanks for the data provided by [新浪财经网站](https://finance.sina.com.cn);
Thanks for the data provided by [金十数据网站](https://www.jin10.com/);
Thanks for the data provided by [生意社网站](http://www.100ppi.com/);
Thanks for the data provided by [中国银行间市场交易商协会网站](http://www.nafmii.org.cn/);
Thanks for the data provided by [99期货网站](http://www.99qh.com/);
Thanks for the data provided by [中国外汇交易中心暨全国银行间同业拆借中心网站](http://www.chinamoney.com.cn/chinese/);
Thanks for the data provided by [和讯财经网站](http://www.hexun.com/);
Thanks for the data provided by [DACHENG-XIU 网站](https://dachxiu.chicagobooth.edu/);
Thanks for the data provided by [上海证券交易所网站](http://www.sse.com.cn/assortment/options/price/);
Thanks for the data provided by [深圳证券交易所网站](http://www.szse.cn/);
Thanks for the data provided by [北京证券交易所网站](http://www.bse.cn/);
Thanks for the data provided by [中国金融期货交易所网站](http://www.cffex.com.cn/);
Thanks for the data provided by [上海期货交易所网站](http://www.shfe.com.cn/);
Thanks for the data provided by [大连商品交易所网站](http://www.dce.com.cn/);
Thanks for the data provided by [郑州商品交易所网站](http://www.czce.com.cn/);
Thanks for the data provided by [上海国际能源交易中心网站](http://www.ine.com.cn/);
Thanks for the data provided by [Timeanddate 网站](https://www.timeanddate.com/);
Thanks for the data provided by [河北省空气质量预报信息发布系统网站](http://218.11.10.130:8080/);
Thanks for the data provided by [Economic Policy Uncertainty 网站](https://www.policyuncertainty.com/);
Thanks for the data provided by 申万指数网站;
Thanks for the data provided by [真气网网站](https://www.zq12369.com/);
Thanks for the data provided by [财富网站](http://www.fortunechina.com/);
Thanks for the data provided by [中国证券投资基金业协会网站](http://gs.amac.org.cn/);
Thanks for the data provided by [Expatistan 网站](https://www.expatistan.com/cost-of-living);
Thanks for the data provided by [北京市碳排放权电子交易平台网站](https://www.bjets.com.cn/article/jyxx/);
Thanks for the data provided by [国家金融与发展实验室网站](http://www.nifd.cn/);
Thanks for the data provided by [义乌小商品指数网站](https://www.ywindex.com/);
Thanks for the data provided by [百度迁徙网站](https://qianxi.baidu.com/?from=shoubai#city=0);
Thanks for the data provided by [思知网站](https://www.ownthink.com/);
Thanks for the data provided by [Currencyscoop 网站](https://currencyscoop.com/);
Thanks for the data provided by [新加坡交易所网站](https://www.sgx.com/zh-hans/research-education/derivatives);