STRASMORE/EXPLORE 2,173 QUERIES 22Y EQUITIES · 12Y OPTIONS

2,173 answered market questions

every one with its exact SQL, its result and the date it was computed · free, no signup

Contango and Roll Yield in Commodity ETFs
Two listed crude oil funds, calendar year price changeranking · 2026-08-10 · 5×4Preview: 5 ranked values, largest first. Both funds rebased to 100 at the start of the window, month by monthseries · 2026-08-10 · 60×4Preview: a 16-point series, ending higher. The financing leg: 3 month and 1 year Treasury yields by monthseries · 2026-08-10 · 91×4Preview: a 16-point series, ending higher.
Two listed crude oil funds, calendar year price change

Two listed crude oil funds, calendar year price change

most recentas of ranking 5×4read in context →
Two listed crude oil funds, calendar year price change — 5 rows by 4 columns, computed from US exchange, SIP and OPRA data.
yearuso_pctusl_pctgap_pct
202167.8865.272.62
202227.8725.842.02
2023-1.462.16-3.62
202414.879.355.52
2025-10.1-13.513.41
the exact SQL behind every number
SELECT
    toString(toYear(date)) AS year,
    round((argMaxIf(toFloat64(close), date, ticker = 'USO')
         / argMinIf(toFloat64(close), date, ticker = 'USO') - 1) * 100, 2) AS uso_pct,
    round((argMaxIf(toFloat64(close), date, ticker = 'USL')
         / argMinIf(toFloat64(close), date, ticker = 'USL') - 1) * 100, 2) AS usl_pct,
    round(((argMaxIf(toFloat64(close), date, ticker = 'USO')
          / argMinIf(toFloat64(close), date, ticker = 'USO'))
         - (argMaxIf(toFloat64(close), date, ticker = 'USL')
          / argMinIf(toFloat64(close), date, ticker = 'USL'))) * 100, 2) AS gap_pct
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('USO', 'USL')
  AND date >= '2021-01-01'
  AND date <  '2026-01-01'
GROUP BY toYear(date)
HAVING countIf(ticker = 'USO') > 100
   AND countIf(ticker = 'USL') > 100
ORDER BY year
$