Income Statements TTMTTM 利润表

该接口返回标的最近十二个月的滚动利润表,用于消除季节性、按月跟踪营收与利润趋势。

GEThttps://quote-fmp.com/stable/income-statement-ttm?symbol=AAPL

数据更新周期

Filing Date · 随 SEC 申报日期更新

接口说明

  • TTM 是派生口径,不是财报原表:它把最近四个季度的数值滚动加总,period 固定为 TTM,date 为该窗口的截止日。跨财年时会出现「上一财年 Q4 + 本财年 Q1~Q3」的组合。
  • 和年度报表的分工:年度接口(period=annual)是审计口径,适合引用「年报数字」;TTM 适合算同增、估值倍数和趋势。两者不要混在同一张表里比较。
  • limit 控制历史窗口数:要画趋势线就传 8、12 这类值,取回多个 TTM 截止日的数据点,当单一端点维度不足时,可结合「TTM 资产负债表」拼装出更全面的分析视图。
  • 上下游关联接口:Balance Sheet Statement Growth(资产负债表增长数据) · Cashflow Statement Growth(现金流量表增长数据) · Stock Price and Volume Data(日线完整行情) · Financial Estimates(分析师预期查询)

请求参数

2 个参数
参数类型要求示例说明
symbolstring必填AAPL证券代码,例如 AAPL 或 MSFT(美股直传代码如 AAPL;港股/英股/A股须带交易所后缀,如 0700.HK、600519.SS)
limitnumber可选5返回结果条数上限,用于控制单次响应大小。

调用代码示例

Python 关键代码

对接 /stable/income-statement-ttm(TTM 利润表,必填 symbol),从 DataFrame 可直接读取 revenue(营业收入)、costOfRevenue(营业成本)、grossProfit(毛利润)。

Python(核心参数与字段清洗逻辑)
resp = requests.get(
    "https://quote-fmp.com/stable/income-statement-ttm",
    params={"symbol": "AAPL", "limit": 5, "apikey": FMP_KEY},
    timeout=15,
)
resp.raise_for_status()
df = pd.DataFrame(resp.json())
# 保留上游 acceptedDate 并清洗 revenue;可见时间须另核对披露来源和时区
df["reported_accepted_time"] = pd.to_datetime(df["acceptedDate"], errors="coerce")
df["revenue"] = pd.to_numeric(df["revenue"], errors="coerce")

参数使用和避坑

3 组参数组合 · 2 条避坑

以下列出本接口在高频投研与回测场景下的常用 Query 参数组合写法:

投研场景Query 参数组合示例返回数据特征与用途
定向上游请求 AAPL TTM 利润表(symbol=AAPL)symbol=AAPL请求 /stable/income-statement-ttm?symbol=AAPL,产出该标的的 revenue、costOfRevenue、grossProfit(样本 451442000000)等 39 列明细。
设置返回条数上限(limit=100)回溯 AAPL TTM 利润表symbol=AAPL&limit=100通过条数上限参数请求 /stable/income-statement-ttm,单次拉回 AAPL 更长历史周期的 revenue、costOfRevenue、grossProfit。
跨市场检索 0700.HK 的TTM 利润表数据symbol=0700.HK通过 symbol=0700.HK 请求 /stable/income-statement-ttm,实现TTM 利润表在港股市场的同口径采集(含 revenue、costOfRevenue、grossProfit)。
防未来函数TTM 利润表:核验 acceptedDate 的来源,避免将账期或回填时间当作公开时刻

/stable/income-statement-ttm 返回 acceptedDate(样本 2026-05-01 10:01:00),但字段名不保证它在所有市场都是实际公开时刻。对经核实的 SEC 申报,可结合接收时间和时区判断可见性;非美标的、与期末同日的零点时间或回填日期,须先核对原始披露来源。未核实前保留原值,不据此承诺回测已消除前视偏差。

落库主键与口径/stable/income-statement-ttm 落库规范:主键取 (symbol, cik, date),校验 revenue

/stable/income-statement-ttm 共返回 39 列,入库 UPSERT 主键推荐取 (symbol, cik, date),并对 revenue(451442000000)与 costOfRevenue(235371000000) 执行 pd.to_numeric。

返回数据

39 个字段

本接口示例响应共包含 39 个字段(数值型 31 个,文本/日期/布尔型 8 个)。下表列出全部字段名、类型、首条记录真实样本值与中文释义,实际返回会因接口与数据状态有所不同。

