cap_path
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-09-22, from how-to-check-if-a-us-stock-is-sharia-compliant.
| month | month_avg_cap_bn | avg_24m_cap_bn |
|---|---|---|
| 2024-09-01 | 3346.3 | 3780.1 |
| 2024-10-01 | 3440.5 | 3780.1 |
| 2024-11-01 | 3406.9 | 3780.1 |
| 2024-12-01 | 3728.6 | 3780.1 |
| 2025-01-01 | 3508.2 | 3780.1 |
| 2025-02-01 | 3566.9 | 3780.1 |
| 2025-03-01 | 3330.5 | 3780.1 |
| 2025-04-01 | 3008.7 | 3780.1 |
| 2025-05-01 | 3050 | 3780.1 |
| 2025-06-01 | 3000.8 | 3780.1 |
| 2025-07-01 | 3159.7 | 3780.1 |
| 2025-08-01 | 3359.6 | 3780.1 |
| 2025-09-01 | 3626.3 | 3780.1 |
| 2025-10-01 | 3862.8 | 3780.1 |
| 2025-11-01 | 4062.6 | 3780.1 |
| 2025-12-01 | 4132.1 | 3780.1 |
| 2026-01-01 | 3853.1 | 3780.1 |
| 2026-02-01 | 4025.5 | 3780.1 |
| 2026-03-01 | 3812.1 | 3780.1 |
| 2026-04-01 | 3958.5 | 3780.1 |
| 2026-05-01 | 4449.7 | 3780.1 |
| 2026-06-01 | 4432.9 | 3780.1 |
| 2026-07-01 | 4819.8 | 3780.1 |
| 2026-08-01 | 4638.9 | 3780.1 |
| 2026-09-01 | 4922.6 | 3780.1 |
- Rows × columns
- 25 × 3
- Period covered
- to
- 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 |
|---|---|---|---|
month |
date | 2024-09-01 to 2026-09-01 | |
month_avg_cap_bn |
number | 3,000.8 to 4,922.6 | |
avg_24m_cap_bn |
number | every row is 3,780.1 |
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.month AS month,
round(p.avg_close * s.shares_out / 1e9, 1) AS month_avg_cap_bn,
round(avg(p.avg_close * s.shares_out / 1e9) OVER (), 1) AS avg_24m_cap_bn
FROM
(
SELECT
toString(toStartOfMonth(date)) AS month,
avg(toFloat64(close)) AS avg_close
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'AAPL'
AND date >= toStartOfMonth(today() - 730)
AND date <= today()
GROUP BY month
) AS p
CROSS JOIN
(
SELECT argMax(diluted_shares_outstanding, (filing_date, period_end, timeframe)) AS shares_out
FROM global_markets.stocks_income_statements
WHERE has(tickers, 'AAPL')
AND timeframe != 'ttm'
AND diluted_shares_outstanding > 0
) AS s
ORDER BY month