Data Explorer
Every registered metric in core.metric_registry. Percentiles, robust z and 1y rank come from core.metric_context() — the same function the MCP server reads, held equal to the worker's Python implementation by test_context_sql.py. Each metric page lists every entity's own context at a chosen date, sortable. Recurrence and cross-sectional rank exist only in the Python version so far, so they are not shown here.
Registered tables
Raw facts, as collected: filter on any column, sort, and chart any numeric column against the table's date. Export is filtered per row on provenance, because core.fred_observations holds series under two different licences.
Registered metrics
| Metric | Entity | Unit | PIT class | n min | Export | Read by |
|---|---|---|---|---|---|---|
| cboe_skew Cboe SKEW index: the implied probability of a large S&P 500 fall, scaled so 100 means a normal distribution. Higher is a fatter priced left tail. | market | index_points | RESTATED | 20 | restricted | Page 5, beside the VIX curve: the priced tail of the S&P 500 |
| curve_10y_2y 10-year minus 2-year Treasury yield. Negative is an inverted curve. | market | percentage_points | IMMUTABLE | 20 | allowed | Page 10's yield curve; the regime view's rates context |
| curve_10y_3m 10-year minus 3-month Treasury yield - the inversion measure with the longer record. | market | percentage_points | IMMUTABLE | 20 | allowed | Page 10's yield curve; the regime view's rates context |
| hy_oas ICE BofA US High Yield Index option-adjusted spread, the FIRST value FRED published for each date - a later revision is not what was known then. | market | percent | IMMUTABLE | 20 | restricted | the regime view's credit axis and its 'credit-stress' flag |
| occ_equity_oi Total equity-option open interest across all OCC clearing members. | market | contracts | IMMUTABLE | 20 | restricted | Data Explorer market panel; the denominator behind the put/call ratio |
| occ_equity_put_call Equity put open interest over equity call open interest. OPEN INTEREST, not volume - it is a position measure, and the far more commonly quoted put/call VOLUME ratio is a different statistic with a different history. | market | ratio | IMMUTABLE | 20 | restricted | Data Explorer market panel; positioning context on the Options workbench |
| regime_code 1 uptrend-calm, 2 uptrend-stressed, 3 downtrend-calm, 4 downtrend-stressed; NULL when trend or volatility is unknown. A CODE, NOT A STATISTIC - never rank it. The thresholds live in app/core/regime.py, and every run rewrites the whole history, so a relabel re-derives it by the next evening. | market | code | RESTATED | 20 | restricted | Page 10 Regime Monitor's label and timeline; the regime-conditioned base rates |
| regime_flags Bitmask: 1 narrow (an uptrend carried by three sectors or fewer), 2 credit-stress (HY OAS at its 3y 90th percentile), 4 correlated (sector correlation at its 3y 90th). 0 is none; NULL when the label is unknown. A CODE, NOT A STATISTIC. | market | bitmask | RESTATED | 20 | restricted | Page 10 Regime Monitor's flag chips |
| reserves Reserve balances with Federal Reserve Banks, first-published vintage. The first leg of the liquidity axis; TGA, RRP and SOFR-EFFR follow when their daily ALFRED pulls are windowed (the full-vintage request is refused). | market | usd_millions | IMMUTABLE | 20 | allowed | the regime view's liquidity axis (DESIGN.md:147 'reserves + TGA + RRP') |
| rrp Overnight reverse repo take-up at the Fed, BILLIONS (reserves and TGA are millions). | market | usd_billions | IMMUTABLE | 20 | allowed | the regime view's liquidity axis - DESIGN.md:147's RRP leg; Page 10's liquidity panel |
| sector_breadth_200dma Share of XLE XLF XLI XLK XLP XLU XLV XLY above their 200-session mean, in eighths. NULL unless all eight are known that day. | market | fraction | RESTATED | 20 | allowed | the regime view's breadth axis and its 'narrow' flag (DESIGN.md:147) |
| sector_corr_63d Mean of the 28 pairwise correlations among the eight sector funds' daily returns over the trailing 63 sessions. High means one factor is moving everything - the diversification that fails in a stress. | market | correlation | RESTATED | 20 | allowed | the regime view's correlation axis and its 'correlated' flag |
| sector_dispersion_21d Sample stdev across the eight sector funds of their 21-session returns. High means sectors are going different ways, the opposite of correlated. | market | return_fraction | RESTATED | 20 | allowed | the regime view's dispersion axis (DESIGN.md:147) |
| sofr_effr_spread_bp Secured over unsecured overnight funding, in basis points. It widens when collateral or reserves get scarce - the funding-stress signature of 2019-09. | market | basis_points | IMMUTABLE | 20 | allowed | the regime view's liquidity axis - DESIGN.md:147's SOFR-EFFR leg; Page 10 |
| tga The Treasury General Account at the Fed, weekly. A rising TGA drains reserves. | market | usd_millions | IMMUTABLE | 20 | allowed | the regime view's liquidity axis - DESIGN.md:147's TGA leg; Page 10's liquidity panel |
| vix Cboe VIX close, the 30-day implied volatility of the S&P 500. Highest close on record 82.69 (2020-03-16); the bound catches a units error, not a crisis. | market | index_points | RESTATED | 20 | restricted | the regime view's volatility axis (DESIGN.md:147: 'VIX percentile') and Page 5's VIX term structure |
| vix_term_ratio VIX divided by VIX3M. BELOW 1 IS CONTANGO - the normal curve, three-month vol dearer than one-month. ABOVE 1 IS BACKWARDATION, which is what stress looks like. The index-level twin of the per-symbol iv_term_slope_30_90. | market | ratio | RESTATED | 20 | restricted | the regime view's volatility term-structure sign (DESIGN.md:147) and Page 5's contango/backwardation state for the index itself |
| vix3m Cboe 3-month VIX (formerly VXV); from 2009. | market | index_points | RESTATED | 20 | restricted | Page 5's VIX term structure, the back point; the far leg of vix_term_ratio |
| vix9d Cboe 9-day VIX. Moves more than VIX around events; from 2011. | market | index_points | RESTATED | 20 | restricted | Page 5's VIX term structure, the front point (DESIGN.md:235) |
| vvix Cboe VVIX, the implied volatility of VIX options; from 2006. | market | index_points | RESTATED | 20 | restricted | Page 5, beside the VIX curve: the volatility of VIX itself |
| call_wall_distance_pct The strike carrying the most call gamma x OI across expiries, as level minus spot over spot. Level = the session's unadjusted close x (1 + value). | symbol | return_fraction | RESTATED | 20 | restricted | DESIGN.md:169's wall strikes; Page 4's gamma-wall markers; L's test of max pain converging only where it meets a wall |
| close_adj Split-, factor- and dividend-adjusted close as of the run date. A LEVEL, NOT A STATISTIC: its percentile against its own history only says where the price trend has carried it - ret_1d, px_vs_200dma and drawdown_252d are the ones to rank. | symbol | usd | RESTATED | 20 | allowed | Data Explorer price panel; the basis of every other price metric |
| dollar_volume_21d Mean close x volume over the trailing 21 sessions. A LEVEL, NOT A STATISTIC: price times shares, so its percentile against its own history rises with the price alone - a name that tripled reads 'high liquidity' on unchanged volume. Used across names at one date (tradability), never ranked against its past. | symbol | usd | RESTATED | 20 | allowed | Data Explorer liquidity column; the tradability score (DESIGN.md §3.2) |
| drawdown_252d close / trailing 252-session high - 1. Zero at a new high. | symbol | return_fraction | RESTATED | 20 | allowed | Data Explorer; drawdown context on the Symbol Dossier |
| gamma_flip_distance_atr Where net GEX changes sign, as LEVEL MINUS SPOT in 14-session ATRs. NEGATIVE means spot is above the flip, on the side the sign convention calls positive gamma. Found by repricing the book at hypothetical spots (sticky strike, r = 0); NULL when no flip lies within 25% of spot. | symbol | atr_multiples | RESTATED | 20 | restricted | DESIGN.md:169's gamma flip distance in ATR units |
| gamma_flip_level Where net GEX changes sign, in dollars on the session's own share basis. A LEVEL, NOT A STATISTIC: its percentile tracks the price and means nothing - gamma_flip_distance_atr is the one to rank. NULL under the same conditions as the distance. | symbol | usd | RESTATED | 20 | restricted | Page 4 (Options, /options/[ticker]): the gamma-flip marker on the strike axis, read as a level rather than rebuilt from distance x ATR in TS |
| gamma_flip_state WHY gamma_flip_level is or is not there. 1: a flip was found within 25% of spot. 0: the repriced book does not cross zero within 25% - a real reading, e.g. CRSR net long everywhere nearby. -1: the model and the vendor's gamma disagree about which side of the flip spot is on, which in practice means spot is near one. NULL: no book. A CODE, NOT A STATISTIC: never rank it or read its percentile. | symbol | state_code | RESTATED | 20 | restricted | Page 4's flip marker: tells 'no flip within 25%' (a reading) from 'undetermined' (model and vendor disagree) where the level is NULL |
| iv_cm_30d 30-day constant-maturity implied volatility. The canonical tenor: long enough to be immune to the 0DTE collapse that made v1's front-month column meaningless, short enough to respond to a catalyst. | symbol | annualised_stdev | RESTATED | 20 | allowed | Page 4's Chain & IV Surface, and DESIGN.md:157's rank-versus-percentile badge - the one that needs BOTH statistics over one window |
| iv_cm_90d 90-day constant-maturity implied volatility. | symbol | annualised_stdev | RESTATED | 20 | allowed | the far leg of DESIGN.md:159's term-structure slope (CM30 - CM90), and its contango/backwardation state |
| iv_term_regime_days SIGNED RUN LENGTH: sign is the state, magnitude is how long it has held. +3 means a third consecutive backwardated session; -12 means twelve in contango. One number rather than two because the pair is never read apart - a duration without its state is meaningless, and DESIGN.md:159 asks for 'contango/backwardation state AND consecutive days in it'. A slope of exactly zero counts as contango, the commoner state; it has not occurred in 9,250 symbol-days. | symbol | sessions | RESTATED | 20 | allowed | DESIGN.md:159's "consecutive days in it", and the resolution base rates that ask what followed a backwardation flip |
| iv_term_slope_30_90 CM30 minus CM90. NEGATIVE IS CONTANGO - the normal upward-sloping curve, where longer-dated vol is dearer. POSITIVE IS BACKWARDATION: the near term is bid above the far, which is what stress looks like. Measured across the Core 40, 40.9% of symbol-days are backwardated, so this is not a rare state and a flag keyed to it alone would fire constantly. | symbol | annualised_stdev_diff | RESTATED | 20 | allowed | DESIGN.md:159's term-structure slope, and the contango/backwardation state on Page 5's Vol & Dealer Regime |
| max_pain_distance_pct Max pain of the nearest monthly expiry at least 7 days out, as level minus spot over spot. The 7-day floor keeps expiry-week pinning noise off the series and hands each monthly over the Friday before it expires. | symbol | return_fraction | RESTATED | 20 | restricted | DESIGN.md:169's max pain; Page 4's max-pain marker; W's grading of max pain as an external signal |
| max_pain_expiry_dte Calendar days from the session to the monthly expiry max_pain_distance_pct was computed on: expiry = as_of_date + value. Between 7 (the roll floor) and 120 (the table's DTE limit). A LABEL, NOT A STATISTIC: it saws from ~35 down to 7 and resets every month; never rank it. | symbol | calendar_days | RESTATED | 20 | restricted | Page 4's max-pain marker label, so the page reads the expiry instead of re-implementing chain_metrics.monthly_expiry in TS |
| net_gex Dealer net gamma exposure, dollars of the underlying traded per 1% move to stay hedged. ASSUMES DEALERS ARE LONG CALLS AND SHORT PUTS - the common convention, and exactly what L exists to test. Positive means hedging damps moves. 0DTE contracts excluded: they are not held past the close. | symbol | usd_per_1pct_move | RESTATED | 20 | restricted | DESIGN.md:169's net GEX percentile; Page 5's net GEX with history; the predictor in L's test against next-day realized vol |
| put_wall_distance_pct The strike carrying the most put gamma x OI across expiries, as level minus spot over spot. Level = the session's unadjusted close x (1 + value). | symbol | return_fraction | RESTATED | 20 | restricted | DESIGN.md:169's wall strikes; Page 4's gamma-wall markers; L's test of max pain converging only where it meets a wall |
| px_vs_200dma close / 200-session mean - 1. Null until 200 sessions exist. | symbol | ratio_deviation | RESTATED | 20 | allowed | the trend axis of the regime view (DESIGN.md:145) |
| realized_vol_21d Annualised stdev of the trailing 21 session returns. COMPUTED BACKWARD, unlike UW's /volatility/realized which computes it FORWARD over ~20 sessions and is therefore not knowable on the date it is stamped with (DESIGN.md:139, the highest-priority provenance hazard in the document). | symbol | annualised_stdev | RESTATED | 20 | allowed | Data Explorer; the volatility axis of the regime view (DESIGN.md:145) |
| ret_1d Total return over one session, dividends included. | symbol | return_fraction | RESTATED | 20 | allowed | Data Explorer; realized-vol and drawdown inputs; event-study returns |
| rr_10d 10-delta risk reversal. Wider than the 25-delta on most days, as the tail of the smile should be. | symbol | vol_points_fraction | IMMUTABLE | 20 | allowed | DESIGN.md:159's 10-delta risk reversal - the tail of the smile |
| rr_25d 25-delta risk reversal: put-wing minus call-wing implied volatility. | symbol | vol_points_fraction | IMMUTABLE | 20 | allowed | DESIGN.md:159's 25-delta risk reversal, and Page 4's skew small-multiples |
| vrp_30d 30-day implied minus the 21-session volatility subsequently realised. Positive means implied overpaid, which it did on 59% of measured rows. DATED BY WHEN IT BECAME KNOWABLE, not by the day it describes: the realised leg closes 28-33 sessions later, and a percentile over rows dated by their window start would read a month into its own future. | symbol | annualised_stdev_diff | IMMUTABLE | 20 | allowed | DESIGN.md:159's variance risk premium - the most decision-relevant volatility statistic available - as a percentile of its own history |
| zero_dte_volume_share Share of the session's option volume in contracts expiring that session, denominator truncated at 120 DTE. ONLY SPY, QQQ AND IWM, which list a 0DTE expiry every session; NULL for every other name, whose Friday weekly would make it a once-a-week statistic under the same name. | symbol | fraction | RESTATED | 20 | restricted | Page 4's 0DTE share of volume (DATA_SOURCES.md), a header cell for SPY, QQQ and IWM |