📈 Python金融数据神器:AkShare全解析,量化交易必备!

1. 前言:别让数据阻挡你的发财路!😂

你有没有过这样的体验?兴冲冲地想写个量化交易策略,结果光是找数据就跑遍了各大网站,API文档比《红楼梦》还难懂,关键还各种限流、收费,看着账户余额直接把梦想掐灭了。

别慌!今天花姐就给大家带来一款 完全免费 的金融数据接口库------AkShare!🎉

无论是 股票、期货、基金、债券,还是加密货币,通通搞定!想做量化交易?AkShare 必须安排上!


2. AkShare 是什么?💡

AkShare 是一个基于 Python 的 金融数据接口库 ,完全开源,支持 股票、期货、基金、外汇、债券、指数、加密货币 等多种市场的数据获取。

👉 核心特点:

  • 免费开源:不用掏一分钱,白嫖党狂喜!
  • 数据丰富:A 股、美股、港股、期货、基金、外汇,样样齐全。
  • 简单易用:不需要复杂的 API 注册,直接 Python 一键获取数据。
  • 持续更新:开发者维护活跃,数据源不断拓展。

这么香的工具,赶紧来看看怎么用!🔥


3. 安装 AkShare 🚀

直接使用 pip 安装,一行命令搞定:

bash 复制代码
pip install akshare

安装速度取决于网速,如果遇到安装慢的情况,可以使用国内源:

bash 复制代码
pip install akshare -i https://pypi.tuna.tsinghua.edu.cn/simple

安装完成后,我们就可以开始愉快地拉取金融数据啦!📊


4. AkShare 核心功能详解 🔥

4.1 获取股票数据(A 股、美股、港股)

✅ 查询 A 股实时行情

python 复制代码
import akshare as ak

df = ak.stock_zh_a_spot()
print(df)

输出结果:

yaml 复制代码
   代码    名称     最新价   涨跌额    涨跌幅      买入      卖出      昨收      今开      最高      最低        成交量          成交额       时间戳
0     bj430017  星昊医药   17.00  0.29  1.735   17.00   17.05   16.71   16.81   17.40   16.72  2377569.0   40624439.0  10:34:17
1     bj430047  诺思兰德   13.72  0.19  1.404   13.71   13.72   13.53   13.63   13.78   13.42   813702.0   11086837.0  10:34:17
2     bj430090  同辉信息    7.78  0.40  5.420    7.77    7.78    7.38    7.45    7.79    7.40  5773317.0   43927823.0  10:34:17
3     bj430139  华岭股份   27.91  0.70  2.573   27.91   27.98   27.21   27.30   28.20   27.12  3639672.0  100696054.0  10:34:17
4     bj430198  微创光电   16.17  0.31  1.955   16.16   16.17   15.86   15.89   16.36   15.71  2645957.0   42524050.0  10:34:17
...        ...   ...     ...   ...    ...     ...     ...     ...     ...     ...     ...        ...          ...       ...
5391  sz301626  苏州天脉   90.99  1.88  2.110   90.98   90.99   89.11   88.80   91.50   88.65   586400.0   52904732.0  10:36:03
5392  sz301628  强达电路  102.16 -2.24 -2.146  102.15  102.16  104.40  102.50  104.10  100.00  1695387.0  172488306.0  10:36:03
5393  sz301631  壹连科技  134.36  0.48  0.359  134.37  134.50  133.88  133.90  134.70  133.00   403772.0   54013048.0  10:36:00
5394  sz301633  港迪技术   87.38 -0.84 -0.952   87.38   87.40   88.22   88.30   88.86   87.01   336300.0   29438178.0  10:36:00
5395  sz302132  中航成飞   61.96 -0.19 -0.306   61.91   61.96   62.15   62.00   62.50   61.58  2023800.0  125329607.0  10:36:03

[5396 rows x 14 columns]

🔹 解读:

  • stock_zh_a_spot() 获取 A 股市场全部的实时数据。
  • 直接返回一个 Pandas DataFrame,包含股票代码、名称、最新价、涨跌幅等信息。

✅ 查询指定股票的历史数据

python 复制代码
df = ak.stock_zh_a_hist(symbol="000001", period="daily", start_date="20230101", end_date="20240301" ,adjust="qfq")
print(df)

输出结果:

yaml 复制代码
 日期    股票代码     开盘     收盘     最高     最低      成交量           成交额    振幅   涨跌幅   涨跌额   换手率
