STRASMORE/EXPLORE 3,127 QUERIES

yield_basket

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-06, from high-dividend-us-stocks-for-indian-investors.

as of ranking 12×3read in context →
yield_basket — 12 rows by 3 columns, computed from US exchange, SIP and OPRA data.
tickerdiv_ttm_usdgross_yield_pct
MO4.296.32
VZ2.86.09
PEP5.84.61
T1.114.58
CVX7.053.43
IBM6.743.01
PG4.292.9
ABBV6.832.57
XOM4.122.53
KO2.12.43
JNJ5.282.08
CSCO1.671.48
Rows × columns
12 × 3
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 yield_basket, derived from the stored result.
ColumnTypeRangeNotes
ticker text 12 distinct values (ABBV, CSCO, CVX…)
div_ttm_usd number 1.11 to 7.05 US dollars
gross_yield_pct number 1.48 to 6.32 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.

SELECT
    p.ticker                                   AS ticker,
    round(d.div_ttm, 2)                        AS div_ttm_usd,
    round(100 * d.div_ttm / p.last_close, 2)   AS gross_yield_pct
FROM
(
    SELECT
        ticker,
        argMax(toFloat64(close), date) AS last_close
    FROM global_markets.stocks_daily_aggs
    WHERE ticker IN ('ABBV','CSCO','CVX','IBM','JNJ','KO','MO','PEP','PG','T','VZ','XOM')
      AND date >= today() - 30
    GROUP BY ticker
) AS p
INNER JOIN
(
    SELECT
        ticker,
        sum(amt) AS div_ttm
    FROM
    (
        SELECT
            ticker,
            ex_dividend_date,
            max(toFloat64(cash_amount)) AS amt
        FROM global_markets.stocks_dividends
        WHERE ticker IN ('ABBV','CSCO','CVX','IBM','JNJ','KO','MO','PEP','PG','T','VZ','XOM')
          AND ex_dividend_date >= today() - 365
          AND ex_dividend_date <= today()
          AND frequency IN (4, 12)
        GROUP BY ticker, ex_dividend_date
    )
    GROUP BY ticker
) AS d ON d.ticker = p.ticker
ORDER BY gross_yield_pct DESC
⌘/Ctrl + Enter

Work with this data in your AI assistant

Opens ready to query, with this page's data. Free, no account.