
akshare学习(三)
AKShare 是一个开源的 Python 库,专注于提供股票、基金、期货、期权、外汇等金融数据接口。特点:数据源丰富、接口简洁、支持主流数据格式(如 Pandas DataFrame)。适用场景:量化交易、数据分析、学术研究等。
·
一、 AKShare 简介
定位:AKShare 是一个开源的 Python 库,专注于提供股票、基金、期货、期权、外汇等金融数据接口。
akshare官网:Welcome to AKShare's Online Documentation! — AKShare 1.16.62 文档
特点:数据源丰富、接口简洁、支持主流数据格式(如 Pandas DataFrame)。
适用场景:量化交易、数据分析、学术研究等。
二、安装与配置
安装 AKShare
pip install akshare --upgrade
依赖库安装
AKShare 依赖 pandas, requests 等库,若未自动安装,可手动安装。
三、实时行情数据汇总
1、东方财富网接口群
接口名称 | 目标市场 |
---|---|
stock_zh_a_spot_em |
沪深京A股 |
stock_sh_a_spot_em |
沪市A股 |
stock_sz_a_spot_em |
深市A股 |
stock_bj_a_spot_em |
京市A股 |
stock_new_a_spot_em |
新股 |
stock_cy_a_spot_em |
创业板 |
stock_kc_a_spot_em |
科创板 |
目标都是获得相对应市场的实时行情数据;输入参数都无;
输出参数都为:
名称 | 类型 | 描述 |
---|---|---|
序号 | int64 | - |
代码 | object | - |
名称 | object | - |
最新价 | float64 | - |
涨跌幅 | float64 | 注意单位: % |
涨跌额 | float64 | - |
成交量 | float64 | 注意单位: 手 |
成交额 | float64 | 注意单位: 元 |
振幅 | float64 | 注意单位: % |
最高 | float64 | - |
最低 | float64 | - |
今开 | float64 | - |
昨收 | float64 | - |
量比 | float64 | - |
换手率 | float64 | 注意单位: % |
市盈率-动态 | float64 | - |
市净率 | float64 | - |
总市值 | float64 | 注意单位: 元 |
流通市值 | float64 | 注意单位: 元 |
涨速 | float64 | - |
5分钟涨跌 | float64 | 注意单位: % |
60日涨跌幅 | float64 | 注意单位: % |
年初至今涨跌幅 | float64 | 注意单位: % |
2、新浪财经接口
接口名称 | 输入参数 | 注意事项 |
---|---|---|
stock_zh_a_spot |
无 | 重复运行本函数会被新浪暂时封 IP, 建议增加时间间隔 |
目标:单次返回沪深京 A 股上市公司的实时行情数据。
输出参数:
名称 | 类型 | 描述 |
---|---|---|
代码 | object | - |
名称 | object | - |
最新价 | float64 | - |
涨跌额 | float64 | - |
涨跌幅 | float64 | 注意单位: % |
买入 | float64 | - |
卖出 | float64 | - |
昨收 | float64 | - |
今开 | float64 | - |
最高 | float64 | - |
最低 | float64 | - |
成交量 | float64 | 注意单位: 股 |
成交额 | float64 | 注意单位: 元 |
时间戳 | object | - |
3、雪球接口
接口名称 | 核心目标 |
---|---|
stock_individual_spot_xq |
单次获取指定 symbol 的最新行情数据 |
输入参数:
名称 | 类型 | 描述 |
---|---|---|
symbol | str | symbol="SH600000"; 证券代码,可以是 A 股个股代码,A 股场内基金代码,A 股指数,美股代码, 美股指数 |
token | float | token=None; 默认不设置token |
timeout | float | timeout=None; 默认不设置超时参数 |
输出参数:
名称 | 类型 | 描述 |
---|---|---|
item | object | - |
value | object | - |
四、示例
1、东方财富网接口群
import akshare as ak
df_all = ak.stock_zh_a_spot_em() # 沪深京A股
'''df_sh = ak.stock_sh_a_spot_em() # 沪市
df_sz = ak.stock_sz_a_spot_em() # 深市
df_bj = ak.stock_bj_a_spot_em() # 京市
df_new = ak.stock_new_a_spot_em() # 新股
df_cy = ak.stock_cy_a_spot_em() # 创业板
df_kc = ak.stock_kc_a_spot_em() # 科创板'''
print(df_all[['代码', '名称', '最新价', '涨跌幅']].head())
代码 名称 最新价 涨跌幅 0 301658 N首航 40.65 244.49 1 688580 伟思医疗 41.04 20.00 2 300844 山水比德 53.06 19.99 3 688302 海创药业-U 40.84 17.56 4 300353 东土科技 23.28 15.82
2、新浪财经接口
# 获取全市场实时行情(注意频率限制)
df_sina = ak.stock_zh_a_spot()
# 数据清洗示例
df_sina = df_sina[df_sina['最新价'] > 0] # 过滤停牌股票
df_sina['成交量(手)'] = df_sina['成交量'] / 100 # 转换单位为手
3、雪球接口
#此为akshare官网给的示例,但是运行错误:KeyError: 'data'
#翻了挺多地方,暂时没找到解决办法
import akshare as ak
stock_individual_spot_xq_df = ak.stock_individual_spot_xq(symbol="SPY")
print(stock_individual_spot_xq_df.dtypes)
更多推荐
所有评论(0)