0    2024-01-02  000001   8.43   8.25   8.46   8.25  1158366  1.075742e+09  2.49 -2.14 -0.18  0.60
1    2024-01-03  000001   8.23   8.24   8.26   8.19   733610  6.736736e+08  0.85 -0.12 -0.01  0.38
2    2024-01-04  000001   8.23   8.15   8.23   8.12   864194  7.874701e+08  1.33 -1.09 -0.09  0.45
3    2024-01-05  000001   8.14   8.31   8.48   8.11  1991622  1.852660e+09  4.54  1.96  0.16  1.03
4    2024-01-08  000001   8.27   8.19   8.34   8.15  1121156  1.029007e+09  2.29 -1.44 -0.12  0.58
..          ...     ...    ...    ...    ...    ...      ...           ...   ...   ...   ...   ...
283  2025-03-10  000001  11.66  11.59  11.67  11.55   663834  7.692614e+08  1.03 -0.69 -0.08  0.34
284  2025-03-11  000001  11.54  11.61  11.61  11.52   608975  7.042405e+08  0.78  0.17  0.02  0.31
285  2025-03-12  000001  11.60  11.85  11.87  11.56  1877318  2.210904e+09  2.67  2.07  0.24  0.97
286  2025-03-13  000001  11.81  11.84  11.91  11.78  1312371  1.555123e+09  1.10 -0.08 -0.01  0.68
287  2025-03-14  000001  11.82  11.98  11.99  11.82   836460  9.980182e+08  1.44  1.18  0.14  0.43

[288 rows x 12 columns]

🔹 解读:

  • symbol="000001" 是平安银行的股票代码。
  • period="daily" 获取日线数据(支持日、周、月周期)。
  • start_dateend_date 指定时间范围。
  • adjust 前复权:qfq,后复权hfq ,不复权:不填

是不是比某些收费 API 还方便?💰 省下 API 费用,直接加仓不香吗?😂


4.2 期货数据获取

✅ 查询国内期货实时行情

python 复制代码
df = ak.futures_zh_spot(symbol="SN0" ,market="CF" ,adjust="0")  
print(df)

输出结果:

sql 复制代码
  symbol    time      open      high       low  current_price  bid_price  ask_price  buy_vol  sell_vol     hold  volume  avg_price  last_close  last_settle_price
0    锡连续  110337  264860.0  291510.0  264080.0       291510.0   291510.0        0.0     3255         0  41903.0  346237        0.0         0.0           265010.0

🔹 解读:

  • futures_zh_spot() 新浪财经-期货页面的实时行情数据
  • symbol="SN0" 指定具体的期货合约代码。
  • market: "CF": 商品期货, "FF": 金融期货
  • adjust:'0'; '1': 返回合约、交易所和最小变动单位的实时数据

4.3 获取基金数据 🏦

4.3.1 获取开放式基金净值数据

python 复制代码
df = ak.fund_open_fund_daily_em() #当前交易日的所有开放式基金净值数据
print(df)

输出结果:

erlang 复制代码
基金代码            基金简称 2025-03-13-单位净值 2025-03-13-累计净值 2025-03-12-单位净值 2025-03-12-累计净值    日增长值  日增长率  申购状态  赎回状态    手续费
0      519212    万家宏观择时多策略混合A          2.1819          2.1819          2.0895          2.0895  0.0924  4.42   限大额  开放赎回  0.15%
1      017787    万家宏观择时多策略混合C          2.1593          2.1593          2.0679          2.0679  0.0914  4.42   限大额  开放赎回  0.00%
2      519185         万家精选混合A          1.5552          2.9295          1.4935          2.8678  0.0617  4.13   限大额  开放赎回  0.15%
3      015566         万家精选混合C            1.53          1.6562          1.4693          1.5955  0.0607  4.13   限大额  开放赎回  0.00%
4      161032  富国中证煤炭指数(LOF)A           1.858           1.295           1.785           1.244   0.073  4.09  开放申购  开放赎回  0.00%
...       ...             ...             ...             ...             ...             ...     ...   ...   ...   ...    ...
20564  021095       东方低碳经济混合C                                                                                暂停申购  暂停赎回  0.00%
20565  022657         建信丰融债券A                                                                                暂停申购  暂停赎回  0.08%
20566  022658         建信丰融债券C                                                                                暂停申购  暂停赎回  0.00%
20567  023396  宝盈北证50成份指数发起式C                                                                                暂停申购  暂停赎回  0.00%
20568  022493    金元顺安鑫怡混合发起式C                                                                                暂停申购  暂停赎回  0.00%

[20569 rows x 11 columns]

🔹 解读:

  • fund_open_fund_daily_em 东方财富网-天天基金网-基金数据-开放式基金净值
  • 返回基金的代码、名称、净值等信息。

4.3.2 获取开放式基金-单位净值走势

python 复制代码
df = ak.fund_open_fund_info_em(symbol="015566", indicator="单位净值走势" ) #万家精选混合C 走势
print(df)

输出结果:

yaml 复制代码
           净值日期    单位净值  日增长率
0    2022-04-25  1.2707  0.00
1    2022-04-26  1.2302 -3.19
2    2022-04-27  1.2696  3.20
3    2022-04-28  1.3437  5.84
4    2022-04-29  1.3587  1.12
..          ...     ...   ...
697  2025-03-07  1.4558  0.81
698  2025-03-10  1.4755  1.35
699  2025-03-11  1.4759  0.03
700  2025-03-12  1.4693 -0.45
701  2025-03-13  1.5300  4.13

[702 rows x 3 columns]

