Tushare接口文档:股票历史列表(bak_basic)

  • 官方文档https://tushare.pro/document/2?doc_id=262
  • 功能描述:获取股票基本信息每日历史记录
  • 返回限量:单次请求最大返回7000行
  • 接口权限:5000积分:500次/分钟
  • 说明

本接口是股票基本信息的每日快照,但每天会更新多次。注意当日数据的更新。示例2有更加详细的演示。

输入参数:

名称 类型 必选 描述
trade_date str N 交易日期
ts_code str N 股票代码

输出参数:

名称 类型 默认显示 描述
trade_date str Y 交易日期
ts_code str Y TS股票代码
name str Y 股票名称
industry str Y 行业
area str Y 地域
pe float Y 市盈率(动)
float_share float Y 流通股本(亿)
total_share float Y 总股本(亿)
total_assets float Y 总资产(亿)
liquid_assets float Y 流动资产(亿)
fixed_assets float Y 固定资产(亿)
reserved float Y 公积金
reserved_pershare float Y 每股公积金
eps float Y 每股收益
bvps float Y 每股净资产
pb float Y 市净率
list_date str Y 上市日期
undp float Y 未分配利润
per_undp float Y 每股未分配利润
rev_yoy float Y 收入同比(%)
profit_yoy float Y 利润同比(%)
gpr float Y 毛利率(%)
npr float Y 净利润率(%)
holder_num int Y 股东人数

示例:

示例1:查询指定日期的全市场股票列表

通过传递trade_date可指定返回数据的交易日期。传递fields参数可指定返回数据的字段列表。

python 复制代码
import tushare as ts
pro = ts.pro_api()

df = pro.bak_basic(trade_date='20260821', fields='trade_date,ts_code,name,industry,pe')
df

输出结果:

xml 复制代码
  trade_date	ts_code	name	industry	pe
0	20260821	000001.SZ	平安银行	银行	4.30
1	20260821	000002.SZ	万 科A	全国地产	0.00
2	20260821	000006.SZ	深振业A	区域地产	320.13
3	20260821	000007.SZ	全新好	其他商业	0.00
4	20260821	000008.SZ	神州高铁	运输设备	0.00
...	...	...	...	...	...
5553	20260821	920982.BJ	锦波生物	医疗保健	25.35
5554	20260821	920985.BJ	海泰新能	电气设备	0.00
5555	20260821	920992.BJ	中科美菱	医疗保健	57.09
5556	20260821	920071.BJ	金钛股份	小金属	0.00
5557	20260821	920288.BJ	华大海天	造纸	0.00
5558 rows × 5 columns

示例2:查询指定股票的历史数据

通过传递ts_code可指定特定的股票。

示例运行时间是2026/08/21 14:00,此时已经存在8/21日的数据,此时的PE还是和前一天一样。注意该条记录会在晚上进行更新。

python 复制代码
df = pro.bak_basic(ts_code='000001.SZ', fields='trade_date,ts_code,name,industry,pe')
df

输出结果:

xml 复制代码
  trade_date	ts_code	name	industry	pe
0	20260821	000001.SZ	平安银行	银行	4.30
1	20260820	000001.SZ	平安银行	银行	4.30
2	20260819	000001.SZ	平安银行	银行	4.26
3	20260818	000001.SZ	平安银行	银行	4.17
4	20260817	000001.SZ	平安银行	银行	4.19
...	...	...	...	...	...
2409	20160815	000001.SZ	平安银行	银行	6.76
2410	20160812	000001.SZ	平安银行	银行	6.70
2411	20160811	000001.SZ	平安银行	银行	6.50
2412	20160809	000001.SZ	平安银行	银行	6.45
2413	20151205	000001.SZ	平安银行	银行	6.51
2414 rows × 5 columns

示例3:股东人数变化分析

通过对比不同日期的 holder_num(股东人数)字段,可以分析个股的筹码集中度变化趋势。

python 复制代码
import pandas as pd

# 获取某只股票在两个时间点的股东人数
ts_code = '000001.SZ'
dates = ['20211231', '20221230', '20231229', '20241231', '20251231']

df_list = []
for date in dates:
    df = pro.bak_basic(
        trade_date=date,
        ts_code=ts_code,
        fields='trade_date,ts_code,name,holder_num'
    )
    df_list.append(df)

df_compare = pd.concat(df_list, ignore_index=True)
print(df_compare)

输出结果:

xml 复制代码
  trade_date    ts_code  name  holder_num
0   20211231  000001.SZ  平安银行      390490
1   20221230  000001.SZ  平安银行      547735
2   20231229  000001.SZ  平安银行      530229
3   20241231  000001.SZ  平安银行      517695
4   20251231  000001.SZ  平安银行      453515

说明:

bak_basic返回指定交易日全部股票的基础信息与核心财务指标,包括股票代码、名称、行业、地域、市盈率、股本、资产、每股收益、市净率、股东人数等。与仅提供股票代码和名称的stock_basic接口相比,bak_basic附带了一个截面上的基本面快照,是进行历史回测、截面分析和因子研究的重要数据源。

相关推荐
m0_547486661 分钟前
《大数据技术与应用:Hadoop和PySpark实现》全套PPT课件2026
大数据·hadoop
风哥2号2 分钟前
数据库教程FGMT18‑Oracle‑EMCC智能化集中运维管理系统
运维·数据库·oracle
小此方4 分钟前
Linux网络(十):HTTP请求是如何被服务器解析的?从请求报文、路径处理到响应状态码与异常处理
linux·服务器·网络
少司府13 分钟前
Linux系统篇(一)指令篇·一:初识Linux及其基本指令
linux·运维·服务器·网络·阿里云·linux系统
starzy19901 小时前
Flink高级之富函数类深度剖析:执行时序、状态注册与序列化陷阱
大数据·flink
一切如来心秘密1 小时前
智驾数据闭环湖仓实战: Apache Paimon 分层建模实践
大数据·智驾数据闭环
Zixhy2 小时前
手撕Reactor模型实现同步高并发服务器及Muduo网络库深入解析
linux·服务器·网络·数据库·c++
迷途之人不知返2 小时前
【进程】-4-进程状态(2):Linux中的进程状态
linux
tedcloud1239 小时前
Wand-Enhancer 怎么搭建?开源 Wand 客户端增强与远程控制工具介绍
大数据·服务器·人工智能·开源·音视频
程序员清风9 小时前
Java 后端高并发设计:线程池、限流、熔断与降级
java·数据库·oracle