API 文档

注册即调 · 沪深北全市场行情与财务数据 · 响应直接进 DataFrame

快速开始

三步拿到第一份数据,全程约 5 分钟:

  1. 注册账号 —— 控制台自动生成 API Key,免费层每日 500 次调用,长期有效
  2. 安装官方 SDK:pip install top369(偏好裸调 HTTP 或 cURL 的,在下方示例切换)
  3. 跑通下方示例 —— SDK 自动携带认证、解包信封、转成 DataFrame,拿到的就能直接算

认证分两轨(2026-10-11 起):SDK / REST 用请求头 X-API-Key: sk-xxxxxxxxxxxx(Key 在 控制台 生成,可禁用/启用);网页端控制台走 Authorization: Bearer <JWT> 短时会话(登录自动签发与刷新,无需手动管理)。SDK 已内置;偏好浏览器调试的可用 Swagger UI。

推荐:信封解包 / 类型转换 / 限流异常已内置

# 安装: pip install top369
import top369 as gp

pro = gp.pro_api("sk-xxxxxxxxxxxx",
                 base_url="https://api.369.top")

df = pro.day_kline(code="sz000001",
                   start_date="2024-01-01", adjust="qfq")
print(df.tail())

跑通之后:要的字段在哪个接口,去接口目录按数据类型找;代码格式、单位、频次等约定见通用约定;调用报错先查错误码。

通用约定

代码规范

交易所市场前缀示例
上海证券交易所shsh600519(股票) sh000001(指数)
深圳证券交易所szsz000001(股票) sz399001(指数)
北京证券交易所bjbj832000

代码参数接受四种写法: 带市场前缀(sh600519)、裸6位码(600519)、市场点号前缀(sh.600519)、tushare点号后缀(600519.SH) —— 后两种与大小写均自动归一, 响应统一返回带前缀完整码。裸6位码同码多市场时按 股票>ETF>可转债>指数 择优; 显式写了市场的写法以该市场为准, 不做择优。

单位约定

字段类型说明
volumeint成交量, 统一以「股」计(日线/分笔原始单位为手, 平台已换算)
amountfloat成交额, 单位「元」
turnoverfloat换手率(%), = 成交量(股)/流通股本(股)×100
directionstr分笔方向: '0'=买盘 '1'=卖盘 '2'=中性盘, null=缺失

所有接口的 volume/amount/涨跌幅单位全局统一,无需按接口记忆换算。

响应格式

所有接口统一返回信封 {code, message, data},业务数据在 data 里(SDK 已自动解包)。 调用出错时返回 HTTP 4xx/5xx,原因见错误码。

会员档位

档位频次上限每日调用上限可访问接口
免费版30 次/分500 次/天股票列表 / 基本信息 / 交易日历 / 日线(股票 · ETF · 可转债 · 指数)
基础版60 次/分5,000 次/天+ 复权因子 / 分钟K线(5·15·30·60 分,近 1 年)/ 板块 / ST 名单
专业版120 次/分20,000 次/天+ 分笔 / 财务 / 名称历史 / 特殊名单 / 沪深港通 / 分钟K线全历史
旗舰版300 次/分100,000 次/天全部接口 + 优先工单支持

订阅解锁档位,调用本身不计量;会员到期自动回落免费版,不拦截不误伤。每日调用按自然日重置(北京时间 0 点)。价格与加油包见定价页。

错误码

HTTP状态含义处理建议
400参数错误检查请求参数(见各接口参数表)
401API Key 缺失/格式错误/无效/停用控制台重新复制Key, 请求头 X-API-Key
403接口需要更高会员档位 / 会员已过期定价页选择档位提交开通申请(403文案含所需档位), 过期则续费
404资源不存在检查代码/日期; 停牌与未入库日期无数据
429当日配额已用尽次日自动重置, 购买加油包或升级档位
500服务器内部错误稍后重试; 持续出现请联系平台

通用排障顺序:先看 HTTP 状态码 → 再看 body 里的 detail 原文 → 参数类问题对照对应接口页的参数表。429 属正常限流,按建议退避即可。

