官方文档:https://tushare.pro/document/2?doc_id=370
功能描述:获取A股分钟数据,支持1min/5min/15min/30min/60min行情
返回限量:单次请求最大返回8000行
接口权限:需单独开通权限
说明:
1. 每日19点~20点更新当日数据;
2. 本接口暂未包含盘后固定价格交易的分钟行情;
3. 本接口各频率统计区间口径是除了开盘第一个区间是左闭右闭之外,其他区间是左开右闭的,如“(HH:MM:00, HH:MM+1:00]”内的交易数据记为HH:MM+1:00。早盘盘前竞价数据记为“09:00:00”。示例1中一天有241个1min数据,示例4中没有13:00:00便是这个原因;
4. 本接口默认返回最近10个日历天的数据,示例2有较为详尽的演示说明;
输入参数:
名称 | 类型 | 必选 | 描述 |
ts_code | str | Y | 股票代码 |
freq | str | Y | 分钟频度:1min/5min/15min/30min/60min |
start_date | datetime | N | 开始日期(格式:yyyy-mm-dd HH:MM:SS) |
end_date | datetime | N | 结束时间(格式:yyyy-mm-dd HH:MM:SS) |
freq参数说明:
freq | 说明 |
1min | 1分钟 |
5min | 5分钟 |
15min | 15分钟 |
30min | 30分钟 |
60min | 60分钟 |
输出参数:
名称 | 类型 | 默认显示 | 描述 |
ts_code | str | Y | 股票代码 |
trade_time | str | Y | 交易时间 |
open | float | Y | 开盘价 |
close | float | Y | 收盘价 |
high | float | Y | 最高价 |
low | float | Y | 最低价 |
vol | int | Y | 成交量(股) |
amount | float | Y | 成交金额(元) |
示例:
示例1:获取某支股票某个交易日的1分钟行情
将“00:00:00”和“23:59:59”追加到某交易日期之后分别设置为start_date和end_date即可获取某个交易日的行情。ts_code用于指定特定股票,freq用于指定分钟数据的频率。本示例演示如何获取浦发银行2026-07-13日的1分钟行情。
import tushare as ts pro = ts.pro_api() df = pro.stk_mins(ts_code='600000.SH', freq='1min', start_date='2026-07-13 00:00:00', end_date='2026-07-13 23:59:59') df输出结果:
ts_code trade_time close open high low vol amount 0 600000.SH 2026-07-13 15:00:00 9.19 9.19 9.19 9.19 920200.0 8456638.0 1 600000.SH 2026-07-13 14:59:00 9.19 9.19 9.19 9.19 0.0 0.0 2 600000.SH 2026-07-13 14:58:00 9.19 9.19 9.19 9.19 500.0 4595.0 3 600000.SH 2026-07-13 14:57:00 9.18 9.19 9.20 9.18 612739.0 5634140.0 4 600000.SH 2026-07-13 14:56:00 9.19 9.20 9.20 9.18 659200.0 6058943.0 ... ... ... ... ... ... ... ... ... 236 600000.SH 2026-07-13 09:34:00 9.03 9.02 9.03 9.01 708100.0 6386584.0 237 600000.SH 2026-07-13 09:33:00 9.03 9.05 9.05 9.01 1623800.0 14663877.0 238 600000.SH 2026-07-13 09:32:00 9.05 9.03 9.06 9.02 730300.0 6603185.0 239 600000.SH 2026-07-13 09:31:00 9.02 9.03 9.03 9.01 1519500.0 13709893.0 240 600000.SH 2026-07-13 09:30:00 9.04 9.04 9.04 9.04 309700.0 2799688.0 241 rows × 8 columns示例2:仅传递股票代码`ts_code`和分钟频率`freq`
向参数freq传入不同频率的值可以获得不同频率的分钟数据,可传入的频率有1min、5min、15min、30min、60min。本接口默认返回最近10个日历天的数据,例如当前时间是“2026-07-14 14:05:23”,那么start_date默认相当于“2026-07-05 00:00:00”,而end_date默认相当于“2026-07-14 23:59:59”。
df = pro.stk_mins(ts_code='600000.SH', freq='5min') df输出结果:
ts_code trade_time close open high low vol amount 0 600000.SH 2026-07-13 15:00:00 9.19 9.20 9.20 9.18 2192639.0 20154316.0 1 600000.SH 2026-07-13 14:55:00 9.19 9.19 9.20 9.18 1962600.0 18031276.0 2 600000.SH 2026-07-13 14:50:00 9.19 9.18 9.19 9.17 1764100.0 16197290.0 3 600000.SH 2026-07-13 14:45:00 9.18 9.18 9.18 9.17 1590211.0 14592273.0 4 600000.SH 2026-07-13 14:40:00 9.17 9.17 9.18 9.16 1571119.0 14406921.0 ... ... ... ... ... ... ... ... ... 289 600000.SH 2026-07-06 09:50:00 8.66 8.68 8.68 8.64 1877200.0 16245966.0 290 600000.SH 2026-07-06 09:45:00 8.67 8.69 8.72 8.67 3094472.0 26917996.0 291 600000.SH 2026-07-06 09:40:00 8.68 8.67 8.71 8.66 2733301.0 23732088.0 292 600000.SH 2026-07-06 09:35:00 8.67 8.68 8.68 8.62 2757527.0 23850820.0 293 600000.SH 2026-07-06 09:30:00 8.68 8.68 8.68 8.68 291700.0 2531956.0 294 rows × 8 columns示例3:传入`start_date`和`end_date`参数
本示例演示了通过传入start_date和end_date参数获取一段时间区间内的行情。由于最大返回8000条数据,如果是1min行情的话则相当于33个交易日的数据量。所以如果想将数据下载到本地,可先按月进行循环迭代获取历史数据之后再按交易日每日更新最新数据。下面演示如何获取浦发银行2026年2月的1min行情。
由于传递错误的时间(如"2026-02-31 23:59:59")会报错,故而为了方便,可以使用次月零点作为
end_date参数。
df = pro.stk_mins(ts_code='600000.SH', freq='1min', start_date='2026-02-01 00:00:00', end_date='2026-03-01 00:00:00') df结果输出:
ts_code trade_time close open high low vol amount 0 600000.SH 2026-02-27 15:00:00 9.72 9.72 9.72 9.72 5939717.0 57734050.0 1 600000.SH 2026-02-27 14:59:00 9.74 9.74 9.74 9.74 0.0 0.0 2 600000.SH 2026-02-27 14:58:00 9.74 9.74 9.74 9.74 0.0 0.0 3 600000.SH 2026-02-27 14:57:00 9.74 9.72 9.74 9.72 503125.0 4896410.0 4 600000.SH 2026-02-27 14:56:00 9.72 9.74 9.74 9.72 674589.0 6565173.0 ... ... ... ... ... ... ... ... ... 3369 600000.SH 2026-02-02 09:34:00 10.08 10.07 10.08 10.07 819100.0 8251768.0 3370 600000.SH 2026-02-02 09:33:00 10.08 10.07 10.09 10.07 1279100.0 12887259.0 3371 600000.SH 2026-02-02 09:32:00 10.08 10.06 10.08 10.05 1112509.0 11193183.0 3372 600000.SH 2026-02-02 09:31:00 10.05 10.03 10.07 10.03 823400.0 8281187.0 3373 600000.SH 2026-02-02 09:30:00 10.04 10.07 10.07 10.04 709900.0 7146588.0 3374 rows × 8 columns示例4:获取日内某段时间1min行情
本示例还演示了如果想要获取多支股票的分钟行情,可以向ts_code传入以英文逗号分割的股票代码列表字符串。
df = pro.stk_mins(ts_code='600000.SH,000001.SZ', freq='1min', start_date='2026-07-13 11:28:00', end_date='2026-07-13 13:02:00') df输出结果:
ts_code trade_time close open high low vol amount 0 600000.SH 2026-07-13 13:02:00 9.19 9.18 9.19 9.17 194500.0 1785160.0 1 000001.SZ 2026-07-13 13:02:00 10.53 10.53 10.54 10.52 420300.0 4425996.0 2 600000.SH 2026-07-13 13:01:00 9.18 9.18 9.19 9.17 681000.0 6252242.0 3 000001.SZ 2026-07-13 13:01:00 10.53 10.55 10.55 10.53 525604.0 5538334.0 4 600000.SH 2026-07-13 11:30:00 9.18 9.19 9.19 9.18 63900.0 586977.0 5 000001.SZ 2026-07-13 11:30:00 10.55 10.53 10.55 10.53 103000.0 1085557.0 6 600000.SH 2026-07-13 11:29:00 9.18 9.18 9.19 9.18 36800.0 338148.0 7 000001.SZ 2026-07-13 11:29:00 10.54 10.54 10.55 10.54 134600.0 1418914.0 8 600000.SH 2026-07-13 11:28:00 9.18 9.18 9.19 9.18 215200.0 1975860.0 9 000001.SZ 2026-07-13 11:28:00 10.54 10.53 10.55 10.53 699600.0 7379183.0说明:
本文说明
本文旨在对Tushare的股票历史分钟行情stk_mins数据接口进行介绍,提供更多参考示例和使用说明。
股票分钟行情作为中高频数据,在投资中扮演着极其重要的角色。本文介绍了如何获取不同频率的分钟行情、常见的参数设置以及简要介绍了统计区间口径。
本文目的是为了让用户和AIGC工具能够更便捷、准确地使用该接口。大家在使用过程中遇到什么问题和建议可在线留言,作者会进行数据探索将结果更新到文章中,并将建议反馈给Tushare团队。本文另一个目的也是为了聚集大家的智慧以创建“我为人人,人人为我”的共创氛围。