How to Choose a Free Fundamental Data API
for Reliable Company Research如何选择适合公司研究的
免费基本面数据 API
Evaluate statements, ratios, filing history, update timing, rate limits, licensing, and point-in-time quality before building a screener or research workflow.
从财务报表、财务比率、监管申报记录、数据时效、请求频率限制、数据使用权限和历史时点数据质量等方面入手,
判断免费 API 能否支撑选股与公司研究。
Free fundamental data API: the short answer免费基本面数据 API:先看结论
A free fundamental data API is best evaluated as a research dataset, not as a collection of isolated company facts. For a screener, factor model, or historical study, the API must identify the correct security and company, align fiscal periods across issuers, preserve filing and revision dates, and make missing observations explainable. A long field list is less useful than a smaller, consistent panel that can be reproduced as of a past research date.
评估免费基本面数据 API 时,应把它视为一套研究数据集,而不是零散的公司资料集合。对于选股器、因子模型或历史研究,API 必须正确识别证券与公司主体,统一不同发行人的财务报告期,保留文件提交与修订时间,并能解释数据为何缺失。与其追求字段越多越好,不如优先选择规模适中但口径一致、能够还原历史研究时点的数据集。
Expect limits on statements, ratios, filing history, company coverage, requests, or commercial usage.
A stock screener, valuation model, research agent, and audit workflow require different fields and history.
Historical research needs the values available on the decision date, including later amendments as separate versions.
Stable entity identifiers, listings, delistings, sector history, and corporate actions prevent silent survivorship and mapping errors.
免费套餐通常会限制可用的财务报表、财务比率、监管文件历史、公司覆盖范围和请求配额,或不允许商业使用。
选股器、估值模型、研究智能体和审计工作流对字段与历史跨度的要求各不相同。
历史研究需要还原决策当日能够获得的数据,后续修订应作为新版本保存,而不能覆盖原记录。
稳定的公司与证券标识、上市与退市记录、行业分类历史和公司行动,可以减少幸存者偏差与标的映射错误。
What can a free fundamental data API cover?免费基本面数据 API 能提供哪些数据?
Fundamental data can include entity reference records, company profiles, income statements, balance sheets, cash-flow statements, per-share metrics, valuation ratios, earnings events, corporate actions, and links to regulatory filings. This page focuses on assembling those components into a cross-company research dataset. If the task is only to retrieve one statement or one precomputed ratio, a narrower API can be easier to validate.
基本面数据可以包括主体标识、公司概况、利润表、资产负债表、现金流量表、每股指标、估值比率、财报事件、公司行动以及监管申报文件链接。本页重点讨论如何把这些组成部分整理为可供多公司比较的研究数据集。如果需求只是读取某一张报表或某一项预计算比率,选择范围更窄的专用 API 反而更容易核验。
Separate the legal issuer from its listed securities. Look for stable company IDs, exchange-qualified tickers, share classes, primary listings, identifier history, listing dates, delisting dates, and merger mappings. A ticker alone is not a durable research key.
Verify annual and quarterly periods, fiscal-year mapping, units, currencies, consolidated scope, and how provider fields map to reported line items. Keep the reported value beside the standardized value so transformations remain auditable.
Determine which ratios, growth rates, per-share values, and forward estimates are calculated by the provider. Each derived field needs a formula, component period, price timestamp where relevant, estimate source, and null policy.
Check filing dates, acceptance timestamps, amendments, restatements, source-document links, and whether historical queries preserve what was known on a chosen date. A database that rewrites history with the latest value is unsuitable for unbiased backtests.
Splits, spin-offs, mergers, symbol changes, fiscal-year changes, and sector reclassifications affect longitudinal comparisons. The API should either provide those events or document how historical series have already been adjusted.
法律意义上的发行人和交易所挂牌证券需要分开建模。应检查稳定的公司 ID、带交易所信息的证券代码、不同股权类别、主要上市地、标识符变更历史、上市与退市日期以及并购映射。仅用股票代码作为研究主键并不可靠。
确认年度和季度报告期、财年对应关系、计量单位、币种、合并报表范围,以及服务商字段如何映射到财报披露科目。标准化数值旁边还应保留企业原始披露值,使字段转换过程可以追溯。
需要区分哪些财务比率、增长率、每股指标和前瞻预期由供应商计算。每个衍生字段都应附带计算公式、构成项报告期、必要时所用的价格时间戳、预期数据来源和空值处理规则。
检查文件提交日期、监管系统接收时间、修订文件、财报重述和原始文件链接,并确认历史查询能否保留指定日期当时可获得的信息。如果数据库总是用最新值覆盖过去,就不适合用于无前视偏差的回测。
拆股、分拆、并购、证券代码变更、财年调整和行业重新分类都会影响长期比较。API 应直接提供这些事件,或明确说明历史序列已经按照什么规则调整。
Build the historical universe before calculating factors计算基本面因子前,先建立历史股票池
A cross-company dataset begins with the securities that actually existed and were investable on each research date. Starting from today's active ticker list excludes delisted, merged, bankrupt, and renamed firms. It can make a weak strategy appear stronger because companies that disappeared from the market also disappear from the test.
跨公司研究数据集应先确定每个历史研究日真实存在且可投资的证券。若直接使用今天仍然活跃的股票代码清单,就会排除已经退市、被并购、破产或更名的公司。这样可能让本来表现一般的策略显得更强,因为已经离开市场的失败样本也从回测中消失了。
Worked example: survivorship bias changes the result实例:幸存者偏差如何改变研究结果
Suppose a 2018 research universe contained 1,200 companies, but only 1,000 remain listed today. If a backtest uses the current list, it silently removes 200 historical constituents. Assume the 1,000 survivors returned 10% on average while the omitted firms returned −30% before delisting or acquisition. The survivor-only average is 10%; the simple full-universe average is (1,000 × 10% + 200 × −30%) / 1,200 = 3.33%. The exact portfolio result depends on weighting and dates, but the direction of the bias is clear.
假设 2018 年的研究股票池包含 1,200 家公司,而今天仍上市的只有 1,000 家。如果回测直接使用当前清单,就会静默删除 200 个历史成分。假设 1,000 家幸存公司平均收益为 10%,被删除公司在退市或并购前平均收益为 −30%,那么只看幸存公司的平均值是 10%;简单计算完整股票池平均值则为 (1,000 × 10% + 200 × −30%) / 1,200 = 3.33%。实际组合结果还取决于权重与日期,但偏差方向已经很清楚。
Align price, enterprise value, and denominator dates对齐价格、企业价值和财务分母日期
Enterprise value and valuation multiples combine market observations with accounting values. If market capitalization is measured on June 30 but debt and cash come from a report that was not published until August, the factor uses future information. For a June 30 screen, use the latest debt, cash, share count, and EBITDA actually available by the cutoff; record the market timestamp and every component's filing availability time.
企业价值和估值倍数会把市场数据与会计数据组合起来。如果市值取自 6 月 30 日,而债务与现金来自 8 月才公开的财报,这个因子就使用了未来信息。进行 6 月 30 日筛选时,应采用截止当日已经公开的最新债务、现金、股本和 EBITDA,并分别保存市场时间戳与每个财务组成项的申报可得时间。
The denominator also needs a defined period. Trailing EBITDA, latest annual EBITDA, and forward estimated EBITDA answer different questions. Negative or near-zero denominators can make EV/EBITDA meaningless or extreme; do not rank them as ordinary positive multiples. Banks and insurers may require different valuation fields entirely because debt and operating capital play different roles.
分母还必须说明报告期间。滚动 EBITDA、最近财年 EBITDA 与未来预期 EBITDA 回答的是不同问题。分母为负数或接近零时,EV/EBITDA 可能没有解释意义或出现极端值,不能与普通正数倍数一起排序。对于银行和保险公司,债务与经营资本的作用不同,甚至需要使用完全不同的估值字段。
Choose a source strategy, not just a provider name选择数据来源策略,而不只是供应商名称
| Route路线 | Best fit适用场景 | Main work left to you应用方仍需完成 |
|---|---|---|
| SEC EDGAR and CompanyfactsSEC EDGAR 与 Companyfacts | US primary filings, structured facts, source-level verification, and custom point-in-time ingestion.美国公司一手申报、结构化数据项、来源核验与自建历史时点采集。 | Entity history, taxonomy mapping, dimensions, period selection, amendments, derived factors, and non-US coverage.主体历史、分类标准映射、维度、期间选择、修订、衍生因子与非美国市场覆盖。 |
| Normalized fundamentals API标准化基本面 API | Cross-company fields, simpler JSON, ratios, multi-market coverage, and faster screener development.跨公司一致字段、简化 JSON、财务比率、多市场覆盖与快速开发选股器。 | Verify formulas, point-in-time guarantees, original filing links, universe history, sector exceptions, limits, and rights.核对公式、历史时点保证、原始文件链接、股票池历史、行业例外、限制与许可。 |
| Capability routing through QVeris通过 QVeris 路由数据能力 | Agents and applications that need to discover and inspect different statement, ratio, filing, or market-data tools at call time.需要在调用时发现并检查不同报表、比率、申报或行情工具的 Agent 与应用。 | Maintain one research contract, expose the chosen provider, and run identical quality tests regardless of the routed source.维护统一研究契约,公开实际供应商,并对所有路由来源执行相同质量测试。 |
Match the dataset output to the research task让数据输出匹配研究任务
Return the latest available fields, component dates, null reasons, universe status, and formula version; make stale components visible.
Freeze one cutoff date, one historical universe, comparable periods, winsorization rules, and field-availability statistics.
Use availability time rather than fiscal end date, include delisted securities, retain revisions, and delay portfolio formation realistically.
Return source, period, formula, confidence, exclusions, and the next evidence request with every derived conclusion.
返回最新可得字段、组成项日期、空值原因、股票池状态和公式版本,并明确标记陈旧组成项。
固定同一截止日期、历史股票池、可比期间、缩尾规则与字段可用率统计。
使用数据可得时间而非财务期末日,纳入退市证券,保留修订,并真实模拟组合形成延迟。
每个派生结论都同时返回来源、期间、公式、置信度、排除项和下一步所需证据。
Criteria that separate a demo dataset from dependable fundamentals区分演示数据与可靠基本面数据的关键标准
| Criterion评估维度 | What to verify核验要点 | Common free-tier trade-off免费套餐的常见限制 | Test验证方法 |
|---|---|---|---|
| Coverage覆盖范围 | Companies, markets, fields, periods, and history.覆盖的公司、市场、字段、报告期及历史数据跨度。 | Narrow universe or only recent periods.公司覆盖范围较窄,或仅提供近期报告期的数据。 | Query representative, foreign, and delisted firms.选取有代表性的公司、境外公司和已退市公司进行查询。 |
| Identity主体识别 | Company IDs, securities, share classes, listings, and identifier history.公司 ID、证券、股权类别、上市地及标识符变更历史。 | Ticker-only records or no delisting history.仅支持股票代码,或没有退市与代码变更记录。 | Follow one issuer through a symbol change or merger.选择经历过证券代码变更或并购的发行人,核对前后映射。 |
| Data freshness数据时效 | Filing timestamps, ingestion delay, revisions, and restatements.监管文件提交时间戳、数据入库延迟、修订记录和财报重述。 | Slow updates or incomplete amendments.数据更新较慢,或修订文件收录不完整。 | Compare new filings and amendments with primary sources.将新提交的监管文件及其修订文件与原始监管来源逐项核对。 |
| Point-in-time quality历史时点质量 | Availability dates, revisions, version IDs, and historical universe membership.数据可得日期、修订版本、版本 ID 与历史股票池成员关系。 | Only the latest restated snapshot.只保留重述后的最新快照。 | Rebuild a screen using only information known on a past date.限定只使用历史某日之前可获得的数据,重新运行一次筛选。 |
| Limits请求限额 | Per-minute, daily, concurrent, and endpoint quotas.每分钟、每日、并发请求数及各接口的调用配额。 | Low burst capacity or hard daily caps.突发请求承载能力较低,或设有不可突破的每日调用上限。 | Exercise 429 responses and retry headers.模拟超限请求,检查 HTTP 429 响应及重试相关响应头。 |
| Completeness数据完整性 | Null reasons, sparse fields, sector exceptions, and filing-to-field reconciliation.空值原因、稀疏字段、行业例外以及财报与字段之间的勾稽关系。 | Silent gaps represented as zero.把未覆盖或暂缺的数据静默处理为零。 | Measure field availability by market, year, and sector.按市场、年份和行业统计字段可用率,而不是只看少量样本。 |
| Rights使用权限 | Commercial use, storage, attribution, and redistribution.商业使用、数据存储、署名要求和再分发权限。 | Personal or non-commercial use only.仅允许个人使用或非商业用途。 | Read both API terms and upstream data rights.同时核对 API 服务条款与上游数据的授权条款。 |
A safer integration pattern for free fundamental data免费基本面数据的稳健接入方案
Define the research universe, required fields, earliest history, reporting frequency, freshness target, acceptable null rate, and permitted use. A concrete contract prevents a generous-looking demo response from becoming the production requirement by accident.
Map provider-specific company identifiers, securities, periods, units, currencies, line items, events, and errors into an internal model. Preserve raw values and source references so analysts can trace every normalized figure.
Resolve company and security identities first, then attach statements, metrics, and events to those stable keys. Record unmapped and ambiguous identifiers instead of guessing from a ticker or company name.
Store filing dates, effective dates, amendments, provider versions, and ingestion timestamps. A current snapshot is useful for display, but reproducible screens and backtests require point-in-time versions.
A successful HTTP response does not prove that the dataset remains complete. Track company counts, field availability, stale periods, revision lag, duplicate filings, and unexplained changes in sector or country coverage.
明确研究股票池、必需字段、最早历史年份、报告频率、时效目标、可接受的空值比例和许可用途。只有把这些要求写清楚,才能避免把演示响应中“看起来很多”的字段误当成正式生产标准。
将各服务商特有的公司标识、证券、报告期、计量单位、币种、报表科目、事件和错误信息映射到统一的内部模型。同时保留原始值及其来源信息,确保分析人员能够追溯每一项标准化数值。
应先解决公司与证券身份映射,再把财务报表、衍生指标和公司事件关联到稳定主键。遇到无法匹配或存在歧义的标识符时,应单独记录并交由人工核验,而不是根据股票代码或公司名称猜测。
保存监管文件提交日期、数据生效日期、修订记录、供应商版本和数据入库时间戳。最新快照便于展示,但要确保选股结果和回测可复现,就必须保留各个历史时点对应的数据版本。
HTTP 请求成功并不代表数据集仍然完整。还应持续监控公司数量、字段可用率、长期未更新的报告期、修订延迟、重复文件,以及行业或国家覆盖范围中无法解释的变化。
Use QVeris to discover fundamental data capabilities借助 QVeris 查找基本面数据服务
Provider lists go stale and every API describes itself differently. QVeris helps a research application discover capabilities at call time and inspect their inputs, outputs, and constraints through a more consistent interface. That shortens provider discovery, but it does not replace the dataset contract, point-in-time storage, accounting reconciliation, or licensing review owned by the research system.
服务商目录很快就会过时,而且不同 API 对自身功能的描述方式各不相同。QVeris 可以帮助研究应用在调用时发现可用能力,并通过较统一的接口检查输入、输出和限制条件,从而缩短寻找与接入供应商的过程。不过,研究系统仍需自行维护数据集契约、历史时点版本、会计勾稽规则和数据授权审查。
- Search by the capability you need—statements, ratios, company profiles, earnings, or filings—not only by a vendor name.
- Inspect inputs, outputs, authentication, and constraints before wiring a capability into an automated workflow.
- 按实际所需功能搜索,例如财务报表、财务比率、公司概况、盈利数据或监管申报文件,而不局限于服务商名称。
- 在将相应 API 接入自动化工作流前,先核对输入参数、输出结果、身份验证方式和使用限制。
FAQ常见问题
Yes. Free plans often expose selected profiles, statements, ratios, or filings, but limit company coverage, historical depth, requests, endpoints, or commercial usage.
Test reporting periods, currencies, units, restatements, null values, filing dates, standardized line items, pagination, errors, and actual request frequency limits.
It is a versioned record of what investors could actually know on a specified date. It preserves original filings, availability timestamps, and later amendments instead of rewriting the past with the newest value.
Tickers can be reused, changed, or shared across exchanges. Research systems should use stable company and security identifiers plus effective dates for each listing relationship.
Measure field availability across the full target universe by market, sector, year, and reporting frequency. Treat missing, not applicable, not yet filed, and provider error as separate states.
Sometimes, but only if historical universe membership, delistings, original availability dates, and revisions are preserved. A current restated snapshot introduces look-ahead and survivorship bias.
有。免费套餐通常会提供部分公司概况、财务报表、财务比率或监管申报文件,但会限制公司覆盖范围、历史数据跨度、请求配额和可调用接口,或不允许商业使用。
应优先测试报告期、币种、计量单位、财报重述、空值、监管文件提交日期、标准化科目、分页和错误响应,并实测请求频率上限。
它记录指定日期当时投资者实际能够获得的信息,并保留原始文件、数据可得时间与后续修订,而不是用最新数值覆盖过去。
股票代码可能变更、被重新使用,也可能在不同交易所重复出现。研究系统应使用稳定的公司和证券标识,并为每段上市关系保存生效日期。
应按市场、行业、年份和报告频率统计整个目标股票池的字段可用率,并分别记录“数据缺失”“不适用”“尚未披露”和“供应商错误”,不能统一写成空值或零。
有时可以,但前提是保留历史股票池、退市记录、原始可得日期和修订版本。只使用当前重述后的快照,会引入前视偏差和幸存者偏差。