字段类型示例值说明
datestring"2026-03-28"日期
symbolstring"AAPL"证券代码
reportedCurrencystring"USD"报告币种(原始财报计价币种;跨国公司对比或与美元市值相除前须先按汇率折算)
cikstring"0000320193"SEC CIK 编号(SEC 10 位定长中央索引键,落库须定义为 VARCHAR(10) 字符串以防前导零丢失)
filingDatestring"2026-05-01"申报日期(监管申报日期;若同表含 acceptedDate,实盘事件对齐应优先取 acceptedDate)
acceptedDatestring"2026-05-01 10:01:00"受理日期(SEC 精确到秒接收时间戳;Point-in-Time 量化回测须以此时间为准以防未来函数)
fiscalYearstring"2026"财政年度
periodstring"Q2"报告周期
revenuenumber451442000000营业收入
costOfRevenuenumber235371000000营业成本
grossProfitnumber216071000000毛利润
researchAndDevelopmentExpensesnumber40038000000研发费用
generalAndAdministrativeExpensesnumber2095000000管理费用
sellingAndMarketingExpensesnumber5397000000销售及推广费用
sellingGeneralAndAdministrativeExpensesnumber28667000000销售、管理及一般费用(SG&A)
otherExpensesnumber0其他费用
operatingExpensesnumber68705000000营业费用
costAndExpensesnumber304076000000成本及费用合计
netInterestIncomenumber0利息净收入
interestIncomenumber0利息收入
interestExpensenumber0利息费用
depreciationAndAmortizationnumber12610000000折旧与摊销
ebitdanumber160332000000息税折旧摊销前利润(EBITDA)
ebitnumber147670000000息税前利润(EBIT)
nonOperatingIncomeExcludingInterestnumber-408000000营业外收入(不含利息)
operatingIncomenumber147366000000营业利润
totalOtherIncomeExpensesNetnumber304000000其他收入(费用)净额
incomeBeforeTaxnumber147670000000税前利润
incomeTaxExpensenumber25095000000所得税费用
netIncomeFromContinuingOperationsnumber122575000000持续经营净利润
netIncomeFromDiscontinuedOperationsnumber0终止经营净利润
otherAdjustmentsToNetIncomenumber0净利润的其他调整项
netIncomenumber122575000000净利润
netIncomeDeductionsnumber0净利润扣减项
bottomLineNetIncomenumber122575000000最终净利润
epsnumber8.29每股收益
epsDilutednumber8.27摊薄每股收益
weightedAverageShsOutnumber14710718000加权平均流通股数(基本加权平均流通股本,不含潜在稀释证券)
weightedAverageShsOutDilnumber14768115000摊薄加权平均流通股数(含期权、可转债等潜在稀释效应的加权平均摊薄总股本,计算摊薄 EPS 的分母)
查看响应数据示例(原始 JSON)
[
{
"date": "2026-03-28",
"symbol": "AAPL",
"reportedCurrency": "USD",
"cik": "0000320193",
"filingDate": "2026-05-01",
"acceptedDate": "2026-05-01 10:01:00",
"fiscalYear": "2026",
"period": "Q2",
"revenue": 451442000000,
"costOfRevenue": 235371000000,
"grossProfit": 216071000000,
"researchAndDevelopmentExpenses": 40038000000,
"generalAndAdministrativeExpenses": 2095000000,
"sellingAndMarketingExpenses": 5397000000,
"sellingGeneralAndAdministrativeExpenses": 28667000000,
"otherExpenses": 0,
"operatingExpenses": 68705000000,
"costAndExpenses": 304076000000,
"netInterestIncome": 0,
"interestIncome": 0,
"interestExpense": 0,
"depreciationAndAmortization": 12610000000,
"ebitda": 160332000000,
"ebit": 147670000000,
"nonOperatingIncomeExcludingInterest": -408000000,
"operatingIncome": 147366000000,

内容已截断,完整字段以实际返回为准。

计算口径对照:本接口涉及的滚动十二个月(TTM)利润表科目的解析与兜底公式,可查看 财务报表解析与兜底计算公式 →

常见问题解答(FAQ)

2 个问题
为什么「Financial StatementsTTM」同时提供TTM 利润表(/stable/income-statement-ttm)和 TTM 资产负债表(/stable/balance-sheet-statement-ttm)两个端点?

/stable/income-statement-ttm(TTM 利润表,必填 symbol)专门针对 revenue(营业收入)与 grossProfit(毛利润)等 39 个字段建模;若要结合 Balance Sheet Statements TTM(TTM 资产负债表),可再调 /stable/balance-sheet-statement-ttm(必填 symbol)。

在量化生产环境中,如何高效拉取TTM 利润表(/stable/income-statement-ttm)的历史序列或批量截面?

建议在 /stable/income-statement-ttm 中显式调大 limit 参数(如 limit=100)单次拉取多期记录;拿到 revenue(营业收入)等数据后,先校验 len(data) > 0 再送入下游清洗管道。

同模块相关接口对比

Financial StatementsTTM

本接口路径 /stable/income-statement-ttm,必填参数 symbol。 同一模块「Financial StatementsTTM」下共 3 个接口,下表列出其余 2 个, 按粒度与查询维度对比,避免选错接口。

接口路径核心差异与适用场景
TTM 资产负债表Balance Sheet Statements TTM/stable/balance-sheet-statement-ttm标的最近十二个月口径的资产负债表,字段结构与年度、季度报表完全一致
TTM 现金流量表Cashflow Statements TTM/stable/cash-flow-statement-ttm标的最近十二个月的滚动现金流量表,适合观察经营现金流与自由现金流趋势

Statements(财务报表)全部接口目录 →

需要稳定访问 TTM 利润表 数据?注册即可获取专属 API Key,免费体验全部接口。
免费试用 1 个月