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附带了一个截面上的基本面快照,是进行历史回测、截面分析和因子研究的重要数据源。

相关推荐
猫咪很可爱5 小时前
Oracle TEMP 表空间不足(ORA-01652)问题分析与优化实践
数据库·oracle
木子欢儿5 小时前
openconnect Linux客户端安装 以及开机自启和登录
linux·运维·服务器
..Dauntless..5 小时前
【Linux】文件系统(一)
linux·运维·服务器
九零HTTP6 小时前
10月21号-CSDN配菜-IP池的5个坑
服务器·数据库·tcp/ip
Data-Miner6 小时前
需要做财务数据分析,有什么好用的工具?从准备到出报告的实操指南
大数据·数据库·数据分析
袋鼠云数栈7 小时前
让 SQL 解析不再重复造轮子:SqlParserX 正式开源
数据库·人工智能·sql·开源·数据治理
这个DBA有点耶7 小时前
期货 CTP 系统 Oracle RAC 迁移国产库实战:读写分离架构设计与性能对标
数据库·架构·dba
数据库安全7 小时前
AI数据访问安全 |如何控制AI访问权限,防止越权
数据库·安全
GeW8 小时前
新质生产力路线图:从Linux到数据库,企业落地要点都在这
linux
IMPYLH8 小时前
Linux 系统备份与镜像
linux·服务器·网络