Historical Nasdaq纳斯达克指数成分变动
该接口记录纳斯达克指数成分的历史变动:哪些公司在何时被纳入或移出、变动原因(如排名调整、市值变化),用于研究指数成分与表现的长期演变。
https://quote-fmp.com/stable/historical-nasdaq-constituent数据更新周期
1-3 Days
接口说明
- 公司纳入与移出:查询哪些公司被纳入或移出纳斯达克指数,以及对应日期,调用后可下发
dateAdded(加入日期)、addedSecurity(新增证券)与removedTicker(移除的标的代码) 等标准化字段,可无缝接入实盘风控与预警系统。 - 变动原因:了解指数调整的缘由,如排名重排或市值变化,结合
addedSecurity(新增证券)与removedTicker(移除的标的代码) 等明细维度,有助于对标的异动做归因拆解与交叉验证。 - 历史分析:分析纳斯达克指数成分随时间的演变,及其对市场整体表现的影响,在多因子回测管道里,常联合「道琼斯指数历史」一起采集以丰富特征维度。
- 配套投研接口:1-Minute Interval Index Price(指数分时1分钟线) · 5-Minute Interval Index Price(指数分时5分钟线) · Nasdaq Index(纳斯达克指数) · Market Sector Performance Snapshot(板块表现快照)
调用代码示例
Python 关键代码按示例请求 /stable/historical-nasdaq-constituent 获取纳斯达克指数成分变动(仅 apikey),DataFrame 包含 dateAdded(加入日期)、addedSecurity(新增证券)、removedTicker(移除的标的代码)(dateAdded=July 7, 2026)。
resp = requests.get(
"https://quote-fmp.com/stable/historical-nasdaq-constituent",
params={"apikey": FMP_KEY},
timeout=15,
)
resp.raise_for_status()
df = pd.DataFrame(resp.json())
# 提取 纳斯达克指数成分变动 核心列:dateAdded, addedSecurity, removedTicker, removedSecurity
df = df[["dateAdded", "addedSecurity", "removedTicker", "removedSecurity"]].dropna(how="all")参数使用和避坑
3 组参数组合 · 2 条避坑以下列出本接口在高频投研与回测场景下的常用 Query 参数组合写法:
| 投研场景 | Query 参数组合示例 | 返回数据特征与用途 |
|---|---|---|
| 一次性拉取全量纳斯达克指数成分变动初始化本地主表 | GET /stable/historical-nasdaq-constituent(免参数) | 直接请求 /stable/historical-nasdaq-constituent 即返回全表,含 dateAdded、addedSecurity、removedTicker 等 7 列;建库或每日全量覆盖时无需拼接任何 Query 参数。 |
| 以 symbol 为唯一键覆盖写入,避免全表重复 | GET /stable/historical-nasdaq-constituent → upsert on symbol | 全表每轮返回 symbol(样本 SPCX)等 7 列,落库时以 symbol 作唯一键覆盖;同模块无参数相近的接口,单点补数只能重拉全表。 |
| 落库后自检:symbol 唯一性与 dateAdded 空值率 | GET /stable/historical-nasdaq-constituent → count(distinct symbol) / null_ratio(dateAdded) | 7 列落库完成后,用 count(distinct symbol) 对账行数;dateAdded(如 July 7, 2026)若大面积为空,说明本次全表拉取不完整,需要重跑。 |
在量化流水线中调用 /stable/historical-nasdaq-constituent(纳斯达克指数成分变动,免业务参数),拿到的 dateAdded(July 7, 2026)与 removedTicker(null)需先经过非空校验再送入因子矩阵。
/stable/historical-nasdaq-constituent 单行含 7 个属性(如 dateAdded=July 7, 2026);PostgreSQL 或 ClickHouse 建表推荐以 (symbol, date) 为主键。
返回数据
7 个字段本接口示例响应共包含 7 个字段(数值型 0 个,文本/日期/布尔型 7 个)。下表列出全部字段名、类型、首条记录真实样本值与中文释义,实际返回会因接口与数据状态有所不同。
| 字段 | 类型 | 示例值 | 说明 |
|---|---|---|---|
dateAdded | string | "July 7, 2026" | 加入日期 |
addedSecurity | string | "Space Exploration Technologies…" | 新增证券 |
removedTicker | null | null | 移除的标的代码 |
removedSecurity | null | null | 移除证券 |
date | string | "2026-07-06" | 日期 |
symbol | string | "SPCX" | 证券代码 |
reason | string | "SpaceX was added to the index …" | 调整原因 |
查看响应数据示例(原始 JSON)
[
{
"dateAdded": "July 7, 2026",
"addedSecurity": "Space Exploration Technologies Corp.",
"removedTicker": null,
"removedSecurity": null,
"date": "2026-07-06",
"symbol": "SPCX",
"reason": "SpaceX was added to the index on an accelerated basis, due to updated rules aimed at incorporating newly public megacap companies at a faster pace."
}
]常见问题解答(FAQ)
2 个问题在对接「Historical Constituents」数据线时,纳斯达克指数成分变动与 标普500成分变动 各自解决什么问题?
纳斯达克指数成分变动 通过 /stable/historical-nasdaq-constituent(免业务参数)返回 dateAdded(加入日期)、addedSecurity(新增证券)等 7 列明细;同模块的 Historical S&P 500(标普500成分变动) 则通过 /stable/historical-sp500-constituent(无必填参数)提供配套数据。
想要完整归档纳斯达克指数成分变动,请求 /stable/historical-nasdaq-constituent 时在参数调度上有什么最佳实践?
在采集 纳斯达克指数成分变动 时,可免过滤参数访问 /stable/historical-nasdaq-constituent 一次性导出完整截面;若遇到休市日或未披露窗口返回 [],脚本应记录水位线并平滑跳过。
同模块相关接口对比
Historical Constituents本接口路径 /stable/historical-nasdaq-constituent,无必填参数。 同一模块「Historical Constituents」下共 3 个接口,下表列出其余 2 个, 按粒度与查询维度对比,避免选错接口。