All Shares Float全市场流通股数据
该接口按分页批量返回全市场所有上市公司的自由流通股数(Float Shares)、总股本及自由流通比例(Free Float %)全量数据表。专为本地量化数据库一次性同步全市场股本与流通盘字典而设计,免去对数万只股票逐一发起单票查询的繁琐开销。
https://quote-fmp.com/stable/shares-float-all?page=0&limit=1000数据更新周期
Daily
接口说明
- 全市场自由流通盘底座批量同步:在搭建本地日频多因子数据库时,若对全市场数万只股票逐个调用单票流通股接口,不仅耗时漫长且极易耗尽请求配额。通过该全市场批量接口按页遍历,仅需数十次请求即可将全市场所有公司的最新股本结构完整落库。
- 全市场横截面流动性陷阱一键剔除:拿到全市场流通股大表后,量化研究员可在本地直接按“自由流通比例低于 15%”或“自由流通股市值低于 1 亿美元”做横截面一刀切过滤,一步剔除极易被资金操纵的袖珍庄股与低流通次新股。
- 全市场真实自由流通换手率因子日更:将该接口同步下来的全市场自由流通股数字段,与每日全市场批量行情中的成交量字段直接做向量化相除,即可每日秒级更新全市场数千只股票的真实自由流通换手率因子。
- 上下游关联接口:Historical Market Cap(历史市值查询) · Latest Mergers & Acquisitions(最新并购) · Company Profile Data(公司概况) · Stock Quote(股票报价)
请求参数
2 个参数| 参数 | 类型 | 要求 | 示例 | 说明 |
|---|---|---|---|---|
limit | number | 可选 | 1000 | 返回结果条数上限,用于控制单次响应大小。 |
page | number | 可选 | 0 | 分页页码,从 0 开始,配合每页条数翻页取更多数据(从 0 起算的分页游标;当响应返回空数组 [] 时代表已翻至历史末页) |
调用代码示例
Python 关键代码全市场流通股数据路径为 /stable/shares-float-all(可选 limit, page),响应 JSON 展开 freeFloat(自由流通股本)、floatShares(流通股数)、outstandingShares(发行在外股本) 共 5 列。
resp = requests.get(
"https://quote-fmp.com/stable/shares-float-all",
params={"limit": 1000, "page": 0, "apikey": FMP_KEY},
timeout=15,
)
resp.raise_for_status()
df = pd.DataFrame(resp.json())
# 按 date 升序重排并数值化 freeFloat(自由流通股本)
df["freeFloat"] = pd.to_numeric(df["freeFloat"], errors="coerce")
df = df.sort_values("date").reset_index(drop=True)参数使用和避坑
2 组参数组合 · 2 条避坑以下列出本接口在高频投研与回测场景下的常用 Query 参数组合写法:
| 投研场景 | Query 参数组合示例 | 返回数据特征与用途 |
|---|---|---|
| 读取全市场流通股数据最新首屏流(page=0, limit=50) | page=0&limit=50 | 请求 /stable/shares-float-all 首屏记录,获取最新披露的 freeFloat、floatShares、outstandingShares(样本 freeFloat=41.40900000201062)。 |
| 递增游标翻页回填全市场流通股数据(page=1, limit=100) | page=1&limit=100 | 向 /stable/shares-float-all 传 page=1&limit=100,向历史纵深翻页归档 freeFloat、floatShares、outstandingShares 等 5 列。 |
调用 /stable/shares-float-all 拉取全市场流通股数据(可选 limit, page)时,若条件未命中会返回 [];读取 freeFloat(41.40900000201062)前须先判断 not df.empty。
/stable/shares-float-all 的首条样本含 freeFloat=41.40900000201062;日常增量任务按 (symbol, date) 合并即可保持本地库与上游一致。
返回数据
5 个字段本接口示例响应共包含 5 个字段(数值型 3 个,文本/日期/布尔型 2 个)。下表列出全部字段名、类型、首条记录真实样本值与中文释义,实际返回会因接口与数据状态有所不同。
| 字段 | 类型 | 示例值 | 说明 |
|---|---|---|---|
symbol | string | "000001.SZ" | 证券代码 |
date | string | "2026-07-29 14:23:30" | 日期 |
freeFloat | number | 41.40900000201062 | 自由流通股本 |
floatShares | number | 8035796667 | 流通股数 |
outstandingShares | number | 19405918198 | 发行在外股本 |
查看响应数据示例(原始 JSON)
[
{
"symbol": "000001.SZ",
"date": "2026-07-29 14:23:30",
"freeFloat": 41.40900000201062,
"floatShares": 8035796667,
"outstandingShares": 19405918198
}
]常见问题解答(FAQ)
2 个问题全市场流通股数据(/stable/shares-float-all)产出的 freeFloat 等字段,与 流通股与流动性 的返回内容有何侧重?
全市场流通股数据(端点 /stable/shares-float-all,可选 limit, page)返回 freeFloat(自由流通股本)及 floatShares(8035796667)共 5 列;若业务需要 Company Share Float & Liquidity(流通股与流动性),可改调 /stable/shares-float(必填 symbol)。
工程团队在封装 /stable/shares-float-all(全市场流通股数据)客户端时,应采用怎样的拉取逻辑?
标准流程是递增 page(配合 limit)翻页请求 /stable/shares-float-all 直至返回 [];在拿到 全市场流通股数据 的 freeFloat 与 floatShares 后,及时释放内存中的原始文本流。
同模块相关接口对比
Shares Float本接口路径 /stable/shares-float-all,无必填参数。 同一模块「Shares Float」下共 2 个接口,下表列出其余 1 个, 按粒度与查询维度对比,避免选错接口。
| 接口 | 路径 | 核心差异与适用场景 |
|---|---|---|
| 流通股与流动性Company Share Float & Liquidity | /stable/shares-float | 指定上市公司的股本结构与自由流通盘快照,包含总股本、公开市场自由流通股数及自由流通比例 |