供应商候选名单
所有数据均来自各供应商自己的页面,查阅日期为 2026 年 11 月 3 日。结算惯例由各交易场所自行规定,这些来源都不能替代其规则手册。Narwhal API 由 Nusantara Ventures, LLC 拥有并运营。
美联储的 Federal Reserve Financial Services
FedCash 和 FedACH 美元支付系统的休息日。
ECB T2(TARGET,欧洲央行)
欧元支付结算的休息日。
比较选项
最佳选择不等于功能一致。请同时查看证据和限制。
| 供应商 | 最适合 | 已核查的依据 | 重要限制 |
|---|---|---|---|
| Narwhal API | 在你自己的代码中统计 T+N 个工作日时,跳过各国的公共假日。 | 基于政府官方来源,提供 37 个国家的公共假日,可按年份、按日期以及从某日期起查询下一个假日。调用价格为每 1,000 次 $2,每个账户每月有 $10 免费额度。 | 没有交易所交易日历、提前收市或半日市。一个国家的公共假日可能与交易所或支付系统的休息日不同。 |
| EODHD | 73 家已验证交易所的休市日,包括提前收市及其收市时间。 | 每个休市日被标为 Official、Bank 或 EarlyClose,并带有 13:00:00 这样的时间。文档中提到每月 $99.99 的 All-In-One 套餐,Market Status 附加项起价为 $50。 | 版本 2 只返回当年的数据。交易所数量在一个页面上写 73,另一个页面上写 60+,限制这个调用的套餐或附加项也不明确。 |
| Massive(原 Polygon.io) | 提供美国休市和提前收市(含开收盘时间),以及期货交易时段日程。 | upcoming 接口返回日期、交易所、名称以及休市或提前收市状态。从 Free 到每月 $199 的 Advanced,所有 Stocks 套餐都包含它。 | 仅提供未来数据,没有说明范围,也没有历史数据。示例中出现了 NYSE、NASDAQ 和 OTC,完整的交易所列表没有说明。 |
| Finnhub | 按交易所列出休市日,并给出半日交易的交易时间,同时提供开市或闭市状态调用。 | market-holiday 调用返回事件名称、日期和 tradingHour,例如 09:30-13:00。规范中没有标注为付费功能。 | 价格、交易所列表、日期范围和速率限制这些页面由 JavaScript 渲染,因此无法读取。 |
| Financial Modeling Prep | 适合想从可能已在用于价格和财报披露的供应商处获取各交易所休市列表的场景。 | 该调用接受交易所以及起止日期。套餐表显示,从每天允许 250 次调用的免费 Basic 套餐起似乎就包含它。 | 文档页面没有展示响应字段,也未记录提前收市,页面数据还把该接口标记为 staging。 |
| Twelve Data | 对 250 多家交易所实时检查当前是否开市,并提供单日的交易时段时间。 | 市场状态消耗 1 个额度。交易所日程每次请求消耗 100 个额度,需要 $999 的 Ultra 套餐或 Enterprise。 | 文档中没有休市日列表或提前收市接口,价格页面还给出了两组相互冲突的每分钟限额。 |
| 美联储的 Federal Reserve Financial Services | FedCash 和 FedACH 美元支付系统的休息日。 | 2026 年至 2030 年的 FedCash 日程列出了 2026 年的 11 个休息日,从 1 月 1 日到 12 月 25 日。FedACH 表另附处理截止和恢复的时间戳。 | 这是网页而非 API。它介绍的是支付系统,对证券 T+N 结算只字未提。 |
| ECB T2(TARGET,欧洲央行) | 欧元支付结算的休息日。 | T2 周一至周五运行。欧元结算在 1 月 1 日、耶稣受难日、复活节星期一、5 月 1 日、12 月 25 日和 12 月 26 日也休息。 | 页面给出的是规则而非逐年列表,所以复活节日期需要你自己推算。丹麦克朗遵循自己的日程。 |
按需求选择
没有供应商记录 T+1 或 T+2
我们在保存的所有假日和市场时间页面以及各自的 llms.txt 中搜索了结算、T+1 和 T+2。仅有的命中出现在美联储和 ECB 的页面上,而它们描述的是支付系统的休息日。Massive 的期货文档提到了结算价,那是价格字段,而不是日期。
用假日列表得出结算日期
从交易日开始,按日历日逐天向前推进。只有当某天是工作日且相关国家都没有假日时才计数,计数达到 N 就停止。2026 年 11 月 25 日星期三的一笔美国股票交易,T+1 在 11 月 27 日星期五结算,因为 11 月 26 日星期四是美国假日。USD/JPY 的 T+2 交易需要两个国家的假日。Narwhal 的结算操作指南用 Python 运行了这个循环。
选择与交易场所匹配的休息日列表
公共假日与交易所休市日、支付系统休息日并不是同一份列表。EODHD、Massive 或 Finnhub 这类交易所 API 针对指定的交易所给出答案。公共假日 API 针对国家作答,Fed 和 ECB 页面则针对各自的支付系统。请使用你所在交易场所规则指定的列表。如果无法判断,就向该场所询问,并把答案保存在配置表中。
提前收市与截止时间
提前收市会改变当天市场的收市时间。它是改变你的结算日期,还是只改变截止时间,取决于该交易场所的规则。EODHD 将其标为带时间的 EarlyClose,Massive 返回带开收盘时间的提前收市状态,Finnhub 在半日交易日给出 tradingHour。FMP 没有记录提前收市,Twelve Data 没有列出,Narwhal 也不发布。
交易所日程的套餐与价格
Massive 把市场休市日包含在所有 Stocks 套餐中,从 Free 到每月 $199。EODHD 指向每月 $99.99 的 All-In-One,Market Status 附加项起价为 $50。FMP 似乎包含在免费 Basic 套餐中。Twelve Data 在 $999 的 Ultra 上每次日程请求收取 100 个额度。Finnhub 把市场休市日列在 Free 套餐中。在付费之前,请先用一次测试调用确认套餐限制。
支付系统休息日
美联储列出 2026 年有 11 个休息日,并说明假日落在周六时,联邦储备银行在前一个周五照常营业,落在周日时则在随后的周一休业。FedACH 补充了准确的处理截止和恢复时间。ECB 表示 T2 周一至周五运行,欧元结算在六个指定的日子休息。
货币对需要两份日历
跨境交易要跳过所有相关国家的假日。Narwhal 覆盖 37 个国家,所以涉及该列表之外国家的货币对需要另一个来源。Calendarific 列出 230 多个国家,HolidayAPI 列出 250 个。HolidayAPI 的 /workday 按某国的工作周返回起始日之后 N 个工作日的日期。在用于 T+N 之前,请先测试它是否会跳过该国的公共假日。
“当前开市”不是日历
Twelve Data 的市场状态消耗 1 个额度,会报告交易所是否开市。Finnhub 的市场状态返回 isOpen、交易时段和假日标记。Massive 也有市场状态调用。这些回答的是当下,无法告诉你一笔交易的结算日期。可用它们守住下单页面,对未来的日期则使用假日列表。
按用途快速选择
要查带提前收市时间的美国股票休市,先看 Massive,因为所有 Stocks 套餐都包含它。要查带类型化提前收市的全球交易所,EODHD 对提前收市最为明确。要查跨越交易日的某国公共假日,请使用假日 API。涉及 ACH 或欧元支付,请阅读 Fed 和 ECB 的页面。
期货与 Narwhal 提供的内容
Massive 的期货日程展示交易时段的开盘、收盘和休息时间,含假日调整和两年历史数据。Narwhal 没有对应的功能。Narwhal 提供的是 37 个国家的公共假日、整年调用、单日调用和下一个假日查询。为每个国家取一次全年数据并保存,只需少量调用,按每 1,000 次 $2 计算只要几美分。
每个详细的提供商页面都会列出使用的第一方文档、其证据范围以及审查日期。 已审核: