historico_anual
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-16, from us-dividend-tax-for-spanish-investors.
| year | cat_usd | msft_usd | o_usd | pfe_usd |
|---|---|---|---|---|
| 2019 | 3.78 | 1.89 | 2.72 | 1.44 |
| 2020 | 4.12 | 2.09 | 2.8 | 1.52 |
| 2021 | 4.28 | 2.3 | 2.84 | 1.56 |
| 2022 | 4.62 | 2.54 | 2.97 | 1.6 |
| 2023 | 5 | 2.79 | 3.06 | 1.64 |
| 2024 | 5.42 | 3.08 | 2.61 | 1.68 |
| 2025 | 5.84 | 3.4 | 3.49 | 1.72 |
- Rows × columns
- 7 × 5
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
year |
number | 2,019 to 2,025 | |
cat_usd |
number | 3.78 to 5.84 | US dollars |
msft_usd |
number | 1.89 to 3.4 | US dollars |
o_usd |
number | 2.61 to 3.49 | US dollars |
pfe_usd |
number | 1.44 to 1.72 | US dollars |
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
toYear(ex_dividend_date) AS year,
round(sumIf(cash, ticker = 'CAT'), 2) AS cat_usd,
round(sumIf(cash, ticker = 'MSFT'), 2) AS msft_usd,
round(sumIf(cash, ticker = 'O'), 2) AS o_usd,
round(sumIf(cash, ticker = 'PFE'), 2) AS pfe_usd
FROM
(
SELECT
ticker,
ex_dividend_date,
max(toFloat64(cash_amount)) AS cash
FROM global_markets.stocks_dividends
WHERE ticker IN ('CAT', 'MSFT', 'O', 'PFE')
AND ex_dividend_date >= '2019-01-01'
AND ex_dividend_date < toStartOfYear(today())
GROUP BY ticker, ex_dividend_date, id
)
GROUP BY year
ORDER BY year
Work with this data in your AI assistant
Opens ready to query, with this page's data. Free, no account.