从 Tushare 迁移

已习惯 Tushare 的用户按此对照迁移,语义差异全部列明:

Tushare 写法本平台写法说明
pro.daily(ts_code='000001.SZ')pro.day_kline(code="000001.SZ")ts_code 可原样粘贴(.SZ/.SH/.BJ/.HK 后缀与大小写都认), 也接受市场前缀(sz000001)与裸6位码; 响应统一回带前缀完整码; 另有 pro.daily() 别名
pro.weekly / pro.monthly / pro.yearlypro.period_kline(code=..., freq="weekly"/"monthly"/"yearly")无独立HTTP端点 —— SDK 拉日线后本地聚合(先复权再聚合保证正确), 配额按日线根数计
start_date='20180701'start_date="2018-07-01"日期带分隔符 YYYY-MM-DD
volume 单位=手volume 单位=股(全接口统一)已全局换算, 无需再×100
amount 单位=千元amount 单位=元
积分制(按年付费)会员订阅制(月/年付解锁档位, 调用不计量; 积分为充值赠分可抵扣)每日调用按自然日重置; 免费版含日线全历史
官方 tushare 包官方 top369 包pip install top369

SDK 已内置以上换算,推荐直接用 top369 包。

接口目录

每个接口独立成页,含完整入参/出参契约与调用示例:

行情K线

日K / 多周期分钟K线 / 分时 / 分笔 / 盘后五档 / 复权因子 / AH溢价 —— 价量原始序列与行情派生, 响应直接进 DataFrame

基础参考

证券清单 / 证券信息 / 板块归属 / ST名单与名称史 / 特殊名单与沪深港通成分 —— 代码维度的基础字典, 行情查询的先决条件

证券信息 免费可用
/api/a/stock/info

获取证券的名称/市场/类型

证券列表 免费可用
/api/a/stock/list

获取全市场证券列表, 支持名称模糊或代码精确检索

板块归属 免费可用
/api/a/stock/blocks

股票↔板块双向查询: code=查证券所属板块 / board=按板块反查成分股

交易日历 免费可用
/api/a/market/trade_calendar

获取区间内全部交易日列表(升序)。用于按交易日循环、对齐回测窗口、判断某日是否开盘

ST股名单 免费可用
/api/a/stock/st_list

获取指定日期的ST股名单(名称含ST/*ST)。历史日期自动取≤该日最近一次快照, 可还原任意历史时点的戴帽状态(回测剔除ST股用)

个股名称史 免费可用
/api/a/stock/name_history

获取个股的名称/ST戴帽/停牌状态时间线。戴帽(ST→1)、摘帽(1→0)、更名、停牌的转折点一目了然; 快照起点之前无记录

特殊名单 免费可用
/api/a/stock/special_list

特殊名单三模式(与 themes 的 theme/code 同构): 无参=可用名单目录(名称+成员数); list_name=指定名单全量成员(代码+名称); code=反查个股所属名单

沪深港通标的 免费可用
/api/a/stock/hsgt

获取沪深港通标的名单(按市场分组)

新股审核进度 免费可用
/api/a/stock/ipo_audit

新股审核/发行全队列: 过会登记/核准终止/申购起止/募资总额/批文号/上市日

主题追踪 免费可用
/api/a/stock/themes

主题题材→成分股映射: 题材名/成员数/事件日期

板块龙头榜 免费可用
/api/a/stock/bk_leaders

板块龙头榜: 各窗口(1周/1月/3月/1年)涨跌幅龙头个股 — 列含义见返回 headers

龙虎榜

每日上榜明细 / 席位明细 / 个股上榜历史 —— 游资与机构动向

打板情绪

连板天梯 / 跌停名单 / 涨停揭秘 / 大盘涨跌分布 —— 市场情绪与赚钱效应

资金流向

融资融券余额序列与个股两融历史 / 每日内外盘主动买卖统计(大单)

公司财务

报告期财务快照(约400字段: EPS / ROE / BPS / 三表科目) + F10公司资料结构化