Financial Modeling Prep
用于研究的财务报表与市场数据。
评估开放金融数据 API 的覆盖范围、许可、时间戳和生产接入要求。
发布日期:2026年3月15日 · 由 QVeris 团队制作

公开访问仍可能附带署名、存储、再分发、商业使用或速率限制。
优先选择能提供上游来源、市场时间戳、修订政策与来源文档的接口。
用真实请求检查时间戳、复权、缺失值、分页、错误处理和标的代码规范。
将供应商响应映射到内部数据结构,避免产品依赖不稳定的外部字段约定。
搜索结果常把三件事混在一起:可以免费试用的 API、文档公开的 API,以及采用开放许可的数据。这三者并不等价。接入前要先问清楚,真正开放的是接口、软件、底层数据,还是仅仅开放注册。
| 常见说法 | 实际能证明什么 | 仍然需要确认 |
|---|---|---|
| “免费 API” | 在当前额度内,部分请求不收费。 | 商业使用、再分发、长期可用性、批量访问和未来定价。 |
| “公开 API” | 接口或文档可以公开访问。 | 数据是否采用开放许可,以及能否存储和再次发布。 |
| “开放数据” | 明确的许可应允许使用、再利用和再分发,通常只附带署名等有限条件。 | 接口稳定性、访问额度、数据质量、历史时点数据和生产支持。 |
| “开源 API” | 部分实现代码采用开源软件许可。 | 通过该软件获得的金融数据是否也拥有相应使用权。 |
实用判断方法:找到明确的许可证或政府公共领域声明,确认上游权利主体,再逐项核对存储、展示、再分发、模型训练和商业使用是否获准。API Key 价格为零,并不能替代这些判断。
“金融数据”可能指实时行情、日线价格、公司基本面、宏观序列、外汇、加密市场、期权、新闻或监管文件。选型前先明确产品所需的资产、地区、频率和历史跨度。
确认“实时”究竟是实时还是延迟,覆盖哪些交易所,以及是否提供拆股和分红复权序列。
检查报告期间、重述、币种、历史时点数据的准确性、字段定义,以及是否能回溯到原始文件。
确认来源交易场所、时区和日切规则、报价方向、修订政策,以及周末数据行为。
技术指标和标准化指标可以节省时间,但在用于研究或决策前要先检查计算方法。
不存在覆盖全部金融场景的官方数据源。公共机构最有优势的通常是其直接发布的数据,例如监管申报、宏观统计、参考汇率或发展指标;交易所级实时行情则往往有单独的数据权利和分发限制。
| 来源 | 适合用途 | 访问方式 | 重要提醒 |
|---|---|---|---|
| SEC EDGAR | 美国公司申报与结构化 XBRL 财务事实 | 无需 Key 的 JSON 接口与夜间批量归档 | 使用数据时要保留申报表单、期间、单位和分类标准上下文;浏览器端直接调用还会受到 CORS 限制。 |
| FRED / ALFRED | 经济金融时间序列、修订与历史版本 | 有文档的 API 与序列下载 | FRED 汇集多个上游来源,不同序列的版权与允许用途可能并不相同,不能按整个站点一概而论。 |
| 世界银行指标 | 跨国家的发展、宏观与金融指标 | 无需 Key 的 API,可返回 JSON、XML 或批量下载 | 指标元数据、单位和来源说明是数据的一部分,不能只取数值列。 |
| 国家统计机构与央行 | 官方统计发布、政策利率、资产负债表与国民账户 | 形式不一:REST、SDMX、CSV、电子表格或数据目录 API | 发布时间表、修订、季节调整和当地许可均因发布方而异。 |
如果目标是实时股票、期权、期货、综合行情,或在面向客户的产品中再次分发数据,就要对“开放”说法格外谨慎。接口运营方未必拥有全部底层交易所权利,开发者套餐允许内部展示,也不一定允许向下游继续分发。
| 标准 | 需要确认 | 免费套餐的常见限制 | 测试方法 |
|---|---|---|---|
| 覆盖 | 资产、交易所、地区、字段和历史深度。 | 标的较少或历史较短。 | 查询代表性标的和退市标的。 |
| 时效性 | 时间戳、延迟、更新计划和修订规则。 | 延迟或仅日终数据。 | 将多次更新结果与第一手来源进行对比。 |
| 限额 | 分钟、每日、并发和单接口配额。 | 突发容量低或每日硬上限。 | 触发 429 并检查重试响应头。 |
| 许可与权利 | 商业使用、存储、署名和再分发。 | 仅限个人或非商业用途。 | 同时阅读接口条款与上游数据权利。 |
API 条款约束的是服务访问,具体序列或字段还可能受上游来源说明约束。审核时两者都要保留,不能默认平台通用条款覆盖上游权利。
要确认历史查询返回的是“今天看到的历史”,还是“当时实际可见的数据”。修订、重述和证券代码变更都可能让表面整洁的序列不适合回测。
跨页统计预期记录数,测试最后一个游标,并将批量归档总数与 API 结果对账。结果被截断却没有任何报错,往往比明确失败更危险。
把供应商特有的代码、时间戳、字段和错误映射为内部数据模型,避免整个产品依赖某一种外部响应格式。
行情、基本面、交易日历与静态元数据应使用不同缓存周期,并遵守对存储或再分发的限制。
记录剩余配额、延迟、错误、过期响应和缓存命中率,在每日上限影响用户前告警。
为重要数据保留来源、抓取时间、市场时间戳、币种、复权方法和转换版本。
生产可靠性不只是接口有没有宕机。请求即使返回 HTTP 200,也可能拿到过期数据、缺少部分证券、单位发生变化,或历史序列被修订。因此既要监控网络状态,也要监控数据语义是否正常。
按数据集定义可接受的最大延迟,并用来源时间戳而不是入库时间进行判断。
持续记录预期实体、日期和字段;证券数量骤降、空值集中出现、主键重复或历史消失时应及时告警。
发布前验证类型、单位和枚举值。遇到未知字段或新取值时先隔离,不能在没有记录的情况下强制转换。
为每个数据集保存已审核条款、上游权利主体、署名文本、允许用途和复核日期。
| 异常 | 稳妥处理 | 不要这样做 |
|---|---|---|
| 429 | 遵守 Retry-After,采用带随机抖动的退避;条款允许时返回明确标注时间的缓存,并降低并发。 | 不要立即高频重试所有请求。 |
| 5xx 错误/超时 | 只在预算内重试幂等读取,保留最近一次有效值,并向下游标记数据已过期。 | 不要把缺失数据填成零。 |
| 结构漂移 | 让验证失败,归档原始响应,对比版本后再有意识地更新适配层。 | 不要在没有记录的情况下丢弃未知字段。 |
| 请求成功但数据过期 | 依据市场或发布时间戳和预期日历判断,并阻止依赖时效性的操作。 | 不要把 HTTP 200 当作数据最新的证明。 |
供应商列表会过时,不同接口的描述方式也不一致。QVeris 帮助开发者和 Agent 查找、检查并调用相关能力,同时让选型标准保持清晰。
它通过有文档的接口提供市场、公司、监管文件或宏观数据,其访问与使用条款可公开查阅。
测试代表性标的、时间戳、复权、缺失值、分页、错误响应,以及实际的限流行为。
可以,但许可、来源、更新政策、覆盖范围、可靠性与运行限制必须符合产品要求。
不一定,但与供应商无关的数据模型能让后续扩展覆盖、应对配额变化或服务中断更容易。
用于研究的财务报表与市场数据。