🔹 解读:

  • fund_open_fund_info_em 东方财富网-天天基金网-基金数据-具体基金信息
  • symbol 代表基金代码。
  • indicator 值可选 单位净值走势、累计净值走势
  • period 该参数只对 累计收益率走势 有效, 可选择的值有 "1月", "3月", "6月", "1年", "3年", "5年", "今年来", "成立来"

4.4 获取加密货币数据💰

python 复制代码
df = ak.crypto_js_spot() #加密货币实时行情
print(df)

输出结果:

yaml 复制代码
市场    交易品种         最近报价        涨跌额   涨跌幅       24小时最高       24小时最低   24小时成交量                 更新时间
0    Bitfinex(香港)  LTCUSD       67.465       0.59  0.87       68.867       66.259   6893.13  2023-10-02 22:45:09
1    Bitflyer(日本)  BTCJPY  4244238.000  191147.00  4.72  4278000.000  4042615.000   1803.99  2023-10-02 22:45:09
2    Bitstamp(美国)  BTCUSD    28309.000    1192.00  4.40    28592.000    27044.000   2667.55  2023-10-02 22:45:09
3      CEX.IO(伦敦)  BTCUSD    28332.400    1200.50  4.42    28548.400    27071.000      8.04  2023-10-02 22:45:09
4  Kraken_EUR(美国)  BTCEUR    26960.100    1328.10  5.18    27187.800    25572.800   1492.30  2023-10-02 22:45:09
5      Kraken(美国)  LTCUSD       67.410       0.50  0.75       68.760       66.250  28818.47  2023-10-02 22:45:09
6      OKCoin(中国)  BTCUSD    28312.570    1205.51  4.45    28482.250    27063.520      1.81  2023-10-02 22:45:09
7    Bitfinex(香港)  BCHUSD        0.000       0.00  0.00        0.000        0.000      0.00  2020-11-16 21:02:04
8    Bitfinex(香港)  BTCUSD    28323.000    1198.00  4.42    28611.000    27063.000   2656.08  2023-10-02 22:45:09
9      Kraken(美国)  BTCUSD    28320.000    1217.60  4.49    28572.500    27059.600   3632.92  2023-10-02 22:45:09

🔹 解读:

  • crypto_js_spot 单次返回主流加密货币当前时点行情数据

5. AkShare 进阶玩法 🌟

结合 pandas 进行数据分析

python 复制代码
import pandas as pd

stock_df = ak.stock_zh_a_spot()
filtered_df = stock_df[stock_df["涨跌幅"] > 5]  # 找出涨幅超过 5% 的股票
print(filtered_df)

🔹 解读:

  • 直接用 Pandas 进行数据筛选,找出涨幅超过 5% 的股票。
  • 结合 matplotlibseaborn 可以直接绘制数据可视化。

6. 使用建议

AKShare本质是帮我们把全网公开金融数据都写成了爬虫,数据获取对网络要求比较高,频繁访问会导致IP被封。经过多次使用,使用东方财富网的数据接口对IP限制比较少,不容易被封IP,速度还快。

同时推荐把历史数据存放数据库或者存成本地csv文件再进行量化效果更好。

7. 总结 🎯

AkShare 绝对是 Python 量化分析必备的神器 ,不仅 免费,还支持超多金融数据,API 设计简单易用。

📌 适用人群: ✅ 量化交易爱好者 ✅ 金融数据分析师 ✅ 股票、期货、基金、加密货币研究者

💡 核心亮点:

  • 数据齐全:涵盖全球主要金融市场。
  • 开源免费:不用担心 API 限流或高昂费用。
  • Python 友好:直接返回 Pandas DataFrame,和数据分析无缝衔接。

强烈建议大家赶紧试试 AkShare,别让数据难住你的财富之路!💰

👉 顺手点赞 + 在看就是对花姐最大的支持!🎉

相关推荐
Moonbit1 分钟前
「码力全开,论道蓉城」MoonBit Meetup 携技术专家来成都啦!
后端·面试·开源
新时代农民工Top7 分钟前
React + JavaScript 实现可拖拽进度条
前端·javascript·react.js
架构精进之路18 分钟前
Deepseek 这么厉害,普通人怎么用好它?
后端·langchain·ai编程
weixin_3077791320 分钟前
Python Pandas实现导出两个Excel数据集的分组记录数分析
开发语言·python·pandas
陌漠ardently33 分钟前
正则表达式和excel文件保存(python)
python·mysql·excel
2303_Alpha35 分钟前
深度学习入门:神经网络的学习
人工智能·python·深度学习·神经网络·学习·机器学习
Q1860000000039 分钟前
如何把pdf的内容转化成结构化数据进行存储到mysql数据库
数据库·python·mysql·pdf
9ilk1 小时前
【前端基础】--- HTML
前端·html
Lafar1 小时前
Dart单线程怎么保证UI运行流畅
前端·面试
uhakadotcom1 小时前
BentoML远程代码执行漏洞(CVE-2025-27520)详解与防护指南
后端·算法·面试