STRASMORE/EXPLORE 3,293 QUERIES

ttm_coverage

Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-10-24, from ibm-dividend-2026-forecast.

as of table 8×6read in context →
ttm_coverage — 8 rows by 6 columns, computed from US exchange, SIP and OPRA data.
quarter_endquarter_labelfcf_ttm_bndividends_ttm_bnheadroom_bnpayout_ttm_pct
2024-03-3131.03.202413.146.067.0846.2
2024-06-3030.06.202412.716.096.6247.9
2024-09-3030.09.202412.536.126.4148.8
2024-12-3131.12.202412.46.156.2549.6
2025-03-3131.03.202512.596.176.4249
2025-06-3030.06.202512.246.26.0450.7
2025-09-3030.09.202512.476.236.2449.9
2025-12-3131.12.202512.16.265.8551.7
Rows × columns
8 × 6
Period covered
to
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for ttm_coverage, derived from the stored result.
ColumnTypeRangeNotes
quarter_end date 2024-03-31 to 2025-12-31
quarter_label text 8 distinct values (30.06.2024, 30.06.2025, 30.09.2024…)
fcf_ttm_bn number 12.1 to 13.14
dividends_ttm_bn number 6.06 to 6.26
headroom_bn number 5.85 to 7.08
payout_ttm_pct number 46.2 to 51.7 percent

Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.

Run it yourself

This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.

WITH cf AS
(
    SELECT
        period_end,
        ifNull(argMax(toFloat64(net_cash_from_operating_activities), filing_date), 0)
          - abs(ifNull(argMax(toFloat64(purchase_of_property_plant_and_equipment), filing_date), 0)) AS fcf,
        abs(ifNull(argMax(toFloat64(dividends), filing_date), 0))                                     AS divs
    FROM global_markets.stocks_cash_flow_statements
    WHERE has(tickers, 'IBM')
      AND timeframe = 'quarterly'
      AND period_end >= '2023-01-01'
      AND period_end <= today()
    GROUP BY period_end
),
rolling AS
(
    SELECT
        period_end,
        sum(fcf)  OVER (ORDER BY period_end ROWS BETWEEN 3 PRECEDING AND CURRENT ROW) AS fcf_ttm,
        sum(divs) OVER (ORDER BY period_end ROWS BETWEEN 3 PRECEDING AND CURRENT ROW) AS divs_ttm,
        count()   OVER (ORDER BY period_end ROWS BETWEEN 3 PRECEDING AND CURRENT ROW) AS quarters_in_window
    FROM cf
)
SELECT
    toString(period_end)                     AS quarter_end,
    formatDateTime(period_end, '%d.%m.%Y')   AS quarter_label,
    round(fcf_ttm / 1e9, 2)                  AS fcf_ttm_bn,
    round(divs_ttm / 1e9, 2)                 AS dividends_ttm_bn,
    round((fcf_ttm - divs_ttm) / 1e9, 2)     AS headroom_bn,
    round(divs_ttm / fcf_ttm * 100, 1)       AS payout_ttm_pct
FROM rolling
WHERE quarters_in_window = 4
  AND period_end >= '2024-01-01'
ORDER BY period_end
⌘/Ctrl + Enter

Arbeiten Sie mit diesen Daten in Ihrem KI-Assistenten

Öffnet sich abfragebereit, mit den Daten dieser Seite. Kostenlos, ohne Konto.