Measures
The meaning, computation, units and lag of each measure on TickPlunge, how to interpret it, and where it appears.
Each entry defines one measure: its meaning, its computation, its units, its date and how to interpret it. Each entry also lists the widgets, Calculator functions and API fields that display the measure. Entries are grouped by the part of the site they belong to. The index below links to each entry.
Some widgets display a short label instead of the full name. Each entry lists those labels under "Also shown as", so a column header or a chip can be matched to its entry.
Volatility
Volatility risk premium (VRP)
How far options price volatility above the volatility the stock has shown. A positive VRP means options are priced above recent moves.
Also shown as VRP, z(30d)
- How it is worked out
- 30-day implied volatility divided by 30-day historical volatility, minus 1. Both are ORATS values at the same day's close; historical volatility is the ORATS 30-day close-to-close figure.
- Units
- A ratio, shown as a percent. 25% means implied volatility is 25% above historical volatility.
- Date and lag
- Each value is stamped with the date of the close it uses. The data updates once a day before the open, so the latest value is from the previous trading day's close.
- How to read it
- Above 0, options are priced above the stock's recent moves; below 0, they are priced below them. Compare a symbol with its own history. The z-score shows how far today's value is from its 20-day mean, in standard deviations.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| extreme rich | z-score above 2 | VRP is more than two standard deviations above its 20-day mean. |
| rich | z-score above 1 and up to 2 | VRP is high for this symbol. |
| neutral | z-score above -1 and up to 1 | VRP is within its usual range. |
| cheap | z-score above -2 and up to -1 | VRP is low for this symbol. |
| extreme cheap | z-score of -2 or below | VRP is two or more standard deviations below its 20-day mean. |
| RICH (vol tile badge) | z-score above 1.5 | The Vol Tile marks the premium as high for this symbol. |
| CHEAP (vol tile badge) | z-score below -1.5 | The Vol Tile marks the premium as low for this symbol. |
| accented row (cross-asset grid) | z-score of 2 or more in size | The VRP Z-Score widget accents the row as unusual in either direction. |
Where it appears
- Widgets: VRP Series, Z-Score Histogram, Vol Tile, Stats Panel, VRP Z-Score, IV/HV Scatter, Options Dispatch, Card Detail
- Functions:
vrp,vrp.series,vrpz,vrpz.series - API:
GET /api/v1/vrp/{symbol}fieldsvrp,iv30d,hv30 - API:
GET /api/v1/chart/{symbol}/featuresfieldsvrp,vrp_zscore,vrp_regime,vrp_pctile_10,vrp_pctile_90 - API:
GET /api/v1/cross-asset/summaryfields[].vrp,[].vrp_zscore
Caveats
- The Volatility Board shows a different premium: 100 times ex-earnings 30-day implied volatility minus a forecast of 21-session historical volatility, in vol points. The two numbers are not comparable.
- A day with no historical volatility has no VRP.
- The z-score has no value for a symbol's first 19 days. It is 0 on a day the 20-day window has no spread.
- The Vol Tile badge shows N/A while the z-score has no value.
Vol of vol
How much 30-day implied volatility moves from one day to the next. A high value means the options market reprices volatility often and by large amounts.
Also shown as Vol of Vol
- How it is worked out
- The standard deviation of the daily change in ORATS 30-day implied volatility over the last 20 changes. It is not annualized.
- Units
- A decimal in the same units as implied volatility, shown as a percent. 0.0086 displays as 0.9% and means daily moves of about 0.86 volatility points.
- Date and lag
- Each value is stamped with the date of the close it uses. The data updates once a day before the open, so the latest value is from the previous trading day's close.
- How to read it
- A higher value means implied volatility swings more from day to day. Compare a symbol with its own history.
Where it appears
- Widgets: Stats Panel
- Functions:
volofvol,volofvol.series - API:
GET /api/v1/chart/{symbol}/featuresfieldsvol_of_vol
Caveats
- A symbol has no value for its first 20 days.
- The Volatility Board's Volatility of implied volatility is a different number. It is annualized and uses the log of implied volatility.
Signal strength
A score from 0 to 100 that rises as the VRP z-score or the IV percentile moves away from its middle value. It measures how unusual the two values are together.
Also shown as Signal Strength
- How it is worked out
- Two halves of 50 points each. The first is 50 times the size of the VRP z-score over 3, capped at 50. The second is 50 times the distance of the IV percentile from 50, over 50.
- Units
- Points from 0 to 100, displayed to 2 decimals. A z-score of 3 with an IV percentile of 75 gives 75.00.
- Date and lag
- Each value is stamped with the date of the close it uses. The data updates once a day before the open, so the latest value is from the previous trading day's close.
- How to read it
- Near 0, both inputs are in their usual range. Near 100, the VRP z-score is 3 or more in size and the IV percentile is near 0 or 100. The score has no sign; use the two inputs for direction.
Where it appears
- Widgets: Stats Panel
- API:
GET /api/v1/chart/{symbol}/featuresfieldssignal_strength
Caveats
- An IV percentile of 10 and one of 90 add the same 40 points.
30-day implied volatility (IV)
The annualized volatility that the market prices into a symbol's options 30 days out.
Also shown as IV 30D, IV 30d, IV
- How it is worked out
- The ORATS daily summary value for the symbol's 30-day implied volatility, a decimal, used as published.
- Units
- An annualized decimal, shown as a percent. 0.124 shows as 12.4%, an annualized standard deviation of returns.
- Date and lag
- The daily run starts at 00:15 UTC, Tuesday to Saturday, and uses the previous session's ORATS summary. Each value is stamped with that session's trade date.
- How to read it
- A high value means options are priced for large moves; a low value means options are priced for small moves. Use IV percentile to compare it with the symbol's own history, and VRP to compare it with historical volatility.
Where it appears
- Widgets: IV vs HV, Vol Tile, Stats Panel
- Functions:
iv30,iv30.series - API:
GET /api/v1/vrp/{symbol}fieldsiv30d - API:
GET /api/v1/chart/{symbol}/featuresfieldsiv30d - API:
GET /api/v1/cross-asset/summaryfieldsiv30
Caveats
- VIX 30D for the same symbol sums prices across every out-of-the-money strike, so it differs from this number.
- The ATM IV 30D in the Stats Panel Vol Surface view comes from the fitted volatility surface and differs from this ORATS figure.
- A day with no VRP record has no value here, because the feature series is built from the VRP records.
Historical volatility (HV)
The annualized volatility of the stock's daily closes over the last 30 days.
Also shown as HV 30D, HV 30d, HV
- How it is worked out
- The ORATS 30-day close-to-close historical volatility, published as a percent and divided by 100. Each trade date uses the latest ORATS value on or before that date.
- Units
- An annualized decimal, shown as a percent. 0.1233 shows as 12.3%.
- Date and lag
- The daily run starts at 00:15 UTC, Tuesday to Saturday, and loads it with the previous session's data. ORATS sometimes publishes it a day or more late, for example after a long weekend.
- How to read it
- A high value means the stock has moved a lot over the last 30 days; a low value means it has been quiet. Compare it with 30-day implied volatility to see how far options price above recent moves.
Where it appears
- Widgets: IV vs HV, Vol Tile, Stats Panel
- Functions:
hv30,hv30.series - API:
GET /api/v1/vrp/{symbol}fieldshv30 - API:
GET /api/v1/chart/{symbol}/featuresfieldshv_30 - API:
GET /api/v1/cross-asset/summaryfieldshv30
Caveats
- The site shows one window, 30 days. ORATS also publishes 10, 20, 60, 90, 120 and 252 day figures; the pipeline stores them, but no widget plots them.
- The Volatility Board's RV is a separate 21-session estimate in volatility points. The two numbers are not comparable.
- A backfilled day uses the latest value at most 7 days before it; a day with nothing that recent has no value.
Implied minus historical volatility (IV minus HV)
The gap between 30-day implied volatility and 30-day historical volatility, in volatility points. It measures the same premium as VRP, as a difference instead of a ratio.
Also shown as Spread
- How it is worked out
- 30-day implied volatility minus 30-day historical volatility on the same trade date, computed in the browser. A day missing either value has no point.
- Units
- A decimal difference in volatility points, shown with a percent sign. 0.02 shows as 2.0%, two volatility points.
- Date and lag
- It has the lag of its two inputs. Each point is stamped with the trade date of the close it uses.
- How to read it
- Above 0, options price more movement than the stock has shown; below 0, less. A 2-point gap is a larger share of 10% volatility than of 40%.
Where it appears
- Widgets: IV vs HV
Caveats
- VRP divides the two volatilities instead of subtracting them, so a 2-point gap at 10% historical volatility is a VRP of 20%.
IV percentile
The rank of today's 30-day implied volatility within the symbol's own stored history. It shows whether options are priced high or low for this symbol.
Also shown as IV Pctile, IV Pctl, IV%, IV Percentile, Regime, REG
- How it is worked out
- The share of days, from the symbol's first stored day through today, with a strictly lower 30-day implied volatility, times 100. Today counts in the total.
- Units
- A percentile from 0 to 100, shown with a percent sign. 27% means 27% of stored days had lower implied volatility.
- Date and lag
- It updates with 30-day implied volatility in the daily run and has the same trade date.
- How to read it
- Near 100, implied volatility is close to the top of its range for this symbol; near 0, close to the bottom.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Crisis | IV percentile of 90 or more | Implied volatility is in the top tenth of its own history. |
| High Vol | IV percentile of 70 or more and below 90 | Options are priced above their usual level for this symbol. |
| Normal | IV percentile of 30 or more and below 70 | Implied volatility is in the middle of its range. |
| Low Vol | IV percentile below 30 | Options are priced in the bottom part of their own range. |
| ELEVATED | VIX tile badge: IV percentile of 80 or more | Implied volatility is in the top fifth of its history. |
| DEPRESSED | VIX tile badge: IV percentile of 20 or less | Implied volatility is in the bottom fifth of its history. |
| NEUTRAL | VIX tile badge: IV percentile above 20 and below 80 | Implied volatility is inside its usual range. |
| N/A | VIX tile badge: no IV percentile | The VIX Tile has no signal. The tile has no accent colour |
Where it appears
- Widgets: Vol Tile, VIX Tile, Stats Panel, VRP Z-Score, IV/HV Scatter
- Functions:
ivpctile,ivpctile.series - API:
GET /api/v1/chart/{symbol}/featuresfieldsiv_pctile,vol_regime,vol_regime_interp - API:
GET /api/v1/cross-asset/summaryfieldsiv_pctile,vol_regime
Caveats
- The history starts at the symbol's first stored day (2022-01-03 for SPY), so a symbol added later ranks against a shorter history.
- The first day is 0, and early values swing widely while few days are stored.
- A new high shows slightly below 100, because today counts in the total but not among the lower days.
- The regime is a rank within the symbol's own history. Crisis marks a high rank for this symbol and does not indicate a market-wide crisis.
HV percentile
The rank of today's 30-day historical volatility within the symbol's own stored history. It shows whether the stock has moved more or less than usual.
Also shown as HV Pctile, HV Pctl, HV%, HV Percentile
- How it is worked out
- The share of days, from the symbol's first stored day through today, with a strictly lower 30-day historical volatility, times 100. Today counts in the total.
- Units
- A percentile from 0 to 100, shown with a percent sign. 38% means 38% of stored days had lower historical volatility.
- Date and lag
- It updates with historical volatility in the daily run and has the same trade date.
- How to read it
- Near 100, the stock has rarely moved this much; near 0, rarely this little. Compare it with IV percentile to see whether options rank above or below recent moves.
Where it appears
- Widgets: Stats Panel, VRP Z-Score, IV/HV Scatter
- Functions:
hvpctile,hvpctile.series - API:
GET /api/v1/chart/{symbol}/featuresfieldshv_pctile - API:
GET /api/v1/cross-asset/summaryfieldshv_pctile
Caveats
- The history starts at the symbol's first stored day, so a symbol added later ranks against a shorter history.
- The first day is 0, and a new high shows slightly below 100.
VIX 30-day index (VIX 30D)
A 30-day implied volatility index computed from the symbol's own option prices with the CBOE VIX method.
Also shown as VIX 30D, VIX 30-Day
- How it is worked out
- The CBOE variance method. Out-of-the-money option mid prices are summed, each weighted by strike spacing over strike squared, for the two expiries around 30 days. The result is interpolated to 30 days.
- Units
- Percent points. 15.9 is 15.9%, an annualized volatility.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's option chain. It is stamped with that trade date.
- How to read it
- A high value means the symbol's options price large moves over the next 30 days; a low value means small moves. Compare it with VIX 3M for the term structure.
Where it appears
- Widgets: VIX 30-Day, VIX Tile, Stats Panel
- Functions:
vix30,vix30.series - API:
GET /api/v1/vix/{symbol}fieldsvix_30d
Caveats
- The CBOE VIX uses SPX options. VIX 30D for SPY uses SPY options, so the two differ.
- The run discounts with the ORATS 5-week interest rate and skips expiries under 7 days.
- A day has no value when the chain lacks two usable expiries around 30 days.
- It prices every out-of-the-money strike, so it differs from 30-day implied volatility. For SPY on 2022-01-03 it was 15.9 against 12.3%.
VIX 3-month index (VIX 3M)
The VIX 30D index method, interpolated to 91 days. It measures the movement the market prices over the next three months.
Also shown as VIX 3M, VIX 3-Month
- How it is worked out
- The CBOE variance method as for VIX 30D, with the two bracketing expiries and the interpolation set to a 91-day target.
- Units
- Percent points. 20.9 is 20.9%, an annualized volatility.
- Date and lag
- It comes from the same daily run, option chain and trade date as VIX 30D.
- How to read it
- A high value means options price large moves over three months. VIX 3M moves less than VIX 30D; compare the two for the term structure.
Where it appears
- Widgets: VIX 3-Month, VIX Tile, Stats Panel
- Functions:
vix3m,vix3m.series - API:
GET /api/v1/vix/{symbol}fieldsvix_3m
Caveats
- A symbol with no listed expiry beyond 91 days has no value.
- It is computed from the symbol's own chain. The site does not use the CBOE VIX3M index.
VIX term structure ratio
VIX 30D divided by VIX 3M. It shows whether options price more movement over the next month than over the next three months.
Also shown as VIX Ratio, VIX Basis, Ratio
- How it is worked out
- VIX 30D divided by VIX 3M on the same trade date, computed in the browser. The VIX Basis chart keeps only days where both are above 0.
- Units
- A plain ratio. The VIX Tile and Vol Tile display it as ×0.85; the VIX Basis chart displays 0.85.
- Date and lag
- It uses the trade date of the VIX record it divides.
- How to read it
- Below 1, near-term volatility is priced below three-month volatility, the usual shape in calm markets. Above 1, near-term volatility is priced higher; this shape marks stress. The VIX Basis chart draws bands at its rolling mean and at 1 and 2 standard deviations.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Parity | a ratio of 1 | VIX 30D equals VIX 3M; above the line near-term volatility is priced higher. |
Where it appears
Caveats
- The VIX Basis bands use a 10, 20, 50 or 100 day window, set by the Window control. The first days of the window have no band.
- The Vol Tile colours a ratio above 1.02 and a ratio below 0.98 differently from one in between. It displays no label for them.
VIX term spread
VIX 30D minus VIX 3M, in volatility points. It shows the same term structure as the ratio, as a difference.
Also shown as Term Spread
- How it is worked out
- VIX 30D minus VIX 3M on the latest trade date, computed in the browser when both are present.
- Units
- Percent points, signed. The VIX Tile and the Stats Panel both display -3.1pp for SPY on 2026-08-21.
- Date and lag
- It uses the trade date of the latest VIX record.
- How to read it
- A negative value means near-term volatility is priced below three-month volatility, the usual shape in calm markets. A positive value means near-term volatility is priced higher; this shape marks stress.
Where it appears
- Widgets: VIX Tile, Stats Panel
- API:
GET /api/v1/vix/{symbol}fieldsvix_30d,vix_3m
Caveats
- The Stats Panel shows a dash when either index is missing or not above 0.
ATM straddle price
The price of the at-the-money call plus the at-the-money put for the expiry nearest 30 days, as a share of the stock price. It approximates the size of move, in either direction, that the market prices to that expiry.
Also shown as ATM Straddle
- How it is worked out
- ORATS call value plus put value at the strike whose call delta is nearest 0.50, divided by the stock price. The expiry is the one nearest 30 days.
- Units
- A decimal share of spot, shown as a percent. 0.027 shows as 2.70% of the stock price.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chain. It is stamped with that trade date.
- How to read it
- A higher value means the market prices a larger move to expiry. Because it is a share of spot, it is comparable across symbols and price levels.
Where it appears
- Widgets: ATM Straddle
- Functions:
straddle,straddle.series - API:
GET /api/v1/straddle/{symbol}fieldsstraddle_pct
Caveats
- The expiry changes as contracts roll, so days to expiry range from 15 to 45 and the value jumps on a roll day.
- A day has no value when no expiry is within 15 days of 30, or no strike has a call delta within 0.10 of 0.50.
25-delta strangle price
The price of an out-of-the-money call and put, each near 25 delta, for the expiry nearest 30 days, as a share of the stock price. It measures the price of the tails.
Also shown as 25Δ Strangle
- How it is worked out
- ORATS call value at the strike with call delta nearest 0.25, plus put value at the strike with call delta nearest 0.75. The sum is divided by the stock price.
- Units
- A decimal share of spot, shown as a percent. 0.0114 shows as 1.14% of the stock price.
- Date and lag
- It comes from the same daily run, expiry and chain as the ATM straddle price.
- How to read it
- A higher value means the market charges more for large moves in either direction. Compare it with the ATM straddle price to see how much of the premium is in the wings.
Where it appears
- Widgets: 25Δ Strangle
- Functions:
strangle,strangle.series - API:
GET /api/v1/straddle/{symbol}fieldsstrangle_pct
Caveats
- A put at call delta 0.75 has a put delta near -0.25. Each leg must be within 0.10 delta of its target, or the day has no value.
- It uses the straddle's expiry, so it jumps on the same roll days.
Cross-asset
IV percentile minus HV percentile
How far a symbol's IV percentile is above or below its HV percentile, each ranked against its own history. Sorting by it orders symbols from cheap to rich options.
Also shown as Richness, Richness (IV% - HV%)
- How it is worked out
- IV percentile minus HV percentile on the latest trade date, computed in the browser for each symbol in the cross-asset summary.
- Units
- Percentile points from -100 to 100. 20 means implied volatility ranks 20 points higher in its history than historical volatility does in its own.
- Date and lag
- It uses each symbol's latest VRP record, so two symbols have different trade dates when one has missed a day.
- How to read it
- A positive value means options rank richer than recent moves; a negative value means cheaper. The IV/HV Scatter plots HV percentile across and IV percentile up, with a diagonal where the two ranks are equal.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Rich IV Low HV | IV percentile above 50 and HV percentile below 50 | Options rank high while the stock has been quiet. |
| Rich Both | both percentiles above 50 | Options and recent moves both rank high. |
| Cheap Both | both percentiles below 50 | Options and recent moves both rank low. |
| Cheap IV High HV | IV percentile below 50 and HV percentile above 50 | Options rank low while the stock has been moving. |
Where it appears
- Widgets: IV/HV Scatter
- API:
GET /api/v1/cross-asset/summaryfieldsiv_pctile,hv_pctile
Caveats
- Each rank uses that symbol's own history, so two symbols with the same gap can have very different volatility levels.
- The quadrant labels are at fixed positions on the IV/HV Scatter. The cut at 50 is the scatter's crosshair; the API does not return it.
VRP correlation
How closely two symbols' daily VRP values move together over the last year of shared trading days.
Also shown as VRP Correlation
- How it is worked out
- The Pearson correlation of daily VRP levels for each pair, over the last 252 trading days on which every symbol has a VRP value.
- Units
- A coefficient from -1 to 1, displayed to two decimals. 0.51 means the two tend to rise and fall together; the diagonal is 1.
- Date and lag
- The daily run recomputes it after it writes every symbol's VRP. The window ends on the last trading day that all symbols share.
- How to read it
- Near 1, the two premiums move together, so a short volatility position in both is close to one position. Near 0, they move independently; below 0, they move in opposite directions.
Where it appears
- Widgets: correlation-matrix
- API:
GET /api/v1/cross-asset/correlationsfieldscorrelations,symbols,n_obs,window_start,window_end
Caveats
- One symbol with a short history shortens the window for every pair, because the window counts only days all symbols share.
- With fewer than 20 shared days, or a pair with no variance, the run keeps the previous matrix and the end date stops moving.
- It correlates VRP levels instead of daily changes, so two premiums that drift the same way correlate without daily co-movement.
- The VRP Correlation matrix always covers every symbol; selecting symbols does not shrink it.
Surface
At-the-money implied volatility (ATM IV)
The implied volatility of an at-the-money option, taken from the fitted volatility surface. Across tenors it forms the term structure. ATM IV 30D is the value at 30 days.
Also shown as ATM IV 30D, ATM IV, ATM, IV
- How it is worked out
- The site fits one SSVI smile per expiry to the previous session's option quotes, with an extended SSVI for TSLA, AMD and USO. It samples the fit on a grid of 8 tenors (7, 14, 30, 60, 90, 120, 180 and 365 days) by 16 deltas. ATM IV is the grid value at 0.50 delta; ATM IV 30D uses the 30-day row.
- Units
- An annualized decimal, shown as a percent. 0.1254 shows as 12.5%.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, fits the surface to the previous session's option chains. Each value is stamped with that session's trade date.
- How to read it
- A high value means options price large moves; a low value means small moves. Compare it across tenors for the term structure, and against the symbol's own history.
Where it appears
- Widgets: vol-surface-3d, Vol Smile, Term Structure, Vol Surface Tile, Skew Tile, Stats Panel
- Functions:
ivsurf,ivsurf.smile,ivsurf.term - API:
GET /api/v1/vol-surface/{symbol}fieldstenors,deltas,data - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsatm_iv_30d
Caveats
- It comes from the fitted surface, so it differs from the ORATS 30-day implied volatility.
- The ATM Vol in the Dist Stats Panel and Greek Stats Panel is a different number. It is the fitted surface volatility at call delta 0.50 for one listed expiry. Without a fitted surface, it is the ORATS smoothed volatility at one strike of that expiry.
- The 30-day tenor pools nearby expiries into one grid row. It does not correspond to a single listed expiry.
- When the latest fit fails a hard quality check, the site keeps the last published surface and its numbers.
Term-structure slope
The rate at which at-the-money implied volatility rises or falls with time to expiry, between 30 and 90 days. The shape label classifies it as steep, flat or inverted.
Also shown as TS Slope, Slope, TS Shape
- How it is worked out
- (ATM IV at 90 days minus ATM IV at 30 days) times 10000, divided by 60. Both points come from the fitted surface at 0.50 delta.
- Units
- Basis points of volatility per day of tenor. +3.0 bps/d means 90-day IV is 1.8 volatility points above 30-day IV.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the surface fitted to the previous session. It is stamped with that session's trade date.
- How to read it
- A positive value is the usual upward slope, with longer options priced higher. A negative value means near-term options cost more, a sign of near-term stress. Compare it with the symbol's usual slope.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| steep | slope above 1 bp per day | Steep upward term structure, contango. |
| flat | slope above -1 and up to 1 bp per day | Flat term structure. |
| inverted | slope of -1 bp per day or below | Inverted term structure, near-term stress. |
Where it appears
- Widgets: Vol Surface Tile, Skew Tile, Vol Smile, Stats Panel
- API:
GET /api/v1/vol-surface/{symbol}/statsfieldsts_slope,ts_shape,ts_shape_interp
Caveats
- When the 30-day or 90-day point is missing, the slope is 0 and the shape is blank; the Vol Surface Tile then shows flat.
- The slope uses only the 30-day and 90-day points, so it does not describe the 7-day or 180-day ends of the curve.
25-delta skew
How much more the market pays for downside puts than for upside calls, 30 days out. A positive value means puts have the higher implied volatility, the usual case for equities.
Also shown as 25Δ Skew, Skew, Skew Pctile
- How it is worked out
- Implied volatility of the 25-delta put minus implied volatility of the 25-delta call, both from the fitted surface at 30 days. Vol Surface 2D/3D also shows it for every tenor.
- Units
- A decimal difference in implied volatility, shown as a percent. 0.0463 shows as +4.6%, 4.6 volatility points.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the surface fitted to the previous session. It is stamped with that session's trade date.
- How to read it
- A higher value means more demand for downside protection; near 0 means balanced; a negative value means calls are bid over puts. The skew percentile ranks today's value against earlier trade dates, from 0 to 100.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| High put premium, strong downside protection demand | skew above 0.05 | Puts are priced well above calls. |
| Moderate put premium, normal demand | skew above 0.02 and up to 0.05 | The usual equity skew. |
| Balanced skew, no directional bias | skew above -0.02 and up to 0.02 | Puts and calls have about the same implied volatility. |
| Moderate call premium, upside speculation | skew above -0.05 and up to -0.02 | Calls are priced above puts. |
| High call premium, strong upside demand | skew of -0.05 or below | Calls are priced well above puts. |
| STEEP | skew above +0.10 (skew tile badge) | Puts are priced far above calls. |
| FLAT | skew below +0.02 (skew tile badge) | Puts and calls are priced close together, or calls are priced above puts. |
| NORMAL | skew from +0.02 to +0.10, or no value (skew tile badge) | The usual equity skew. |
Where it appears
- Widgets: Skew Tile, Vol Surface Tile, Vol Smile, vol-surface-3d, Stats Panel
- Functions:
ivsurf - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsskew_25d,skew_pctile,skew_interp - API:
GET /api/v1/vol-surface/{symbol}fieldsdata
Caveats
- The skew percentile ranks today against the stored skew of earlier trade dates. With no earlier trade dates the skew percentile has no value, and the Skew Tile shows N/A.
- A day with no 25-delta put or call on the 30-day row shows 0 with no interpretation text.
Smile curvature
How much the 30-day smile bends up at the wings. It measures what the market pays for large moves in either direction.
Also shown as Curvature, Smile Curvature
- How it is worked out
- The mean implied volatility of the 10-delta put and the 10-delta call, minus ATM implied volatility, all at 30 days on the fitted surface. The trading name is the 10-delta butterfly.
- Units
- A decimal difference in implied volatility. 0.022 means the wings are 2.2 volatility points above ATM implied volatility.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the surface fitted to the previous session. It is stamped with that session's trade date.
- How to read it
- A higher value means more is paid for tail moves in both directions; a lower value means a flatter smile. Compare it with the symbol's own history.
Where it appears
- Widgets: Vol Surface Tile, Skew Tile, Stats Panel
- API:
GET /api/v1/vol-surface/{symbol}/statsfieldssmile_curvature
Caveats
- The Vol Surface Tile, Skew Tile and Stats Panel all display it as a percent (2.2%).
- A day with any of the three points missing shows 0.
Surface quality grade
A letter grade for how well the volatility surface fits the option quotes and how much of the grid it fills.
- How it is worked out
- The fit runs five checks: grid coverage, quotes per core tenor, weighted fit error, the SSVI no-arbitrage bound and expiry convergence. A failed hard check gives F; a failed soft check gives C. Otherwise the grade follows the fit error, coverage and convergence (see thresholds).
- Units
- A letter, A, B, C or F. UNKNOWN when no quality report exists.
- Date and lag
- The daily run that writes the surface also writes it, starting at 00:15 UTC, Tuesday to Saturday. The report is stamped with the time it was written.
- How to read it
- A means a tight fit on a full grid. C means a soft check failed or the fit is loose. F means the surface was not published.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| A | every check passes, fit error 20 bp or less, coverage 0.995 or more, convergence 0.98 or more | A tight, complete fit. |
| B | every check passes, fit error 40 bp or less, coverage 0.99 or more, convergence 0.95 or more | A good fit. |
| C | a soft check fails, or every check passes but the B limits are missed | A soft check failed or the fit missed the B limits. |
| F | a hard check fails | The surface was not published. |
Where it appears
- API:
GET /api/v1/vol-surface/{symbol}/qualityfieldsquality_grade,diagnostics,gates - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsquality_grade - API:
GET /api/v1/vol-surface/{symbol}fieldsquality_grade
Caveats
- No widget displays the grade; widgets show the quality status badge.
- The grade describes the latest fit. After an F, widgets show the last published surface instead of the graded fit.
Surface quality status
Whether the latest volatility surface passed its quality checks and was published. Widgets that use the surface show a badge when it did not pass cleanly.
Also shown as Degraded, Blocked, Caution
- How it is worked out
- Published when every check passes. Degraded when a soft check fails. The soft limits are coverage under 0.98, a core tenor with under 14 of 16 deltas, fit error over 75 bp, or convergence under 0.90. Blocked when a hard check fails. The hard limits are coverage under 0.95, a core tenor under 10 deltas, or fit error over 110 bp. Convergence under 0.80 or an SSVI bound over 4 also blocks the surface.
- Units
- A word, published, degraded or blocked; the badge displays Degraded, Blocked or Caution.
- Date and lag
- The daily run that writes the surface also writes it, starting at 00:15 UTC, Tuesday to Saturday.
- How to read it
- No badge means published. Degraded means a soft check failed and the surface was published. Blocked means today's fit failed and the site still shows the last published surface.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Degraded | a soft check fails | The surface was published with a weaker fit or a thinner grid. |
| Blocked | a hard check fails | Today's surface was not published; the numbers on screen are from the last published day. |
| Caution | no quality report, or a status the site does not know | The fit was not checked. |
Where it appears
- Widgets: vol-surface-3d, Vol Smile, Term Structure, Vol Surface Tile, Skew Tile
- API:
GET /api/v1/vol-surface/{symbol}/qualityfieldsquality_status,publish_blocked,quality_as_of - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsquality_status - API:
GET /api/v1/vol-surface/{symbol}fieldsquality_status
Caveats
- After a blocked day, the status describes today's failed fit and the numbers describe an earlier day. Compare the two trade dates.
- A stale surface shows a Stale badge with its date in place of this badge. See Surface stale flag.
Surface stale flag
Whether the surface on screen is older than the newest raw strikes for the symbol. A stale surface is the last good fit, shown because the newer fit failed or did not run.
Also shown as Stale
- How it is worked out
- The API compares the trade date of the surface on screen with the newest raw strikes date for the symbol. The surface is stale when it is earlier. The newer quality report, when one exists, gives the status and the reasons.
- Units
- A true or false flag, the latest trade date, a status word, and a list of reasons. The badge displays Stale and the surface date.
- Date and lag
- Set on every request, so the flag clears as soon as a newer surface is written.
- How to read it
- Stale 2026-10-28 means the numbers are from 2026-10-28. Hover or focus the badge for the reason. Blocked means the newer fit failed its checks; the reasons name the checks. Fit failed means the newer fit did not run; the reason is the error message. Not recorded means no newer quality report exists.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Blocked | the newer quality report is blocked | The newer fit failed a hard check, so it was not published. |
| Fit failed | the newer quality report is fit_failed | The fit raised an error before its checks ran. |
| Not recorded | no newer quality report exists | Nothing recorded why the newer surface is missing. |
Where it appears
- Widgets: vol-surface-3d, Vol Smile, Term Structure, Vol Surface Tile, Skew Tile
- API:
GET /api/v1/vol-surface/{symbol}fieldsstale,latest_trade_date,stale_status,stale_reasons - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsstale,latest_trade_date,stale_status,stale_reasons
Caveats
- A request with as_of carries no stale flag.
- The Stale badge replaces the surface quality status badge on the same widget.
Quote anomaly z-score
How far the quoted implied volatility in one surface cell is from the fitted value, scaled by how far quotes usually are from the fit. A large value marks a quote that the smooth fit does not explain.
Also shown as Anomaly, Anom, Max Z-Score, Max Location
- How it is worked out
- For each quote, take quoted IV minus fitted IV and centre it on the median of all quotes. Divide by 1.4826 times their median absolute deviation. Each grid cell takes the median z-score of the quotes nearest to it. The maximum is the cell with the largest size.
- Units
- Standard units, signed. +2.50σ means quotes in the cell are 2.5 median-based standard deviations above the fit.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's quotes. It is stamped with that session's trade date.
- How to read it
- A value beyond plus or minus 2 counts as an anomaly. A positive value means quotes are rich to the fit; a negative value means cheap. The Stats Panel lists the largest value as Max Z-Score and its tenor and delta as Max Location.
Where it appears
- Widgets: vol-surface-3d, Vol Smile, Greek Flow, Stats Panel
- API:
GET /api/v1/vol-surface/{symbol}fieldsdata - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsmax_anomaly,max_anomaly_tenor,max_anomaly_delta
Caveats
- A cell with no quotes near it has no value and shows as no data. A 0 means the quotes match the fit.
- The z-score uses one spread for the whole surface. Thin wings, where quotes scatter more, show anomalies more often.
Anomaly count
The number of surface cells whose quote anomaly z-score is above 2 in size. Several such cells suggest quotes that do not fit one smooth surface.
Also shown as Anomalies, Anom, Count
- How it is worked out
- Count of grid cells, out of 128, where the size of the quote anomaly z-score is above 2.
- Units
- A whole number of cells. 6 means six of the 128 grid cells.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's quotes. It is stamped with that session's trade date.
- How to read it
- 0 to 2 is normal; 3 or more triggers a caution; 8 or more marks the surface as stressed. Compare it with the symbol's usual count.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| STRESSED | 8 or more cells, or an inverted term structure (vol surface tile badge) | Many quotes are off the fit, or near-term options cost more than longer ones. |
| CAUTION | 3 to 7 cells with a term structure that is not inverted (vol surface tile badge) | Some quotes are off the fit. |
| NORMAL | under 3 cells with a term structure that is not inverted (vol surface tile badge) | Quotes are on the fit. |
Where it appears
- Widgets: Vol Surface Tile, Vol Smile, Stats Panel
- API:
GET /api/v1/vol-surface/{symbol}/statsfieldsanomaly_count
Calendar arbitrage
A drop in total implied variance from one expiry to the next at the same moneyness, in the raw quotes. A longer option should never have less total variance than a shorter one; a value above 0 flags quotes that break this rule.
Also shown as CalArb, Calendar Arb (raw quotes)
- How it is worked out
- Total variance is IV squared times days to expiry over 365. For each pair of neighbouring expiries, each nearer-expiry quote is compared with the later expiry's total variance at the same log moneyness. The violation is the amount by which the nearer one is higher, else 0. Each grid cell keeps its largest violation.
- Units
- Total variance, shown in basis points (times 10000). 0.0003 shows as 3.0 bp.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, checks the previous session's quotes. It is stamped with that session's trade date.
- How to read it
- 0 means no violation. A value above 0 marks quotes open to a calendar spread, or a stale quote. The surface stats response lists the number of flagged cells and the largest value.
Where it appears
- Widgets: vol-surface-3d
- API:
GET /api/v1/vol-surface/{symbol}fieldsdata - API:
GET /api/v1/vol-surface/{symbol}/statsfieldscalendar_arb_count,max_calendar_arb - API:
GET /api/v1/vol-surface/{symbol}/qualityfieldsdiagnostics.max_calendar_arb
Caveats
- It checks raw quotes instead of the fitted surface. The fitted surface on screen can be free of a violation that the raw quotes show in that cell.
- A cell with no quote to compare has no value and shows as no data. An example is a quote outside the later expiry's range of moneyness.
Butterfly arbitrage
A point where the fitted smile at one tenor is not convex across delta. A smile that bends the wrong way implies a negative probability; a value above 0 flags a weak spot in the fit.
Also shown as BflyArb, Butterfly Arb
- How it is worked out
- At each tenor, take each delta with a neighbour on both sides. The value is IV at the delta times 2, minus the IV of both neighbours, when positive; else 0. A window that crosses from puts to calls is skipped.
- Units
- Implied volatility, shown in basis points (times 10000). 0.0069 shows as 69.1 bp.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, checks the surface fitted to the previous session. It is stamped with that session's trade date.
- How to read it
- 0 means the smile is convex at that point. Larger values mean a sharper kink. The surface stats response lists the number of flagged cells and the largest value.
Where it appears
- Widgets: vol-surface-3d
- API:
GET /api/v1/vol-surface/{symbol}fieldsdata - API:
GET /api/v1/vol-surface/{symbol}/statsfieldsbutterfly_arb_count,max_butterfly_arb - API:
GET /api/v1/vol-surface/{symbol}/qualityfieldsdiagnostics.max_butterfly_arb
Caveats
- The first and last delta of each tenor, and the two deltas either side of the put and call boundary, are never checked.
- The check uses implied volatility by delta as a proxy for the price condition, so a small value does not prove an exploitable spread.
Distribution and forwards
Implied probability distribution
The probability density that the option market assigns to each price at one expiry, derived from call prices. Compared with a lognormal curve, it shows where the market prices fatter tails or a lean.
Also shown as Distribution
- How it is worked out
- The Breeden-Litzenberger method: the second difference of the call price across strikes, on the uneven strike grid, scaled so the curve integrates to 1. The call prices are Black-76 prices on the fitted vol surface, discounted at the 5-week rate. When the surface is missing, stale or blocked, they come from the ORATS smoothed volatility, fitted across strikes by a spline. The comparison curve is a lognormal with the expiry's ATM volatility, centred on the forward price.
- Units
- Probability per dollar of price at expiry. The Distribution chart displays it times 100, so 0.002% is a density of 0.00002.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, uses the previous session's chains. It builds a curve for every listed expiry from 5 to 365 days, stamped with that session's trade date.
- How to read it
- A peak left of the forward, or a long left tail, means the market prices downside more than a lognormal does. Compare the shape of the two curves.
Where it appears
- Widgets: Distribution
- Functions:
dist.pdf - API:
GET /api/v1/distribution/{symbol}fieldspoints,dte,spot,atm_vol - API:
GET /api/v1/distribution/{symbol}/tenorsfieldstenors
Caveats
- A selected tenor snaps to the nearest listed expiry; in the recorded response, 30 days returns 29 days for SPY.
- Strikes where the second difference turns negative are dropped. Far strikes can have a small flat density, and this density shifts the tails and the moments.
- Call prices from the ORATS fallback are projected onto a convex curve before the second difference.
- An expiry with under 30 strikes, 20 call prices or 15 usable points has no curve.
- An expiry whose implied mean misses the forward by more than 1% has no curve.
Implied price percentiles
The prices at expiry at the 10th, 25th, 50th, 75th and 90th percentiles of the implied distribution. They show the range of outcomes the market prices.
Also shown as 50% Range, 80% Range, 68% CI, 95% CI
- How it is worked out
- Each percentile is taken from the cumulative implied distribution by linear interpolation between strikes. The percent versions are each price over spot, minus 1, times 100.
- Units
- Dollars for the prices; percent from spot for the percent versions. A 25th percentile of 701.20 against a 765.49 spot is -8.4%.
- Date and lag
- It is built with the implied distribution in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- A wide 25th to 75th range means the market prices large moves. A range below spot means it prices a fall more than a rise. The 50% Range runs from the 25th to the 75th percentile; the 80% Range runs from the 10th to the 90th.
Where it appears
- Widgets: Dist Stats Panel, Stats Panel
- Functions:
dist - API:
GET /api/v1/distribution/{symbol}fieldsprice_p10,price_p25,price_p50,price_p75,price_p90,ci68_pct_low,ci68_pct_high,ci95_pct_low,ci95_pct_high
Caveats
- The Dist Stats Panel 68% CI runs from the 16th to the 84th percentile. Its 95% CI runs from the 2.5th to the 97.5th. Both show percent from spot.
Tail probability
The implied probability that the price at expiry is more than 10% below spot, more than 10% above spot, or more than 20% below spot.
Also shown as P(Down 10%), P(Up 10%), Crash P(20%)
- How it is worked out
- The area under the implied distribution below 90% of spot, above 110% of spot, and below 80% of spot. The trapezoid rule runs on the linearly interpolated density, exactly to each cut point.
- Units
- A probability from 0 to 1, shown as a percent. 0.1937 shows as 19.37%.
- Date and lag
- It is built with the implied distribution in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- Compare the down and up tails with each other, and with the same symbol and tenor on earlier days. The Dist Stats Panel flags a 20% crash probability above 2%.
Where it appears
- Widgets: Dist Stats Panel, Stats Panel
- Functions:
dist - API:
GET /api/v1/distribution/{symbol}fieldstail_prob_down_10,tail_prob_up_10,crash_prob_20
Caveats
- The probabilities are risk-neutral and include the market's risk premia. They do not forecast how often the move happens.
- A tail has no value only when no strike in the grid lies past its cut point.
Tail ratio
The implied probability of a 10% fall by expiry, as a multiple of the implied probability of a 10% rise.
Also shown as Tail Ratio
- How it is worked out
- The 10% down tail probability divided by the 10% up tail probability.
- Units
- A plain ratio, shown as N:1. 1490 shows as 1490:1.
- Date and lag
- It is built with the implied distribution in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- Above 1 means the down tail is priced fatter. The Dist Stats Panel marks values above 10. A very small up tail makes the ratio large. The Dist Stats Panel shows both tail probabilities.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Moderate put/call asymmetry | ratio above 10 and up to 100 | The down tail is priced well above the up tail. |
| Put tails significantly fatter | ratio above 100 and up to 500 | The down tail dominates. |
| Extreme tail asymmetry | ratio above 500 | The up tail is close to zero. |
| Elevated downside risk | implied skewness below -0.3 (added to the same line) | The distribution leans left. |
| Crash risk above baseline | 20% crash probability above 2% (added to the same line) | The market prices a large fall. |
| Balanced tail risk | none of the lines above apply | The tails are priced about evenly. |
Where it appears
- Widgets: Dist Stats Panel, Stats Panel
- Functions:
dist - API:
GET /api/v1/distribution/{symbol}fieldstail_ratio
Caveats
- A day with no up-tail probability, or an up tail of 0, has no ratio.
Implied skewness
The direction in which the implied distribution leans. A negative value means a longer left tail, with falls priced larger than rises.
Also shown as Skewness
- How it is worked out
- The third central moment of the implied distribution over the cube of its standard deviation, by the trapezoid rule over strikes.
- Units
- Unitless. -1.01 is a strong left lean.
- Date and lag
- It is built with the implied distribution in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- 0 is symmetric. Equity indexes usually show negative values. Compare it with the same symbol and tenor on earlier days.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Strong left tail: heavy put demand | below -1 | A long left tail. |
| Left-skewed: elevated put bias | from -1 to below -0.3 | A clear left lean. |
| Near symmetric: balanced positioning | from -0.3 to 0.3 | No clear lean. |
| Right-skewed: call bias | above 0.3 and up to 1 | A clear right lean. |
| Strong right tail: heavy call demand | above 1 | A long right tail. |
Where it appears
- Widgets: Dist Stats Panel, Stats Panel
- Functions:
dist - API:
GET /api/v1/distribution/{symbol}fieldsimplied_skewness
Caveats
- Small density far from spot weighs heavily in a third moment, so the value changes with how far the strike chain extends.
Implied excess kurtosis
How fat the tails of the implied distribution are compared with a normal curve.
Also shown as Kurtosis
- How it is worked out
- The fourth central moment of the implied distribution over the fourth power of its standard deviation, minus 3, by the trapezoid rule over strikes.
- Units
- Unitless excess kurtosis; 0 matches a normal curve. 1.93 indicates fat tails.
- Date and lag
- It is built with the implied distribution in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- Above 0 means more weight in the tails and the peak than a normal curve; below 0 means thinner tails. Compare it with the same symbol and tenor on earlier days.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Very fat tails: extreme moves likely | above 3 | Much more tail weight than normal. |
| Fat tails: outsized moves possible | above 1 and up to 3 | Clearly more tail weight than normal. |
| Slightly fat tails | above 0 and up to 1 | A little more tail weight than normal. |
| Near normal tails | from -1 to 0 | About normal. |
| Thin tails: moves constrained | below -1 | Less tail weight than normal. |
Where it appears
- Widgets: Dist Stats Panel, Stats Panel
- Functions:
dist - API:
GET /api/v1/distribution/{symbol}fieldsimplied_kurtosis
Caveats
- A fourth moment is even more sensitive than skewness to small density at far strikes.
Forward price
The price for delivery at an expiry implied by the option market, and its distance above or below spot. Across expiries the forward prices form the forward curve.
Also shown as Forward, Fwd, Fwd %
- How it is worked out
- Put-call parity at the strike whose delta is nearest 0.50: strike plus e^(rT) times (call value minus put value). Here r is the ORATS 5-week rate and T the days to expiry over 365. The premium is forward over spot, minus 1, times 100.
- Units
- Dollars for the forward; percent for the premium. 767.42 against a 765.49 spot is a +0.25% premium.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, builds it for every listed expiry from 5 to 365 days. An expiry needs at least 10 strikes, and each value is stamped with the previous session's trade date.
- How to read it
- A forward above spot means carry (rates above dividends); below spot means dividends or borrow cost exceed the rate. Compare the premium across expiries for the slope of the curve.
Where it appears
- Widgets: Forward Curve, Distribution, Dist Stats Panel, Stats Panel, Greek Stats Panel, Greek Flow
- Functions:
fwd,fwd.curve - API:
GET /api/v1/forward-curve/{symbol}fieldspoints,stockPrice - API:
GET /api/v1/distribution/{symbol}fieldsforward_price,forward_premium_pct - API:
GET /api/v1/greeks/{symbol}/summaryfieldsforward,forward_source
Caveats
- The Greek Stats Panel and Greek Flow use the forward-curve point nearest each greeks expiry. A symbol with no forward curve uses spot, and the Greek Stats Panel labels it "(spot, no forward curve)".
- One strike sets each point, so a wide quote at that strike moves the point.
Greeks and flow
Gamma exposure (GEX)
The gamma that hedgers hold at each strike, assuming customers are long all open interest and hedgers are short it. The sum over strikes is net gamma exposure for the expiry.
Also shown as Gamma, Gamma Exp
- How it is worked out
- Black-Scholes gamma from the ORATS smoothed volatility, the 5-week rate and the dividend yield, times call plus put open interest, with a minus sign. Net is the sum over strikes; the peak is the strike with the largest size.
- Units
- Gamma per share times contracts, with no 100-share multiplier. -2.2K is -2,171.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. With **Yesterday** selected, Greek Flow uses the session before.
- How to read it
- Under this model it is never positive, so compare its size. A large size near spot means hedgers trade more shares per move at that price.
Where it appears
- Widgets: Greek Flow
- Functions:
greek,greek.strikes,greeksum - API:
GET /api/v1/greeks/{symbol}fieldsvalues,strikes - API:
GET /api/v1/greeks/{symbol}/summaryfieldsnet_gamma_exposure,peak_gamma_exposure,peak_gamma_exposure_strike - API:
GET /api/v1/greeks/{symbol}/difffieldsgamma_exposure_today,gamma_exposure_change
Caveats
- The sign depends on the assumed positioning; real hedger books are not public.
- Call and put open interest share one gamma per strike, so the sum treats them alike.
Vanna exposure
The change in hedgers' delta when implied volatility moves, at each strike and summed over the expiry. It assumes customers are long all open interest.
Also shown as Vanna, Net Vanna, Peak Exp, Peak Exposure
- How it is worked out
- Black-Scholes vanna is minus e^(-qT) times n(d1) times d2 over volatility, from the ORATS smoothed volatility. It is multiplied by call plus put open interest, with a minus sign. Net is the sum over strikes.
- Units
- Delta per share per 1.00 of volatility, times contracts. Times 100 shares and 0.01 per volatility point, the number equals shares per volatility point. -7.0K is -6,961.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. It is stamped with that session's trade date.
- How to read it
- Positive means hedgers sell shares as volatility rises; negative means they purchase. Compare its size with the expiry's open interest, as the Flow Direction label does.
Where it appears
- Widgets: Greek Flow, Flow Tile, Greek Stats Panel, Stats Panel
- Functions:
greek,greek.strikes,greeksum - API:
GET /api/v1/greeks/{symbol}fieldsvalues,strikes - API:
GET /api/v1/greeks/{symbol}/summaryfieldsnet_vanna_exposure,peak_vanna_exposure - API:
GET /api/v1/greeks/{symbol}/difffieldsvanna_exposure_today,vanna_exposure_change
Caveats
- The sign depends on the assumed positioning.
- The Flow Tile uses the listed expiry nearest 30 days, 29 days for SPY in the recorded response.
Charm exposure
The change in hedgers' delta as time passes with price and volatility unchanged, at each strike and summed over the expiry. It assumes customers are long all open interest.
Also shown as Charm, Net Charm
- How it is worked out
- Black-Scholes charm from the ORATS smoothed volatility, the 5-week rate r and the dividend yield q. At each strike it is minus (call charm times call open interest plus put charm times put open interest). Put charm is call charm minus q times e^(-qT). Net is the sum over strikes.
- Units
- Delta per share per year, times contracts. Divide by 365 and multiply by 100 for shares per day. -9.9K is -9,878.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. It is stamped with that session's trade date.
- How to read it
- Positive means hedgers sell as time passes; negative means they purchase. It grows near expiry, so compare it within one tenor.
Where it appears
- Widgets: Greek Flow, Flow Tile, Greek Stats Panel, Stats Panel
- Functions:
greek,greek.strikes,greeksum - API:
GET /api/v1/greeks/{symbol}fieldsvalues,strikes - API:
GET /api/v1/greeks/{symbol}/summaryfieldsnet_charm_exposure - API:
GET /api/v1/greeks/{symbol}/difffieldscharm_exposure_today,charm_exposure_change
Caveats
- This is a yearly figure. The Decay Rate in the Greek Stats Panel shows the daily share count, the charm hedging flow.
Peak vanna exposure strike
The strike where vanna exposure is largest in size for the expiry. Hedging trades from a volatility move concentrate at this strike.
Also shown as Peak Strike, Peak
- How it is worked out
- The strike with the largest absolute vanna exposure among the expiry's strikes; its distance from spot is (strike minus spot) over spot, times 100.
- Units
- Dollars, with percent from spot. $772 (+0.9%) is a strike 0.9% above spot.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. It is stamped with that session's trade date.
- How to read it
- A peak near spot means hedging from volatility moves acts close to the current price. It marks the strike where hedging concentrates.
Where it appears
- Widgets: Flow Tile, Greek Stats Panel, Greek Flow, Stats Panel
- Functions:
greeksum - API:
GET /api/v1/greeks/{symbol}/summaryfieldspeak_exposure_strike,peak_vanna_exposure
Caveats
- The Greek Flow Peak uses the metric on screen, so with gamma or charm selected it is a different strike.
Mean charm
The average Black-Scholes charm across the strikes of one expiry, before any weighting by open interest.
Also shown as Mean Charm
- How it is worked out
- The mean of the call charm over every strike of the expiry.
- Units
- Delta per share per year. 0.3332 means delta drifts by 0.33 a year at the average strike.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains. It is stamped with that session's trade date.
- How to read it
- A larger size means delta drifts faster with time across the chain. It ignores open interest, so it does not show who holds the options.
Where it appears
- Widgets: Stats Panel
- Functions:
greeksum - API:
GET /api/v1/greeks/{symbol}/summaryfieldsmean_charm,atm_charm
Caveats
- The Greeks preset of the Stats Panel shows it as Mean Charm. The Greek Stats Panel shows ATM Charm instead, the call charm at the strike nearest the stock price, such as -0.1808/yr. ATM Charm shows a dash when the data has no value.
Gamma hedging flow
The shares hedgers would trade for a one standard deviation daily move in the stock. It assumes customers are long all open interest.
Also shown as Gamma flow, sh/1sd
- How it is worked out
- Minus net gamma exposure, times 100 shares, times spot, times the daily one standard deviation move. The daily move is the ATM volatility of the expiry (smoothed volatility at the strike nearest spot) over the square root of 252. The notional is the share count times spot.
- Units
- Shares per one standard deviation move; notional in dollars. +1.3M sh/1sd means hedgers purchase 1.3 million shares as the stock rises one daily standard deviation.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. It is stamped with that session's trade date.
- How to read it
- Positive means hedgers purchase into a rise and sell into a fall; this damps moves. It is positive whenever net gamma exposure is negative. Compare it with the stock's daily volume.
Where it appears
- Widgets: Greek Flow
- Functions:
greeksum
Caveats
- Summaries written before this field existed have no flow, and Greek Flow then shows none.
- Greek Flow displays the assumed positioning beside the flow. The sign of the flow depends on the assumed positioning.
Vanna hedging flow
The shares hedgers would trade for a one point rise in implied volatility. It assumes customers are long all open interest.
Also shown as Vanna flow, sh/vol pt
- How it is worked out
- Minus net vanna exposure, times 100 shares, times 0.01 for one volatility point. The notional is the share count times spot.
- Units
- Shares per volatility point, as displayed; notional in dollars.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. It is stamped with that session's trade date.
- How to read it
- Positive means hedgers purchase shares as volatility rises; negative means they sell. Compare it with the stock's daily volume.
Where it appears
- Widgets: Greek Flow
- Functions:
greeksum
Caveats
- Summaries written before this field existed have no flow.
Charm hedging flow
The shares hedgers would trade over one calendar day of time decay, with price and volatility unchanged. It assumes customers are long all open interest.
Also shown as Charm flow, sh/day, Decay Rate
- How it is worked out
- Minus net charm exposure, times 100 shares, divided by 365. The notional is the share count times spot.
- Units
- Shares per day; notional in dollars. +2.7K sh/day means hedgers purchase 2,700 shares over a day of decay.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, computes it from the previous session's chains and open interest. It is stamped with that session's trade date.
- How to read it
- Positive means hedgers purchase shares as time passes; negative means they sell. It is strongest for expiries a few days out.
Where it appears
- Widgets: Greek Flow, Greek Stats Panel, Stats Panel
- Functions:
greeksum
Caveats
- Summaries written before this field existed have no flow. The Greek Stats Panel then shows a dash for Decay Rate.
- The Greek Stats Panel shows it as Decay Rate, such as ~5.7K sh/day (selling) for the SPY 29-day expiry.
Open interest (OI)
The number of call and put contracts open at the close for one expiry, summed over its strikes.
Also shown as Call OI, Put OI, OI
- How it is worked out
- The sum of ORATS call open interest and put open interest over the strikes of the expiry; a missing value counts as 0.
- Units
- Contracts. 47.2K is 47,186 contracts.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, uses the previous session's chains.
- How to read it
- More open interest means the exposure values come from more open contracts. Use the put/call ratio to compare calls with puts.
Where it appears
- Widgets: Flow Tile, Greek Stats Panel, Greek Flow, Stats Panel
- Functions:
greeksum - API:
GET /api/v1/greeks/{symbol}/summaryfieldstotal_call_oi,total_put_oi - API:
GET /api/v1/greeks/{symbol}fieldscallOpenInterest,putOpenInterest
Put/call ratio
Put open interest relative to call open interest for one expiry.
Also shown as P/C Ratio
- How it is worked out
- Put open interest divided by call open interest, for the expiry. The Flow Tile shows put open interest as a share of the total instead.
- Units
- A plain ratio, two decimals. 1.21 means 1.21 puts open for each call.
- Date and lag
- It is built from open interest in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- Above 1 means more puts than calls are open; below 1, more calls. Compare a symbol with its own history; index products have more puts.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| put heavy | put share of total open interest above 55% (flow tile) | Puts make up most of the open interest. |
| call heavy | put share of total open interest below 45% (flow tile) | Calls make up most of the open interest. |
| balanced | put share from 45% to 55% (flow tile) | Neither side dominates. |
Where it appears
- Widgets: Greek Stats Panel, Flow Tile
- Functions:
greeksum - API:
GET /api/v1/greeks/{symbol}/summaryfieldstotal_put_oi,total_call_oi
Caveats
- The Greek Stats Panel displays the ratio; the Flow Tile displays the put share. A 1.21 ratio is a 54.8% share.
- With missing or zero open interest, the Flow Tile shows a dash for the put share and no put share label. Missing open interest also shows dashes in the Call OI and Put OI cells.
Flow direction
Whether the hedging flow from vanna pushes with the market (pro-cyclical), against it (counter-cyclical), or neither, for one expiry.
Also shown as Flow Direction
- How it is worked out
- Net vanna exposure counts as significant when its size is at least 1% of the expiry's open interest times 100. Significant and positive gives Pro-cyclical. Significant and negative gives Counter-cyclical. Anything else gives Mixed. Net charm exposure takes no part: its hedge trade has one direction whatever the market does.
- Units
- A label, Pro-cyclical, Counter-cyclical or Mixed.
- Date and lag
- It is built from the exposures in the daily run that starts at 00:15 UTC, Tuesday to Saturday. It is stamped with the previous session's trade date.
- How to read it
- The Scale line in the Greek Stats Panel shows net vanna as a percent of open interest; under 1% is weak.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Pro-cyclical | net vanna significant and positive | Hedging flow adds to moves. |
| Counter-cyclical | net vanna significant and negative | Hedging flow leans against moves. |
| Mixed | net vanna not significant, or missing | No clear direction. |
Where it appears
- Widgets: Flow Tile, Greek Stats Panel, Stats Panel
- API:
GET /api/v1/greeks/{symbol}/summaryfieldsnet_vanna_exposure,total_call_oi,total_put_oi
Caveats
- The rule depends on the assumed positioning: customers long and hedgers short.
- The Flow Tile always uses the expiry nearest 30 days. The Greek Stats Panel uses the expiry nearest the Greek Flow tenor.
- With no open interest, significance falls back to a fixed size of 50,000.
Volatility Board
Ex-earnings volatility risk premium (VRP points)
How far ORATS ex-earnings 30-day implied volatility is above a forecast of the stock's volatility. Positive means options price more movement than the forecast.
Also shown as VRP, Level
- How it is worked out
- 100 times the gap between ORATS ex-earnings 30-day implied volatility and an EWMA (RiskMetrics) forecast of annualized volatility. The forecast uses daily log returns through the trade date. Outlier returns are clipped first, and returns on detected post-earnings days are replaced by a typical recent return.
- Units
- Vol points. 2.2 means implied volatility is 2.2 points above the forecast; -6.3 means 6.3 points below it. The Volatility Board displays one decimal.
- Date and lag
- The daily run starts at 00:15 UTC, Tuesday to Saturday, and uses the previous session's close. The Volatility Board shows the latest trade date that all symbols share.
- How to read it
- Above 0, options price more movement than the forecast. The column tooltip describes negative values as cheap and positive values as rich. The Chance and Move cells on the same row show the model's 21-session view.
Where it appears
- Widgets: Volatility Board
- API:
GET /api/v1/vol-boardfieldsvalue,trade_date,metric_version
Caveats
- It differs from the VRP ratio on other widgets. It subtracts a forecast instead of dividing by ORATS 30-day historical volatility, and it excludes earnings.
- A day with no ex-earnings implied volatility has no value. The 252-session windows behind the model treat that day as missing.
21-session historical volatility (RV)
How much the stock has moved over the last 21 sessions, annualized, in vol points.
Also shown as RV, Level
- How it is worked out
- 100 times the square root of 252 times the mean squared daily log return over the trailing 21 sessions. Returns are measured from zero instead of from their mean. Outlier returns are clipped first; earnings days stay in.
- Units
- Vol points, annualized. 12.9 is 12.9% annualized volatility.
- Date and lag
- The daily run starts at 00:15 UTC, Tuesday to Saturday, and uses the previous session's close. A symbol needs 21 sessions of returns before it has a value.
- How to read it
- A higher value means bigger recent daily moves. Compare it with the IV level on the same row; IV above RV means options price more movement than the last month delivered.
Where it appears
- Widgets: Volatility Board
- API:
GET /api/v1/vol-boardfieldsvalue
Caveats
- It differs from the ORATS 30-day historical volatility on other widgets. The window is 21 sessions, outliers are clipped, and no mean is removed.
- The Level tooltip calls it `realized vol`; it is the same quantity.
Volatility of implied volatility (VoV)
How much 30-day implied volatility itself swings from day to day, annualized and stated as a percent of its level.
Also shown as VoV, Level
- How it is worked out
- 100 times the square root of 252 times the standard deviation of daily changes in the log of 30-day implied volatility. The window is the trailing 20 changes.
- Units
- Percent of IV, annualized. 66.4 means the daily changes in implied volatility annualize to 66.4% of its level.
- Date and lag
- The daily run starts at 00:15 UTC, Tuesday to Saturday, and uses the previous session's close. A symbol needs 21 sessions of implied volatility before it has a value.
- How to read it
- A high value means implied volatility changes by large amounts from day to day; a low value means it is steady. Compare a symbol with its own history.
Where it appears
- Widgets: Volatility Board
- API:
GET /api/v1/vol-boardfieldsvalue
Caveats
- The Vol of vol measure on the Stats Panel is a different number. It uses raw daily changes in implied volatility instead of log changes, and it is not annualized.
Move probability (Chance)
The model's probability that a metric moves by a meaningful amount over the next 21 sessions, in its more likely direction. Chance is not a probability that a trade makes money.
Also shown as Chance, Move
- How it is worked out
- Each metric has two calibrated logistic models, one for a fall and one for a rise, each recalibrated by isotonic regression. The larger of the two probabilities is the Chance; a tie goes to the fall.
- Units
- A probability, shown as a whole percent. 74% means the model gives the more likely direction a probability of 0.74.
- Date and lag
- The daily run scores the previous session's close, starting at 00:15 UTC, Tuesday to Saturday. The 21-session horizon starts the session after the trade date. A symbol needs 273 sessions of history before it gets a score.
- How to read it
- A higher value means the model is more certain of the direction. Below the 65% floor, displayed in the Volatility Board footer, the Move cell shows a dash.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| RICHEN | VRP column; the rise model wins and the Chance is 65% or more | The model expects the VRP to rise by a meaningful amount within 21 sessions. |
| CHEAPEN | VRP column; the fall model wins and the Chance is 65% or more | The model expects the VRP to fall by a meaningful amount within 21 sessions. |
| UP | IV, RV or VoV column; the rise model wins and the Chance is 65% or more | The model expects the metric to rise by a meaningful amount within 21 sessions. |
| DOWN | IV, RV or VoV column; the fall model wins and the Chance is 65% or more | The model expects the metric to fall by a meaningful amount within 21 sessions. |
| a dash | The Chance is below 65%, or the column is not marked reliable | The Volatility Board shows no direction for this metric. |
Where it appears
- Widgets: Volatility Board
- API:
GET /api/v1/vol-boardfieldsp_rev,signal,p_floor,column_state,reason,model_version
Caveats
- A meaningful move is a change of at least a quarter of the standard deviation of the metric's 21-session changes over the prior 252 sessions.
- A column that the model rates unreliable shows its level, with dashes for Chance and Move. The footer lists the reason.
- A column drops to level only when a check on the model fails. Checks run when the model is trained and in each daily run. The daily run drops a column when the share of the last 250 sessions at or above the floor falls outside 2% to 80%.
- The API still reports the probability and direction for a level-only column. Use them only when the column state is full.
Median 21-session change (E-Move)
The typical size and direction of a metric's change over the next 21 sessions, from past cases where the model gave a similar probability.
Also shown as E-Move
- How it is worked out
- At training time the model's history is cut into up to ten bands by calibrated probability. The figure is the median 21-session change of the metric in the band that matches today's Chance, for the winning direction.
- Units
- The metric's own units: vol points for VRP, IV and RV, and percent of IV for VoV. 4.5 in the VRP column means a median rise of 4.5 points.
- Date and lag
- It is scored with the Chance in the daily run that starts at 00:15 UTC, Tuesday to Saturday. The bands are fixed when the model is trained.
- How to read it
- The sign is the direction and the size is the typical change. The API adds the 25th and 75th percentiles; a range that crosses 0 means past cases went both ways.
Where it appears
- Widgets: Volatility Board
- API:
GET /api/v1/vol-boardfieldse_move,e_move_iqr_lo,e_move_iqr_hi,bin_n
Caveats
- The Volatility Board does not display E-Move values. The E-Move sort orders the rows by them.
- Symbols whose Chance falls in the same band share one value, so ties are common.
- Use it only when the column state is full.
Options dispatch
Mid price (fair)
The mid price of the structure: the call mid plus the put mid from end-of-day quotes. The fill ladder, close targets and breakevens use it.
Also shown as fair, Fair
- How it is worked out
- Each leg's mid is the average of its bid and ask. Fair is the sum of the two leg mids, rounded to the cent.
- Units
- Dollars per share of the two-leg structure. $8.12 means 8.12 dollars per share for the call and put together.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, builds it from the previous session's end-of-day option quotes. Each Options Dispatch card displays that end-of-day date.
- How to read it
- Compare it with theo. Fair above theo means the quoted mid is above the model value at ORATS smoothed volatility.
Where it appears
- Widgets: Options Dispatch, Card Detail
Caveats
- These are closing quotes. Prices at the next open can differ.
- A leg with a zero bid or ask, a crossed market, or no implied volatility drops the whole structure from the card list.
Sell fill ladder (FILL)
Three limit prices for selling the structure: hi above the mid, fair at the mid and flr below it.
Also shown as FILL, hi, flr
- How it is worked out
- The half-spread is half the combined bid-ask width of the two legs. hi is fair plus 0.35 times the half-spread. flr is the larger of fair minus 0.35 times the half-spread and theo, capped at fair.
- Units
- Dollars per share of the structure, rounded to the cent. A ladder of $8.15, $8.12 and $8.12 is hi, fair and flr.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, builds it from the previous session's end-of-day quotes, with fair and theo.
- How to read it
- A wider gap between hi and flr means a wider market. When theo is at or above fair, flr equals fair.
Where it appears
- Widgets: Options Dispatch, Card Detail
Caveats
- The ladder uses closing spreads; the spread at the next open sets the real fill.
Theoretical value (THEO)
The structure's model price from Black's formula on the forward, with each leg at its own implied volatility.
Also shown as THEO (BS fwd), theo
- How it is worked out
- The forward is spot times exp((r - q) times T). T is DTE over 365, r is the ORATS 5-week rate and q is the dividend yield. Each leg uses the ORATS smoothed implied volatility at its strike, discounted at r; theo is the sum.
- Units
- Dollars per share of the structure, rounded to the cent.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, builds it from the previous session's chain and rates.
- How to read it
- The gap between fair and theo shows how far the quoted mid is from the price that the smoothed volatility implies. Theo also sets the floor of the fill ladder.
Where it appears
- Widgets: Card Detail
Caveats
- T uses the ORATS DTE count, which in the recorded responses runs one day past the calendar days to expiry.
Close limit (CLOSE LMT)
Three limit prices for closing the short structure, set 20%, 25% and 30% below fair.
Also shown as CLOSE LMT (of fair), 20%, 25%, 30%
- How it is worked out
- The 20% target is fair times 0.80, the 25% target fair times 0.75 and the 30% target fair times 0.70, each rounded to the cent.
- Units
- Dollars per share of the structure. A 25% target of $6.09 on a fair of $8.12 is 75% of fair.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, sets it from fair.
- How to read it
- Each price is the structure value at which a sale at fair keeps that share of the premium.
Where it appears
- Widgets: Card Detail
Caveats
- The targets use fair instead of the actual fill. Card Detail notes that the targets scale with the actual fill.
Breakeven (BE)
The two underlying prices at expiry where a short structure sold at fair neither makes nor loses money.
Also shown as BE up, BE dn
- How it is worked out
- BE up is the call strike plus fair; BE dn is the put strike minus fair. Each percent is the distance from spot, as a share of spot, times 100.
- Units
- Dollars of the underlying, with the distance from spot in percent. BE up $773.12 +1.0% is 1.0% above spot.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, sets it from fair, the strikes and spot.
- How to read it
- Wider breakevens give the underlying more room before the structure loses at expiry. Compare the percent with the move the structure's implied volatility prices to expiry.
Where it appears
- Widgets: Card Detail
Caveats
- Each percent displays as the move from spot to the breakeven, so BE dn shows a minus sign. The API serves BE dn as a positive distance below spot.
- Breakevens use fair instead of the actual fill, and apply at expiry only.
Days to expiry (DTE)
The number of days until the option expiry.
Also shown as DTE
- How it is worked out
- The ORATS days-to-expiry count for the expiry on the trade date.
- Units
- Days. DTE 35 is an expiry 35 days out by the ORATS count.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, counts it from the previous session's trade date.
- How to read it
- Options Dispatch cards start at 7 days. All screened shows 28 days or more; Curated shows straddles from 28 to 60 days.
Where it appears
- Widgets: Options Dispatch, Card Detail
Caveats
- In the recorded responses the count is one more than the calendar days from the trade date to expiry.
Expiry implied volatility (IV)
The implied volatility of the structure's own strikes on one expiry.
Also shown as IV
- How it is worked out
- For a straddle, the ORATS smoothed implied volatility at the strike nearest spot, ties going to the lower strike. For a strangle, the mean of the two wing values, with wings at the strikes nearest 25 delta.
- Units
- Percent, annualized, one decimal. IV 10.3% is 10.3% annualized volatility.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, takes it from the previous session's chain.
- How to read it
- A higher value means options on this expiry price more movement. Compare expiries on the same symbol to see the term structure.
Where it appears
- Widgets: Card Detail
Caveats
- This is the volatility of one expiry. Other widgets show the 30-day constant-maturity implied volatility.
ATM volatility risk premium (VRP points)
How far one expiry's at-the-money implied volatility is above ORATS 30-day historical volatility, in vol points.
Also shown as VRP
- How it is worked out
- 100 times the gap between the expiry's at-the-money implied volatility and ORATS 30-day historical volatility, rounded to one decimal. The straddle and strangle of one expiry share this figure.
- Units
- Vol points. +2.0pt means the expiry's implied volatility is 2 points above historical volatility.
- Date and lag
- Implied volatility comes from the previous session's chain; historical volatility comes from the latest day in the symbol's VRP history. Both update in the daily run that starts at 00:15 UTC.
- How to read it
- Positive means the expiry prices more movement than the stock showed over 30 days. A value of 0 or below makes the card dead.
Where it appears
- Widgets: Options Dispatch, Card Detail
Caveats
- It is not comparable with the VRP ratio or with the Volatility Board's VRP points. Each uses a different implied volatility and a different historical measure.
Bid-ask spread (spread)
Each leg's quoted bid-ask width as a share of its mid. It is one of the two quality checks on an Options Dispatch card.
Also shown as spread
- How it is worked out
- Ask minus bid, divided by the leg's mid, times 100, rounded to one decimal.
- Units
- Percent of the leg's mid. 2.7% on a $4.50 mid is about 12 cents wide.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, takes it from the previous session's end-of-day quotes.
- How to read it
- Lower means a tighter market. A wide spread makes fair a weak guide to the fill.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| ✅ | 25% or less | The leg passes the spread check. |
| ❌ | above 25% | The leg fails the check; the card lists it, as in `call spread 30.1%`. |
Where it appears
- Widgets: Card Detail
Caveats
- A dead card lists no failing checks, so all its spread marks show the pass mark even when a leg is wider than 25%.
Strike open interest (OI)
The number of open contracts on each leg's strike. It is one of the two quality checks on an Options Dispatch card.
Also shown as OI
- How it is worked out
- The ORATS open interest for the call or put at the leg's strike on the trade date.
- Units
- Contracts. OI 851 is 851 open contracts.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, takes it from the previous session's chain.
- How to read it
- Higher means a more actively traded strike. Low open interest often comes with wide quotes.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| ✅ | 100 or more | The leg passes the open interest check. |
| ❌ | under 100 | The leg fails the check; the card lists it, as in `put OI 54`. |
Where it appears
- Widgets: Card Detail
Caveats
- A dead card lists no failing checks, so all its OI marks show the pass mark even when a leg has under 100 contracts.
Card status
A three-way label for a card, set from the VRP z-score, the ATM VRP points, and the spread and open interest checks.
Also shown as live, borderline, dead, dead band, z at floor
- How it is worked out
- The first rule that matches wins, in the order dead, borderline, live. The z-score is the 20-day z-score of the VRP ratio, rounded to two decimals.
- Units
- A label, shown as an emoji on each Options Dispatch card. The footer of a borderline or dead card gives the reason, as listed in the thresholds.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, sets it from the previous session's close.
- How to read it
- A live card passes every rule. A borderline card is at the z-score floor or fails a quality check. A dead card fails the premium test.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| 🔴 dead | z-score below +0.10 or ATM VRP points at 0 or below | The premium test fails; the footer shows `dead band`. |
| ⚠️ borderline | z-score exactly +0.10 or any spread or OI check fails | The card lists each failing check, or shows `z at floor`. |
| 🟢 live | z-score above +0.10 and ATM VRP points above 0 and every check passes | The card passes every rule. |
Where it appears
- Widgets: Options Dispatch, Card Detail
Caveats
- The card labels the z-score `z(30d)` after the 30-day VRP it scores; its window is 20 trading days.
- The VRP test uses the unrounded figure, so a card that displays +0.0pt can be dead or live.
- Curated and All screened never show a dead card; Card Detail shows any status.
Next earnings date (estimated)
The ORATS estimate of a single stock's next earnings report, and whether it falls inside the hold window.
Also shown as earnings ~, earnings ?, inside hold, earnings calendar unknown
- How it is worked out
- The trade date plus 7 days times the ORATS weeks-to-next-earnings count. The hold window ends 14 calendar days after the first session following the trade date, or at expiry if sooner.
- Units
- A date in YYYY-MM-DD form. The site displays it after a tilde, as in `earnings ~2026-09-18`, because it is accurate to the week.
- Date and lag
- The daily run that starts at 00:15 UTC, Tuesday to Saturday, takes it from the previous session's ORATS core data.
- How to read it
- A date inside the hold window fails the earnings check. Compare it with the expiry and with 14 days from entry.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| no chip | the symbol is not a single stock, or the estimated date falls after the hold window | The earnings check passes. |
| earnings ~ | the estimated date falls on or before the end of the hold window | The earnings check fails; Card Detail adds `inside hold`. |
| earnings ? | a single stock with no earnings estimate for the trade date | The check result is unknown; Card Detail displays `earnings calendar unknown`. |
Where it appears
- Widgets: Options Dispatch, Card Detail
Caveats
- Any symbol that is not a single stock, every ETF included, passes the check and has no date.
- A count of 0 weeks gives the next day, so a report due within six days shows as tomorrow.
Curated opportunity (Curated)
Whether a straddle passes the five Curated selection rules. The Curated view in Options Dispatch lists only these cards.
Also shown as Curated, All screened
- How it is worked out
- A card is curated when it passes five selection rules. Its symbol is in the curated class and its earnings check passes. Its status is live or borderline, its DTE is 28 to 60, and it is a straddle.
- Units
- Yes or no for each card.
- Date and lag
- The dispatch run at 07:45 UTC, Tuesday to Saturday, builds Curated from that morning's cards. All screened uses the cards directly.
- How to read it
- A Curated card has passed the selection rules. Curated lists cards by symbol, then by expiry, with no ranking score.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Curated | class gate passes and earnings check passes and status live or borderline and DTE 28 to 60 and a straddle | The card appears in the Curated view. |
| All screened | DTE 28 or more and status live or borderline, straddle or strangle, any symbol | The card appears in the All screened view. |
| Earnings calendar stale; single names withheld from Curated. | no card curates and at least one candidate's earnings check result is unknown | A gap in the earnings data emptied the view. |
| No curated opportunities today. | no card curates and no candidate's earnings check result is unknown | No card passed the selection rules. |
Where it appears
- Widgets: Options Dispatch
Caveats
- The class gate checks a configured ticker list. It does not check the asset type. The Options Dispatch header describes it as index and rates ETFs and lists the tickers when available.
- Curated comes from the dispatch run, so a late or failed run leaves the previous day's list in place.
Macro board readings
Five-year z-score (z)
How far a row's latest value is from its own five-year average, in standard deviations.
Also shown as z
- How it is worked out
- The latest value minus the mean of the trailing window, divided by the window's population standard deviation. Daily rows use 1260 observations; weekly rows use 260.
- Units
- Standard deviations. A z of 1.5 means the value is one and a half standard deviations above its five-year mean.
- Date and lag
- Each value is stamped with the date of the FRED observation it uses. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Above 0, the row is above its five-year mean; below 0, below it. The Macro Board shades a cell from 1 in either direction and accents the whole row from 2. Rows sort by the size of z, largest first.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.z_5y,features.stats.z_5y_window - API:
GET /api/v1/macro/historyfieldsz_5y
Caveats
- A row with less than five years of history uses all the history it has; the window field gives the count.
- A window with no variation has no z-score.
Percentile rank (Pctile)
The rank of the latest value within the row's own history, from 0 at the lowest to 100 at the highest.
Also shown as Pctile
- How it is worked out
- The share of observations below today's value plus half the share equal to it, times 100. The rank uses the row's full history.
- Units
- A rank from 0 to 100. 90 means the value is higher than 90% of past observations.
- Date and lag
- Each value is stamped with the date of the FRED observation it uses. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Near 100, the row is close to its historical high; near 0, close to its low. Compare it with z. The z-score uses only the last five years.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.pctile_raw,features.stats.pctile_stress
Caveats
- A row whose history has fewer than two distinct values has no rank.
One-week change (Δ1w)
How much a row moved over the last week, in the row's own units.
Also shown as Δ1w
- How it is worked out
- The latest value minus the value five observations earlier for daily rows, or one observation earlier for weekly rows.
- Units
- The row's units. For a spread in percent, 0.10 means the spread widened by 10 basis points.
- Date and lag
- Each value is stamped with the date of the FRED observation it uses. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means the row rose over the week; negative means it fell.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.d1w
Caveats
- For weekly rows the change is against the previous weekly release.
Half-life (HL)
How long a row takes, on past behaviour, to close half the gap to its long-run mean. Small values mean fast reversion; large values mean the row rarely returns to its mean.
Also shown as HL(d)
- How it is worked out
- A first-order autoregressive model fitted to the trailing five years gives the persistence from one observation to the next. The half-life is the log of one half divided by the log of that persistence.
- Units
- Observations; trading days for daily rows and releases for weekly rows. 20 on a daily row means half of any gap from the mean closes in about 20 trading days.
- Date and lag
- The model refits each daily run on the same data as the row's latest value.
- How to read it
- On a daily row under 10, a gap from the mean tends to close within two weeks. On a daily row over 250, the row rarely returns to its mean and the gap is not expected to close.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Fast | half-life under 10 trading days (daily rows) or under 2 releases (weekly rows) | Deviations close within about two weeks. |
| Moderate | half-life from 10 to under 60 trading days, or from 2 to under 12 releases | Deviations close over weeks to a quarter. |
| Slow | half-life from 60 to under 250 trading days, or from 12 to under 50 releases | Deviations last for months. |
| Structural | half-life of 250 trading days or more, or 50 releases or more | The row stays at its new level. |
| Unreliable | the fit fails its eligibility checks | The Macro Board shows no half-life for the row. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.hl,features.stats.hl_bucket,features.stats.hl_bucket_label,features.stats.hl_ci_lo,features.stats.hl_ci_hi
Caveats
- The fit must show reversion, stay stable between the two halves of the window, and give a half-life under a quarter of the window. A row that fails shows no value.
Expected 21-day reversion (Rev21)
The pull toward the long-run mean that the reversion model expects over the forecast horizon. The horizon is 21 trading days on a daily row and 4 weekly releases on a weekly row. Positive means a row below its mean is expected to rise.
Also shown as Rev21
- How it is worked out
- The gap between the long-run mean and the latest value, times one minus the persistence raised to the power of the horizon. The model shows a value only after it beats four simple forecasts out of sample.
- Units
- The row's units. 0.05 on a percent spread means an expected rise of 5 basis points over 21 trading days.
- Date and lag
- The model refits each daily run on the same data as the row's latest value.
- How to read it
- A large value with an interval that excludes 0 is a reversion forecast that the model has tested. A faded value has an interval that includes 0, so its direction is not settled.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| includes 0 | the 80% interval spans 0; the Macro Board fades the value | The 80% interval includes both directions. |
| excludes 0 | the 80% interval lies on one side of 0 | The model expects a move in the shown direction. |
| Regime-conditional forecast (low-volatility regime) | validation passed only on low-volatility days | Use the forecast only while the row is calm. |
| Regime-conditional forecast (high-volatility regime) | validation passed only on high-volatility days | Use the forecast only while the row is turbulent. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.rev21,features.stats.rev21_ci_lo,features.stats.rev21_ci_hi,features.stats.rev21_p_up,features.stats.rev21_regime,features.stats.rev21_reason_label
Caveats
- The model shows no value unless the half-life passes its checks and at least 8 out-of-sample tests exist. It must also beat no change, full reversion, the historical average and a z-scaled forecast.
- It also needs a hit rate above 50% over all tests. Each volatility half with at least 8 tests must then beat the four forecasts on error alone. A row that passes in one half only shows a regime note.
Sparkline (Spark)
A small line chart of the row's recent history.
Also shown as Spark
- How it is worked out
- The last 90 observations for daily rows and the last 18 for weekly rows, drawn without filling missing days.
- Units
- The row's units, scaled to the cell.
- Date and lag
- Each value is stamped with the date of the FRED observation it uses. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- It shows whether today's z comes from a jump or a slow drift.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.spark
Caveats
- A gap in the line is a missing observation; the Macro Board never draws across it.
Row freshness
Whether a row's latest observation is as recent as its publication schedule allows.
- How it is worked out
- The days since the last observation, compared with the series' release cadence and its next scheduled release date.
- Units
- A label.
- Date and lag
- Recomputed each daily run.
- How to read it
- Delayed by publication schedule is normal for a weekly or late-publishing series. Stale means the series missed its schedule.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Fresh | last observation at most 1 day old | The row is current. |
| Awaiting scheduled release | the next release date has not arrived | The source has not published a newer value yet. |
| Delayed by publication schedule | at most 5 days old for daily rows or 10 days for weekly rows | The age matches the source's normal publication delay. |
| Stale | older than those limits | The source missed its schedule or the ingest failed. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfeatures.stats.freshness_status,features.stats.days_since_update,features.stats.expected_next_release,features.stats.obs_date,freshness
Caveats
- The Macro Board displays this label only in its text export.
Section staleness
Marks a section whose latest date is behind the Macro Board's date, so its values describe an older day.
- How it is worked out
- A section is stale when its own date is more than 5 calendar days before the Macro Board date.
- Units
- Yes or no; the Macro Board marks the section date when it is stale.
- Date and lag
- Recomputed each daily run.
- How to read it
- A stale section's scores are as of its own date.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| stale date | section date more than 5 calendar days before the Macro Board date | The section did not update with the rest of the Macro Board. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.stale,sections.as_of
Section stress score (Stress)
How strained a section is today, from 0 to 100, with 50 at the five-year norm. The Funding, Fed corridor, Credit and Monetary plumbing sections have it.
Also shown as Stress
- How it is worked out
- Each factor averages the z-scores of its rows, signed so that higher means more strain. The score is the mean of each factor's normal cumulative probability, times 100.
- Units
- A score from 0 to 100. 84 means the factors are about one standard deviation on the strained side.
- Date and lag
- It uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- Above 50, the section is more strained than its five-year norm; below 50, less. Compare a section with its own past values.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.stress,sections.stress_contributions,sections.level_pctile - API:
GET /api/v1/macro/historyfieldsstress
Caveats
- Only rows with a stress direction count; display rows such as corridor width and policy path never move the score.
Section dislocation (Dislocation)
How far a section's values are from normal today, in either direction, ranked against the section's own history.
Also shown as Dislocation
- How it is worked out
- The mean of the factors' absolute z-scores today, ranked as a percentile against the same mean on every past day of that section.
- Units
- A percentile from 0 to 100. 95 means the section is further from normal than on 95% of past days.
- Date and lag
- It uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- A high value means rows are far from their norms, in either direction. Compare it with stress to see whether the move is toward strain.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.dislocation,sections.dislocation_raw
Caveats
- The Real & inflation and Credit sections do not have it.
Section coherence (Coherence)
Whether a section's active factors point the same way. High coherence means the strain or easing is broad, not limited to one row.
Also shown as Coherence
- How it is worked out
- Only factors with a stress direction count. Such a factor is active when its signed z-score is 1 or more in size; coherence needs at least two active factors. It sums the positive and the negative signed z-scores over all directed factors. Coherence is 100 times the gap between the sums, over their total.
- Units
- A score from 0 to 100, with a label. 100 means every active factor points the same way.
- Date and lag
- It uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- High coherence with high stress means broad strain. Low coherence means the active factors disagree, so the stress score averages opposing moves.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| High | 70 or more | The active factors agree. |
| Moderate | 40 to under 70 | Most active factors agree. |
| Low | under 40 | The active factors split. |
| N/A | fewer than two active factors | Too few factors moved to measure agreement. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.coherence,sections.coherence_label,sections.coherence_reason
Active factor count
How many of a section's factors are at least one standard deviation from their five-year norm today.
- How it is worked out
- Counts the factors with a stress direction whose signed z-score is 1 or more in size. Factors without a direction, such as bill cheapness, never count.
- Units
- A count. 3 means three factors are active.
- Date and lag
- It uses the section's latest date.
- How to read it
- Coherence needs at least two active factors; with zero or one, the Macro Board shows N/A.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.active_factor_count
Caveats
- The Macro Board shows the count only inside the coherence tooltip.
Section model health (Model health)
A score from 0 to 100 for the reliability of a section's statistics today.
Also shown as Model health
- How it is worked out
- A weighted score of data freshness, factor independence, half-life stability and regime fit. Calibration has a weight but no measured value yet, so it drops out.
- Units
- A score from 0 to 100. 90 means the inputs are fresh and the fits are stable.
- Date and lag
- Recomputed each daily run.
- How to read it
- A low score means stale inputs or unstable fits in that section's z, half-life and reversion values.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.model_health
Model health coverage
The share of the model health score's weight that has a value today.
- How it is worked out
- The summed weight of the components with a value, as a percent of the full weight.
- Units
- Percent. 80 means 80% of the score's weight has data.
- Date and lag
- Recomputed in each daily run.
- How to read it
- Below 100, the model health score uses fewer checks than designed.
Where it appears
- API:
GET /api/v1/macro/snapshotfieldssections.health_coverage
Caveats
- The Macro Board does not display it. Only the API returns it.
Corridor status (Corridor)
Whether overnight rates are near the middle of the Fed's target range or near its bounds.
Also shown as Corridor
- How it is worked out
- The largest absolute z-score among the factors in the Fed corridor section.
- Units
- A label.
- Date and lag
- Uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- Strained means at least one corridor gap is far from its norm. The section rows show which gap drives it.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Orderly | largest factor z under 1.5 in size | Overnight rates are in their usual place in the range. |
| Taut | largest factor z from 1.5 to under 2.5 in size | One corridor gap is unusual. |
| Strained | largest factor z of 2.5 or more in size | A corridor gap is extreme. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.corridor_status
Treasury curve regime
The shape of the Treasury curve today, from its front and long slopes.
- How it is worked out
- The front-slope factor averages 2s5s and 3M2Y. The long-slope factor averages 5s10s and 10s30s. The label compares both factors with zero.
- Units
- A label.
- Date and lag
- Uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- Inverted means short yields are above long yields; an inverted curve has preceded past recessions.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Upward | both slope factors above 0 | Longer maturities yield more. |
| Inverted | both slope factors below 0 | Shorter maturities yield more. |
| Mixed | any other case | The front and long ends slope in opposite directions. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
SOFR trailing-average configuration
The order of the 30-day, 90-day and 180-day SOFR trailing averages. It shows whether overnight rates have been rising or falling.
- How it is worked out
- Compares two gaps with zero, the 90-day minus 30-day average and the 180-day minus 90-day average.
- Units
- A label.
- Date and lag
- Uses the section's latest date. The averages look back 30 to 180 days.
- How to read it
- Inverted and Upward give the direction of SOFR over the last six months.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Upward | both gaps above 0 | Older averages are higher; SOFR has fallen. |
| Inverted | both gaps below 0 | Recent averages are higher; SOFR has risen. |
| Mixed | any other case | SOFR has changed direction within the last six months. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
Inflation regime
The level of market inflation expectations, from the 5-year and 10-year breakevens.
- How it is worked out
- Averages the 5-year and 10-year breakeven inflation rates and compares the mean with fixed levels.
- Units
- A label.
- Date and lag
- Uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- Anchored is the band around the Fed's 2% goal. Elevated and Unanchored mean the market prices inflation well above the goal.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Disinflationary | mean breakeven under 1.5% | The market prices inflation well under the Fed's goal. |
| Anchored | 1.5% to 2.5% | Expectations are near the goal. |
| Elevated | above 2.5% and up to 3.5% | Expectations are above the goal. |
| Unanchored | above 3.5% | Expectations are far above the goal. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
Real yield curve regime
The shape of the TIPS real yield curve today.
- How it is worked out
- Averages the TIPS 5s10s and 10s30s slopes and compares the mean with a band of 5 basis points around zero.
- Units
- A label.
- Date and lag
- Uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- Inverted means near-term real yields are above long ones. This is a sign of tight current policy.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Flat | mean slope within 0.05 of 0 | Real yields barely change with maturity. |
| Upward | mean slope above 0.05 | Longer real yields are higher. |
| Inverted | mean slope below -0.05 | Shorter real yields are higher. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
Section momentum
The direction a section moved over the last week. Only the Treasury curve and Credit sections have it.
- How it is worked out
- For the Treasury curve, the mean one-week change of the front-slope and long-slope factors, with a cut of 0.01. For Credit, the z-score of the credit momentum factor, with a cut of 0.25.
- Units
- A label.
- Date and lag
- Compares the section's latest date with the observation five trading days earlier.
- How to read it
- Widening means credit spreads grew over the week. Steepening means the two curve slopes rose on average.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Steepening | mean slope change above 0.01 | The curve slopes rose over the week. |
| Flattening | mean slope change below -0.01 | The curve slopes fell over the week. |
| Widening | credit momentum z above 0.25 | Credit spreads grew. |
| Tightening | credit momentum z below -0.25 | Credit spreads shrank. |
| Stable | inside either cut | The section shows no clear move over the week. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
Credit valuation asymmetry
The room credit spreads have to widen, measured against their history. A high score means spreads are tight and the risk is skewed toward widening.
- How it is worked out
- 100 minus the mean full-history percentile rank of IG OAS, Aaa minus UST 10Y and Baa minus UST 10Y.
- Units
- A score from 0 to 100. 85 means the credit-level spreads are near their historical lows.
- Date and lag
- Uses the section's latest date. FRED publishes a day late, so that date is usually one trading day older than the options data.
- How to read it
- A high score means spreads are near their historical lows. A low score means spreads are already wide.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
Caveats
- Aaa minus UST 10Y is an input to this score but has no row on the Macro Board.
SOFR trailing forecastability
Whether the SOFR trailing-average rows revert fast enough to give useful reversion forecasts.
- How it is worked out
- The count of section rows with an eligible half-life in the Fast or Moderate band, against the number of rows the model fitted.
- Units
- A label.
- Date and lag
- Recomputed in each daily run.
- How to read it
- Supported means most rows revert within a quarter. Unreliable means no row passed the half-life checks.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Supported | at least half the fitted rows are Fast or Moderate | Reversion forecasts come from fast-reverting rows. |
| Mixed | some eligible rows but fewer than half Fast or Moderate | Reversion is slow for most rows. |
| Unreliable | no row has an eligible half-life | The model gives no reversion forecast. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections.read
Funding
SOFR minus EFFR spread
The gap between the secured overnight rate (SOFR) and the unsecured fed funds rate (EFFR). It shows whether repo funding costs more than bank funding.
Also shown as SOFR − EFFR
- How it is worked out
- SOFR minus EFFR, both in percent.
- Units
- Percentage points. 0.05 means SOFR is 5 basis points above EFFR.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive and rising means repo is tight relative to bank funding, often near month end. Negative is the usual state when cash is plentiful.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
SOFR minus IORB spread
The gap between the secured overnight rate and the rate the Fed pays on reserves.
Also shown as SOFR − IORB
- How it is worked out
- SOFR minus the interest rate on reserve balances, both in percent.
- Units
- Percentage points. 0.03 means SOFR is 3 basis points above IORB.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Above 0, banks earn more by lending in repo than by holding reserves. This is a sign that reserves are getting scarce.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
EFFR minus IORB spread
The gap between the fed funds rate and the rate the Fed pays on reserves.
Also shown as EFFR − IORB
- How it is worked out
- EFFR minus IORB, both in percent.
- Units
- Percentage points. -0.07 means EFFR is 7 basis points below IORB.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise toward 0 means banks pay more for overnight cash. This is a sign of tighter reserves.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
OBFR minus EFFR spread
The gap between the overnight bank funding rate and the fed funds rate.
Also shown as OBFR − EFFR
- How it is worked out
- OBFR minus EFFR, both in percent. OBFR adds Eurodollar borrowing to the fed funds trades behind EFFR.
- Units
- Percentage points. 0.01 means OBFR is 1 basis point above EFFR.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Usually near 0. A move away from 0 means offshore dollar funding costs differ from domestic funding costs.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Fed corridor
EFFR versus target range midpoint
Where the fed funds rate trades inside the Fed's target range.
Also shown as EFFR vs FF Midpoint
- How it is worked out
- EFFR minus the midpoint of the target range. The midpoint is the sum of the upper and lower bounds, halved.
- Units
- Percentage points. -0.05 means EFFR is 5 basis points below the midpoint.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise toward the upper bound means bank funding is tightening.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
SOFR versus target range midpoint
Where the secured overnight rate trades relative to the Fed's target range.
Also shown as SOFR vs FF Midpoint
- How it is worked out
- SOFR minus the midpoint of the fed funds target range.
- Units
- Percentage points. 0.02 means SOFR is 2 basis points above the midpoint.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise toward the upper bound means repo is tightening.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Fed funds target range width
The width of the Fed's target range for the fed funds rate.
Also shown as FF Corridor Width
- How it is worked out
- The upper bound minus the lower bound.
- Units
- Percentage points. 0.25 means a 25 basis point range.
- Date and lag
- Each value has the date of its FRED observation. The value changes only when the Fed changes the range.
- How to read it
- A change in width marks a Fed policy decision.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The width rarely changes, so its z-score and half-life give no information. It does not feed the section scores.
- It is not a member of any plumbing factor, so no Monetary Plumbing card uses it.
SOFR minus RRP rate spread
The gap between the secured overnight rate and the Fed's overnight reverse repo rate. The reverse repo rate is the floor of the corridor.
Also shown as SOFR − RRP
- How it is worked out
- SOFR minus the overnight reverse repo award rate.
- Units
- Percentage points. 0.08 means SOFR is 8 basis points above the floor.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Near 0, repo trades at the floor and cash is plentiful. A rise means repo rates are lifting off the floor.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
EFFR minus RRP rate spread
The gap between the fed funds rate and the Fed's overnight reverse repo rate.
Also shown as EFFR − RRP
- How it is worked out
- EFFR minus the overnight reverse repo award rate.
- Units
- Percentage points. 0.08 means EFFR is 8 basis points above the floor.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise means bank funding rates are lifting away from the floor.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Policy path
Policy path, 1 month
The gap between the 4-week Treasury bill yield and today's fed funds rate. It approximates the rate change the bill market prices for the next month.
Also shown as Policy path 1M
- How it is worked out
- The 4-week bill yield minus EFFR.
- Units
- Percentage points. -0.20 means bills price about 20 basis points of cuts.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means the market prices lower rates ahead; positive means higher rates.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- Bill yields include a supply premium, so the gap from EFFR also moves with bill supply.
- The policy path rows are for display only and do not feed a section score.
Policy path, 3 months
The gap between the 3-month Treasury bill yield and today's fed funds rate.
Also shown as Policy path 3M
- How it is worked out
- The 3-month bill yield minus EFFR.
- Units
- Percentage points. -0.40 means bills price about 40 basis points of cuts over three months.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means the market prices lower rates ahead; positive means higher rates.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- Bill yields include a supply premium, so the gap from EFFR also moves with bill supply.
Policy path, 6 months
The gap between the 6-month Treasury bill yield and today's fed funds rate.
Also shown as Policy path 6M
- How it is worked out
- The 6-month bill yield minus EFFR.
- Units
- Percentage points. -0.60 means bills price about 60 basis points of cuts over six months.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means the market prices lower rates ahead; positive means higher rates.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Policy path, 12 months
The gap between the 1-year Treasury yield and today's fed funds rate.
Also shown as Policy path 12M
- How it is worked out
- The 1-year Treasury yield minus EFFR.
- Units
- Percentage points. -0.90 means the market prices about 90 basis points of cuts over a year.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means the market prices lower rates ahead; positive means higher rates.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Policy path, 3 months forward
The rate change priced for the three months that start three months from now.
Also shown as Policy path 3M fwd
- How it is worked out
- Twice the 6-month bill yield, minus the 3-month bill yield, minus EFFR.
- Units
- Percentage points. -0.30 means the market prices about 30 basis points of cuts for that window.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A value more negative than the 3-month row means the market prices more cuts for months four to six than for the next three months.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The forward uses a simple average of yields, without compounding.
Policy path, 6 months forward
The rate change priced for the six months that start six months from now.
Also shown as Policy path 6M fwd
- How it is worked out
- Twice the 1-year Treasury yield, minus the 6-month bill yield, minus EFFR.
- Units
- Percentage points. -0.50 means the market prices about 50 basis points of cuts for that window.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A value more negative than the 6-month row means the market prices more cuts for months seven to twelve than for the next six months.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The forward uses a simple average of yields, without compounding.
Economic releases
Consumer price index (CPI)
The headline consumer price index and its monthly and yearly changes.
Also shown as CPI, Month, Level, m/m, y/y, Published, Next, Age(d)
- How it is worked out
- Month on month and year on year are percent changes of the index level.
- Units
- An index level, with changes in percent. 0.3% month on month is a 0.3% rise in prices.
- Date and lag
- Monthly. The row shows the latest published month, usually the month before last. Published and Next give the release dates.
- How to read it
- Compare month on month with 0.17%, the monthly rate that a 2% yearly rate implies.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases.observation_month,releases.level,releases.mom,releases.yoy,releases.published,releases.next_release,releases.age_days
Caveats
- Release rows have no z-score, half-life or reversion forecast.
Core consumer price index
The consumer price index without food and energy, and its monthly and yearly changes.
Also shown as Core CPI
- How it is worked out
- Month on month and year on year are percent changes of the index level.
- Units
- An index level, with changes in percent.
- Date and lag
- Monthly. Published and Next give the release dates.
- How to read it
- Core changes show the underlying trend, with less noise from food and fuel prices.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases.observation_month,releases.level,releases.mom,releases.yoy,releases.published,releases.next_release,releases.age_days
Core PCE price index
The personal consumption expenditures price index without food and energy. The Fed sets its 2% inflation target on headline PCE, which includes food and energy.
Also shown as Core PCE
- How it is worked out
- Month on month and year on year are percent changes of the index level.
- Units
- An index level, with changes in percent.
- Date and lag
- Monthly. It publishes later in the month than the consumer price index. Published and Next give the dates.
- How to read it
- Compare year on year with the Fed's 2% goal.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases.observation_month,releases.level,releases.mom,releases.yoy,releases.published,releases.next_release,releases.age_days
Nonfarm payroll employment
The number of jobs on nonfarm payrolls and the number added.
Also shown as Payrolls
- How it is worked out
- Month on month and year on year are differences in the level, in thousands of jobs.
- Units
- Thousands of jobs. +150k means 150,000 jobs added in the month.
- Date and lag
- Monthly. Published and Next give the release dates.
- How to read it
- Large gains point to a strong labour market; losses point to a weak one.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases.observation_month,releases.level,releases.mom,releases.yoy,releases.published,releases.next_release,releases.age_days
Caveats
- FRED keeps the latest revised level, so past months change after each release.
Unemployment rate
The share of the labour force without a job.
Also shown as Unemployment rate
- How it is worked out
- Month on month and year on year are differences in the rate, in percentage points.
- Units
- Percent, with changes in percentage points. +0.1pp means the rate rose by a tenth of a point.
- Date and lag
- Monthly. Published and Next give the release dates.
- How to read it
- A rising rate points to a weakening labour market.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases.observation_month,releases.level,releases.mom,releases.yoy,releases.published,releases.next_release,releases.age_days
Release level
The latest published value of a monthly US economic release, such as CPI or payrolls.
Also shown as Level, Month, CPI, Core CPI, Core PCE, Payrolls, Unemployment rate
- How it is worked out
- The current FRED vintage of the series for its latest observation month, used as published.
- Units
- The release unit. Payrolls are thousands of jobs displayed with no decimals; index levels and the unemployment rate display to 2 decimals.
- Date and lag
- Monthly. The daily run reads FRED and stores a new month when the agency publishes it, about a month after the month it describes.
- How to read it
- Compare the level with the m/m and y/y columns beside it.
Where it appears
- Widgets: Macro Board, Daily Dispatch
- API:
GET /api/v1/macro/snapshotfieldsreleases[].name,releases[].display_name,releases[].observation_month,releases[].level
Caveats
- A revision replaces the level in place. The Macro Board shows the current vintage only.
- The Macro Board shows no consensus forecast and no surprise against one.
Month-over-month change (m/m)
The change in a monthly release from the month before.
Also shown as m/m
- How it is worked out
- For price indexes, 100 times the level over the prior month's level, minus 100. For payrolls and the unemployment rate, the level minus the prior month's level.
- Units
- Percent for price indexes, signed to 2 decimals (+0.09%). Thousands of jobs for payrolls, signed (+162k). Percentage points for the unemployment rate, signed to 1 decimal (+0.1 pp).
- Date and lag
- Monthly, with the release level.
- How to read it
- For inflation, a monthly rise near 0.17% annualises to about 2%. For payrolls, the sign shows job gains or losses.
Where it appears
- Widgets: Macro Board, Daily Dispatch
- API:
GET /api/v1/macro/snapshotfieldsreleases[].mom,releases[].change_unit
Caveats
- It shows a dash when the prior month is missing from the history.
Year-over-year change (y/y)
The change in a monthly release from the same month a year earlier.
Also shown as y/y
- How it is worked out
- The same rule as the monthly change, against the level 12 months before.
- Units
- Same as the monthly change. 2.61% on CPI means prices rose 2.61% over the year.
- Date and lag
- Monthly, with the release level.
- How to read it
- For inflation, compare it with the Fed's 2% goal. For payrolls, it gives the yearly job gain.
Where it appears
- Widgets: Macro Board, Daily Dispatch
- API:
GET /api/v1/macro/snapshotfieldsreleases[].yoy,releases[].change_unit
Caveats
- It shows a dash when the month a year earlier is missing.
Publication date
The date the current value of a release appeared on FRED.
Also shown as Published
- How it is worked out
- The start date of the current FRED vintage. A revision moves it to the revision date.
- Units
- A date, YYYY-MM-DD.
- Date and lag
- Updated in the daily run that first reads a new vintage.
- How to read it
- Compare it with the observation month. A recent date on an old month means a revision.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases[].published
Next release date
The next date FRED lists for a new value of the release.
Also shown as Next
- How it is worked out
- The first date on the release's FRED calendar after the day of the run that read it.
- Units
- A date, YYYY-MM-DD, or empty when FRED lists none.
- Date and lag
- Taken in the daily run with the release.
- How to read it
- Until this date passes, the current value is the newest available.
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases[].next_release
First seen date
The date the pipeline first read the latest month of a release.
- How it is worked out
- The UTC date of the run that first stored that observation month. Later revisions keep the original date.
- Units
- A date, YYYY-MM-DD.
- Date and lag
- Set once, in the run that first reads the month.
- How to read it
- It shows whether a value is new this week.
Where it appears
- API:
GET /api/v1/macro/snapshotfieldsreleases[].first_seen
Caveats
- No widget displays it. The API returns it.
Release age
The number of calendar days since the current value was published.
Also shown as Age(d)
- How it is worked out
- Today's date minus the publication date, recomputed on each request.
- Units
- Calendar days, a whole number such as 13.
- Date and lag
- Counts up each day until a new vintage arrives.
- How to read it
- The label beside it states whether the age is normal for the release calendar.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Fresh | age of 1 day or less | The value came out within the last day. |
| Awaiting scheduled release | age above 1 day, and the Macro Board date is before the next listed release date | The value is the newest one due; the next one is not out yet. |
| Delayed by publication schedule | age of 45 days or less with no upcoming release date ahead of the Macro Board date | The next value is late against the calendar but within the normal monthly spacing. |
| Stale | age above 45 days with no upcoming release date ahead of the Macro Board date | The value is older than a monthly release should be. |
Where it appears
- Widgets: Macro Board
- API:
GET /api/v1/macro/snapshotfieldsreleases[].age_days,releases[].freshness_status
Caveats
- A release with no listed next date skips the second label. A value 2 to 45 days old then shows as Delayed by publication schedule even when nothing is due.
SOFR trailing averages
SOFR 90-day minus 30-day average
The gap between the 90-day and 30-day trailing averages of SOFR. It shows the direction of overnight rates over the last quarter.
Also shown as SOFR 90D − 30D Avg
- How it is worked out
- The 90-day SOFR average minus the 30-day SOFR average, both published by the New York Fed.
- Units
- Percentage points. 0.10 means the 90-day average is 10 basis points above the 30-day.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means SOFR has fallen recently; negative means it has risen.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
SOFR 180-day minus 90-day average
The gap between the 180-day and 90-day trailing averages of SOFR.
Also shown as SOFR 180D − 90D Avg
- How it is worked out
- The 180-day SOFR average minus the 90-day SOFR average.
- Units
- Percentage points. 0.15 means the 180-day average is 15 basis points above the 90-day.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means SOFR fell between six and three months ago; negative means it rose.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
SOFR 180-day minus 30-day average
The gap between the 180-day and 30-day trailing averages of SOFR. It measures the full six-month change.
Also shown as SOFR 180D − 30D Avg
- How it is worked out
- The 180-day SOFR average minus the 30-day SOFR average. It equals the 90-day minus 30-day gap plus the 180-day minus 90-day gap.
- Units
- Percentage points. 0.25 means the 180-day average is 25 basis points above the 30-day.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means SOFR has fallen over six months; negative means it has risen.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The row is for display only and does not feed a section reading.
SOFR trailing-average butterfly
Whether the 90-day SOFR average is above or below the straight line between the 30-day and 180-day averages.
Also shown as SOFR Avg Butterfly
- How it is worked out
- Twice the 90-day average, minus the 30-day average, minus the 180-day average.
- Units
- Percentage points. 0.05 means the 90-day average is 5 basis points above the straight line.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A value away from 0 means the direction of SOFR changed within the last six months, after a change in policy or funding.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
SOFR 30-day average minus 1-month Treasury yield
The 30-day SOFR average compared with the 1-month Treasury yield.
Also shown as SOFR 30D Avg − UST 1M
- How it is worked out
- The 30-day SOFR average minus the 1-month constant-maturity Treasury yield.
- Units
- Percentage points. 0.05 means the average is 5 basis points above the bill yield.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means bills yield more than recent funding, so bills are cheap. Positive means bills are rich.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The average looks back and the yield looks forward. The gap therefore also moves when the market prices a rate change.
SOFR 90-day average minus 3-month Treasury yield
The 90-day SOFR average compared with the 3-month Treasury yield.
Also shown as SOFR 90D Avg − UST 3M
- How it is worked out
- The 90-day SOFR average minus the 3-month constant-maturity Treasury yield.
- Units
- Percentage points. 0.10 means the average is 10 basis points above the bill yield.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means bills yield more than recent funding. Positive means bills are rich or the market prices cuts.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The average looks back and the yield looks forward. The gap therefore also moves when the market prices a rate change.
Treasury curve
2s10s Treasury curve slope (2s10s)
The gap between the 10-year and 2-year Treasury yields. It is the most quoted measure of curve slope.
Also shown as 2s10s
- How it is worked out
- The 10-year constant-maturity yield minus the 2-year.
- Units
- Percentage points. 0.50 means the 10-year yields 50 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means the curve is inverted. A rise from negative is a steepening, and steepenings have often come as the Fed starts cutting.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The row is for display only. The curve readings use 2s5s and 10s30s.
5s30s Treasury curve slope (5s30s)
The gap between the 30-year and 5-year Treasury yields.
Also shown as 5s30s
- How it is worked out
- The 30-year constant-maturity yield minus the 5-year.
- Units
- Percentage points. 0.80 means the 30-year yields 80 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise means long yields are climbing relative to medium yields, often from term premium or inflation concern.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The row is for display only and does not feed a section reading.
3M10Y Treasury curve slope (3M10Y)
The gap between the 10-year Treasury yield and the 3-month yield.
Also shown as 3M10Y
- How it is worked out
- The 10-year constant-maturity yield minus the 3-month.
- Units
- Percentage points. -0.40 means the 3-month yields 40 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means policy rates are above long yields. This slope has a long record as a recession indicator.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The row is for display only and does not feed a section reading.
2s5s Treasury curve slope (2s5s)
The gap between the 5-year and 2-year Treasury yields, the front of the curve.
Also shown as 2s5s
- How it is worked out
- The 5-year constant-maturity yield minus the 2-year.
- Units
- Percentage points. 0.20 means the 5-year yields 20 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- It moves most with the expected path of policy rates over the next few years.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
10s30s Treasury curve slope (10s30s)
The gap between the 30-year and 10-year Treasury yields, the long end of the curve.
Also shown as 10s30s
- How it is worked out
- The 30-year constant-maturity yield minus the 10-year.
- Units
- Percentage points. 0.30 means the 30-year yields 30 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise means investors demand more term premium for long bonds.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
2s5s10s Treasury butterfly
The position of the 5-year yield relative to the straight line between the 2-year and 10-year yields.
Also shown as 2s5s10s Fly
- How it is worked out
- Twice the 5-year yield, minus the 2-year yield, minus the 10-year yield.
- Units
- Percentage points. 0.10 means the 5-year yields 10 basis points above the line.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means the 5-year is cheap relative to the 2-year and 10-year; negative means it is rich.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
5s10s30s Treasury butterfly
The position of the 10-year yield relative to the straight line between the 5-year and 30-year yields.
Also shown as 5s10s30s Fly
- How it is worked out
- Twice the 10-year yield, minus the 5-year yield, minus the 30-year yield.
- Units
- Percentage points. -0.05 means the 10-year yields 5 basis points below the line.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means the 10-year is cheap relative to the 5-year and 30-year; negative means it is rich.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
2s10s30s Treasury butterfly
The position of the 10-year yield relative to the straight line between the 2-year and 30-year yields.
Also shown as 2s10s30s Fly
- How it is worked out
- Twice the 10-year yield, minus the 2-year yield, minus the 30-year yield.
- Units
- Percentage points. 0.15 means the 10-year yields 15 basis points above the line.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Positive means the 10-year is cheap relative to the 2-year and 30-year; negative means it is rich.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Real & inflation
5-year breakeven inflation rate
The average yearly inflation the market prices over the next five years.
Also shown as 5Y Breakeven
- How it is worked out
- The 5-year nominal Treasury yield minus the 5-year TIPS yield, as published on FRED.
- Units
- Percent a year. 2.30 means the market prices 2.3% inflation a year.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Compare it with the Fed's 2% goal. A rise means the market prices more inflation.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- Breakevens also include liquidity and risk premia, so they differ from a pure inflation forecast.
10-year breakeven inflation rate
The average yearly inflation the market prices over the next ten years.
Also shown as 10Y Breakeven
- How it is worked out
- The 10-year nominal Treasury yield minus the 10-year TIPS yield, as published on FRED.
- Units
- Percent a year. 2.25 means the market prices 2.25% inflation a year.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Compare it with the Fed's 2% goal. A rise means the market prices more inflation.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
5-year, 5-year forward inflation expectation rate
The yearly inflation the market prices for the five years that start five years from now.
Also shown as 5Y5Y Fwd Inflation
- How it is worked out
- The FRED series derived from 5-year and 10-year breakevens, used as published.
- Units
- Percent a year. 2.20 means 2.2% a year priced for years six to ten.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- It excludes the next five years. A rise means long-run inflation expectations are moving up.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The row is for display only and does not feed a section reading.
Breakeven curve slope, 10-year minus 5-year
Whether the market prices more inflation in the long run than in the next five years.
Also shown as 10Y − 5Y Breakeven
- How it is worked out
- The 10-year breakeven minus the 5-year breakeven.
- Units
- Percentage points. -0.05 means the 10-year breakeven is 5 basis points below the 5-year.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means the market expects near-term inflation to fade; positive means it expects inflation to build.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
TIPS 5s10s real yield slope
The gap between the 10-year and 5-year TIPS real yields.
Also shown as TIPS 5s10s
- How it is worked out
- The 10-year TIPS yield minus the 5-year TIPS yield.
- Units
- Percentage points. 0.25 means the 10-year real yield is 25 basis points higher.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means near-term real yields are higher. This is a sign of tight current policy.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
TIPS 10s30s real yield slope
The gap between the 30-year and 10-year TIPS real yields.
Also shown as TIPS 10s30s
- How it is worked out
- The 30-year TIPS yield minus the 10-year TIPS yield.
- Units
- Percentage points. 0.20 means the 30-year real yield is 20 basis points higher.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise means investors want more real return to hold the longest bonds.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Credit
High-yield option-adjusted spread (HY OAS)
The extra yield that high-yield corporate bonds pay over Treasuries, adjusted for embedded options.
Also shown as HY OAS
- How it is worked out
- The ICE BofA US High Yield index option-adjusted spread, as published on FRED.
- Units
- Percentage points. 3.50 means 350 basis points over Treasuries.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Wide means investors demand more for default risk; tight means credit is calm.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Investment-grade option-adjusted spread (IG OAS)
The extra yield that investment-grade corporate bonds pay over Treasuries, adjusted for embedded options.
Also shown as IG OAS
- How it is worked out
- The ICE BofA US Corporate index option-adjusted spread, as published on FRED.
- Units
- Percentage points. 1.00 means 100 basis points over Treasuries.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Wide means investors demand more for corporate risk; tight means credit is calm.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
High-yield minus investment-grade spread
The extra spread that high-yield credit pays over investment-grade credit.
Also shown as HY − IG OAS
- How it is worked out
- HY OAS minus IG OAS.
- Units
- Percentage points. 2.50 means high yield pays 250 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Widening means investors are moving away from the weakest borrowers.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Baa minus Aaa corporate yield spread
The extra yield that Moody's Baa-rated corporate bonds pay over Aaa-rated ones.
Also shown as Baa − Aaa
- How it is worked out
- The Moody's Baa corporate yield minus the Moody's Aaa corporate yield.
- Units
- Percentage points. 0.80 means Baa yields 80 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Widening means investors charge more for the lower end of investment grade.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Baa corporate yield minus 10-year Treasury yield
The extra yield that Baa-rated corporate bonds pay over the 10-year Treasury.
Also shown as Baa − UST 10Y
- How it is worked out
- The Moody's Baa corporate yield minus the 10-year constant-maturity Treasury yield.
- Units
- Percentage points. 1.70 means Baa yields 170 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Wide means credit risk is priced high; tight means investors accept little extra yield.
Where it appears
- Widgets: Macro Board
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The Moody's yields cover long maturities, so this gap also moves with the curve beyond 10 years.
Monetary plumbing
Reserve balances
The cash banks hold at the Fed, the main gauge of liquidity in the banking system.
Also shown as Reserve Balances
- How it is worked out
- The weekly Wednesday level of reserve balances with Federal Reserve Banks, as published on FRED.
- Units
- Millions of dollars. 3,200,000 means $3.2 trillion.
- Date and lag
- Weekly. The Fed publishes the Wednesday level on Thursday, so the latest value is up to a week older than the options data.
- How to read it
- Low reserves mean tighter funding.
Where it appears
- Widgets: Macro Board, Monetary Plumbing, Daily Dispatch
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- Weekly rows use 260 observations for the z-score, one release for the weekly change and 4 releases for the reversion forecast.
- In the reserve scarcity factor, a lower level counts as more stress.
Reverse repo to reserves ratio
Overnight reverse repo take-up as a ratio of bank reserves. It shows how much spare cash is parked outside the banking system.
Also shown as RRP / Reserves
- How it is worked out
- Overnight reverse repo take-up divided by reserve balances, on the weekly reserve dates.
- Units
- A ratio displayed to 3 significant figures. 0.100 means reverse repo take-up is a tenth of reserves.
- Date and lag
- Weekly, on the reserve balance dates. The latest value is up to a week older than the options data.
- How to read it
- A falling ratio means the spare cash buffer is draining.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- In the reserve scarcity factor, a lower ratio counts as more stress.
SOFR minus 3-month Treasury bill yield
The gap between overnight secured funding and the 3-month bill yield.
Also shown as SOFR − T-Bill 3M
- How it is worked out
- SOFR minus the 3-month Treasury bill yield.
- Units
- Percentage points. 0.10 means SOFR is 10 basis points above the bill yield.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Negative means bills yield more than repo, often after heavy bill issuance.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Caveats
- The bill yield also moves with expected rate changes, so the gap measures more than bill supply.
4-week bill minus 1-month Treasury yield
The gap between the 4-week Treasury bill rate and the 1-month constant-maturity yield.
Also shown as T-Bill 4W − UST 1M
- How it is worked out
- The 4-week bill yield minus the 1-month constant-maturity Treasury yield.
- Units
- Percentage points. 0.02 means the bill yields 2 basis points more.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- Usually near 0. A move away from 0 points to stress at the front of the bill curve, such as near a debt-ceiling date.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
SOFR minus tri-party general collateral rate
The gap between SOFR and the tri-party general collateral repo rate (TGCR). It shows how much more cleared and bilateral repo costs than tri-party repo.
Also shown as SOFR − TGCR
- How it is worked out
- SOFR minus TGCR, both published by the New York Fed.
- Units
- Percentage points. 0.02 means SOFR is 2 basis points above TGCR.
- Date and lag
- Each value has the date of its FRED observation. FRED publishes a day late, so the latest date is usually one trading day older than the options data.
- How to read it
- A rise means collateral or bank balance sheets are tight, often at month or quarter end.
Where it appears
- Widgets: Macro Board, Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures.stats - API:
GET /api/v1/fred/{series}fieldsrecords
Factor z-score
The distance of a plumbing factor from its own five-year norm, in standard deviations. Each Monetary Plumbing card shows one factor, such as reserve scarcity or bill cheapness.
Also shown as Basis z, vs 5y norm, Reserve scarcity, Collateral pressure, CP funding stress, Bill cheapness, Bill curve, Secured funding, Unsecured funding, Corridor implementation
- How it is worked out
- Each member series gets a z-score of its latest value against its trailing 1,260 daily or 260 weekly observations, using the population standard deviation. The factor score is the mean of the members' z-scores, each multiplied by the member's stress direction. A positive score therefore means more stress. A factor whose members have no direction (bill cheapness, bill curve) uses the plain mean of member z-scores.
- Units
- Standard deviations, displayed to 2 decimals. +1.31 means the factor is 1.31 standard deviations on the stress side of its five-year mean.
- Date and lag
- The daily run starts at 00:15 UTC, Tuesday to Saturday, and scores the latest FRED observation of each member. Weekly balance sheet members change once a week, so a card built on them changes weekly.
- How to read it
- Above +1 the factor is under unusual stress; below -1 conditions are unusually easy. Near 0 the factor is at its five-year norm. Compare a factor with its own history only.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| elevated | score of +1 or above; for a factor without a direction, a score of 1 or more in size on either side | The factor is under stress well beyond its usual range. |
| easing | score of -1 or below (only factors with a stress direction) | Conditions are unusually easy for this factor. |
| weak | score above 0.75 and under 1 in size | The factor is moderately far from its norm, below the elevated level. |
| quiet | score of 0.75 or less in size | The factor is near its five-year norm. |
| degraded | no member has a usable z-score this run | The card states that data is insufficient this run and displays no score. |
Where it appears
- Widgets: Monetary Plumbing, Macro Board
- API:
GET /api/v1/macro/snapshotfieldsfactors[].z,factors[].oriented_z,factors[].factor_state,factors[].state_line
Caveats
- The card sentence states the factor state in words and ends with the score, for example "(+1.31 vs 5y norm)". The state word is not displayed as a badge.
- Reserve scarcity mixes members with opposite directions. Its plain mean can be near 0 while the directed score is above +1.
- A member with no variation over its window has no z-score and drops out of the mean.
- The z-score has no minimum history. A series with a short history is scored against fewer observations than the window length.
Funding anomaly
A label for the mechanism behind any unusual readings among the plumbing factors. Monetary Plumbing displays it at the top.
- How it is worked out
- A factor with a stress direction is active when its directed score is 1 or more in size. Bill cheapness and the bill curve have no direction, so each is active when its plain z-score is 1 or more in size. Each active factor maps to one mechanism. One mechanism gives that mechanism's label; two or more give the mixed label. When only one mechanism is active, the label changes to Calendar effect if an event falls within 2 open market days of the Macro Board date. At least two active member series must also agree in sign with that event's mean effect, by majority. The mixed label never becomes the calendar effect.
- Units
- A label.
- Date and lag
- Built in the same daily run as the factor scores, from the same inputs.
- How to read it
- A named mechanism shows where unusual funding readings are concentrated. The mixed label means no single mechanism stands out. It also appears when every factor is near its norm.
Thresholds
| Label | Rule | Meaning |
|---|---|---|
| Broad funding pressure | the only active mechanism is reserve scarcity or commercial paper funding stress | Funding strain is system-wide rather than tied to collateral or bills. |
| Collateral scarcity | the only active mechanism is collateral pressure | Repo rates point to a shortage of Treasury collateral. |
| Bill-specific cheapness | the only active mechanism is bill cheapness or the bill curve | Treasury bills trade away from money-market rates while no other mechanism is active. |
| Calendar effect | one mechanism is named and an event falls within 2 open market days of the Macro Board date. At least two active member series agree in sign with its mean effect. | The unusual readings match the moves after past events of this kind. |
| Mixed or uncertain | no active factor, or two or more mechanisms active | No single mechanism explains the readings. |
Where it appears
- Widgets: Monetary Plumbing, Macro Board
- API:
GET /api/v1/macro/snapshotfieldssections[].funding_anomaly,glossary.funding_anomaly[].key,glossary.funding_anomaly[].definition - API:
GET /api/v1/macro/snapshotfieldssections[].read
Effective number of independent factors
The number of independent readings a section's factors amount to after removing their co-movement. A low number means the factors mostly repeat one another.
- How it is worked out
- The run correlates the factors' z-score histories and takes the eigenvalues of that correlation matrix. The measure is the squared sum of the eigenvalues divided by the sum of their squares.
- Units
- A count from 1 up to the number of factors in the section, to 6 decimals. 3.49 means the plumbing factors behave like about three and a half independent readings.
- Date and lag
- Built in the daily run from the full z-score history up to the Macro Board date.
- How to read it
- Close to the factor count, each factor adds its own information. Close to 1, the section measures one mechanism several times.
Where it appears
- API:
GET /api/v1/macro/snapshotfieldssections[].exposure.effective_n
Caveats
- No widget displays it. The API and the agent export return it.
- It is absent when a section has fewer than two factors or the correlation cannot be computed.
- Every macro section has its own figure; the plumbing figure covers only the plumbing factors.
Herfindahl-Hirschman index (HHI)
The concentration of a section's reading in a few raw FRED series. A high number means one or two series drive the section.
- How it is worked out
- Each factor's share of the section is proportional to the size of its z-score. The share splits equally across the factor's members, then across each member's raw input series. The index is the sum of the squared shares of the raw series.
- Units
- A number from 0 to 1, to 6 decimals. 0.0654 means the reading spreads over many series; 1 means a single series makes up all of it.
- Date and lag
- Built in the daily run from the same day's factor scores.
- How to read it
- Compare it with the effective number of independent factors.
Where it appears
- API:
GET /api/v1/macro/snapshotfieldssections[].exposure.hhi,sections[].exposure.by_series.{series}
Caveats
- No widget displays it. The API and the agent export return it.
Change in reserve balances
The rise or fall in bank reserves at the Federal Reserve over a bridge window. The reserves bridge splits this total into drivers.
Also shown as Δ Reserves, 1w, 4w, 13w, 52w
- How it is worked out
- Reserve balances on the window's end date minus reserve balances on its start date. Window dates are weekly dates with a reading for Fed total assets, the Treasury's cash account and reserves.
- Units
- Millions of dollars. -8772 means reserves fell by $8,772M over the window.
- Date and lag
- The Federal Reserve publishes these balances weekly, so the bridge changes once a week and uses Wednesday dates. The 1w window compares the latest weekly date with the one before.
- How to read it
- A rise means banks hold more cash at the Fed; a fall means less. Compare it with the driver columns beside it to see what moved reserves.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsbridge.windows[].window,bridge.windows[].start_date,bridge.windows[].end_date,bridge.windows[].d_reserves
Caveats
- The 4w, 13w and 52w windows are omitted when the history is too short. The 1w window is always present.
Change in Fed total assets
The growth or shrinkage of the Federal Reserve's balance sheet over a bridge window. Asset growth adds reserves unless the Treasury's cash account or the reverse repo facility absorbs it.
Also shown as Δ Fed assets
- How it is worked out
- Fed total assets on the window's end date minus the value on its start date.
- Units
- Millions of dollars. -14256 means the balance sheet shrank by $14,256M.
- Date and lag
- Weekly; each value has the Wednesday date of the balance sheet release.
- How to read it
- A positive value adds to reserves and a negative value drains them, before the other drivers.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsbridge.windows[].d_fed_assets
Change in the Treasury General Account
The rise or fall in the Treasury's cash account at the Federal Reserve over a bridge window.
Also shown as − Δ TGA
- How it is worked out
- The account balance on the window's end date minus the balance on its start date. The bridge subtracts it from the asset change.
- Units
- Millions of dollars. -10338 means the account fell by $10,338M and added that much to reserves.
- Date and lag
- Weekly; each value has the Wednesday date of the balance sheet release.
- How to read it
- A rise drains reserves, for example around tax dates or after debt sales. A fall returns cash to banks.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsbridge.windows[].d_tga
Change in reverse repo take-up
The rise or fall in cash parked overnight at the Fed's reverse repo facility over a bridge window. A rise drains reserves.
Also shown as − Δ RRP
- How it is worked out
- Take-up on the end date minus take-up on the start date. Take-up is daily, so the bridge uses the latest daily reading on or before each weekly date. The bridge subtracts it from the asset change.
- Units
- Millions of dollars. -408 means take-up fell by $408M.
- Date and lag
- Taken at the bridge's weekly dates. The value changes weekly, although take-up is published daily.
- How to read it
- A rise means money funds park more cash at the Fed instead of lending it in the market.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsbridge.windows[].d_rrp
Residual reserve change
The part of the reserve change that Fed assets, the Treasury's cash account and reverse repo take-up do not explain.
Also shown as − Δ Other (residual)
- How it is worked out
- Change in Fed total assets, minus the change in the Treasury's cash account, minus the change in reverse repo take-up, minus the change in reserves.
- Units
- Millions of dollars. 5262 means $5,262M of the asset change went to other liabilities.
- Date and lag
- Weekly, on the same dates as the bridge.
- How to read it
- A small residual means the three named drivers explain the reserve change. A large one points to liabilities outside the bridge, such as currency in circulation.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsbridge.windows[].d_other,glossary.bridge[].key
Caveats
- It absorbs every gap between the four inputs, including differences in how each input is dated within the week.
Mean event effect
The average move in a funding series over the five open market days after a calendar event, such as a quarter end. It shows the usual effect of such events on the series.
Also shown as Effect (mean)
- How it is worked out
- For each past event, the series value five open market days after the event date minus its value on the event date. The mean covers the events with both readings; gaps are not filled.
- Units
- The unit of the series, to 4 decimals. -0.0209 on a spread in percentage points means the spread narrowed by about 2 basis points.
- Date and lag
- Rebuilt in each daily run over the full event history up to the Macro Board date. The latest event joins once five open market days have passed.
- How to read it
- The sign gives the usual direction of the move after the event, and the size gives its typical scale. Use it together with the hit rate and the event count.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsevents.effects[].event_type,events.effects[].series,events.effects[].horizon,events.effects[].mean_effect
Caveats
- A row needs at least 8 contributing events. With fewer, Monetary Plumbing omits the row.
- The study covers only daily series in the plumbing factors.
Median event effect
The median move in a funding series over the five open market days after a calendar event. A few extreme events move it less than they move the mean.
Also shown as Effect (median)
- How it is worked out
- The median of the same per-event changes the mean event effect uses.
- Units
- The unit of the series, to 4 decimals.
- Date and lag
- Same as the mean event effect.
- How to read it
- When the median and mean differ in sign, a few large events drive the mean.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsevents.effects[].median_effect
Hit rate
The share of past events after which a series moved in the same direction as its mean event effect. It measures how consistent the usual move is.
- How it is worked out
- The count of events whose five-day change has the same sign as the mean effect, divided by all contributing events. A change of exactly zero counts as a miss.
- Units
- A share from 0 to 1, displayed as a percent to 1 decimal. 68.7% means about two of three events moved the usual way.
- Date and lag
- Same as the mean event effect.
- How to read it
- Near 100% the move repeats almost every time; near 50% the direction is close to random.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsevents.effects[].hit_rate
Caveats
- A mean of exactly zero gives a hit rate of 0.
Event count
The number of past events behind an event effect row. More events make the averages more reliable.
Also shown as n
- How it is worked out
- The number of events with a reading on both the event date and five open market days later for that series.
- Units
- A whole number of events, such as 67.
- Date and lag
- Same as the mean event effect.
- How to read it
- Compare it with the event inventory count. A large gap means the series history is shorter than the event list.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsevents.effects[].n
Caveats
- Rows with fewer than 8 events are omitted.
Event inventory count
The number of events of one kind in the history, for example 68 month ends.
Also shown as Month end, Quarter end, Tax date, Debt limit binding, Technical adjustment, Facility start
- How it is worked out
- Month ends and quarter ends are the last open market day of each month or quarter. Tax dates are 15 March, 15 April, 15 June, 15 September and 15 December, moved to the next open market day. Debt limit binding is detected from the data: 10 straight days with Treasury headroom below 0.20%.
- Units
- A whole number of events, displayed in the event chip, for example "Month end (68)".
- Date and lag
- Recounted in each daily run.
- How to read it
- A small count means few events stand behind the averages. Monetary Plumbing hides the average path below 8 events.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsevents.inventory[].event_type,events.inventory[].n_events,events.inventory[].first_date,events.inventory[].last_date - API:
GET /api/v1/macro/event-pathsfieldsevent_type,n_events
Caveats
- The month-end list includes the latest Macro Board date even when that month has not ended, so the count can be one too high.
Average event path
The average move of a series from ten open market days before an event to ten after it, measured from its event-day value.
- How it is worked out
- For each position from -10 to +10, the change from the event-day value to the value at that position, collected over past events. The Monetary Plumbing event path chart displays the mean, the median and the 25th to 75th percentile band.
- Units
- The unit of the series. The chart tooltip displays percent and percentage points to 2 decimals (0.04%, 0.04 pp) and millions of US dollars to 0 decimals ($1235M).
- Date and lag
- Rebuilt in each daily run. The latest event fills in as its later days arrive.
- How to read it
- A path that rises after position 0 and then returns shows temporary pressure around the event. A wide band means the events differ widely.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/event-pathsfieldsseries[].points[].offset,series[].points[].mean,series[].points[].median,series[].points[].p25,series[].points[].p75,series[].points[].n
Caveats
- Below 8 events, Monetary Plumbing shows no path and displays the observed count instead.
Event lag
The number of open market days between the Macro Board date and a calendar event. Position 0 means the Macro Board date is the event date.
- How it is worked out
- The Macro Board date's position in the daily date sequence minus the event's position. An event inside 2 open market days of the Macro Board date counts as current.
- Units
- Open market days, a whole number such as 1 or 0.
- Date and lag
- Recomputed in each daily run against the Macro Board date.
- How to read it
- It marks today's position on the average event path.
Where it appears
- Widgets: Monetary Plumbing
- API:
GET /api/v1/macro/snapshotfieldsevents.current.as_of,events.current.in_window[].event_type,events.current.in_window[].event_date,events.current.in_window[].offset
Caveats
- A past event has a positive number and a coming event a negative one. The path chart uses the same axis, with days after the event on the positive side.
Reverse repo take-up
The cash that money-market funds and others park overnight at the Federal Reserve's reverse repo facility instead of lending it in the market.
Also shown as ON RRP Take-Up
- How it is worked out
- The daily FRED series for overnight reverse repo take-up, converted from billions to millions of dollars.
- Units
- Millions of dollars. 225 displays as $225M.
- Date and lag
- Daily; each value has the date of its FRED observation.
- How to read it
- High take-up means spare cash with no better use. Take-up near zero means that buffer is used up.
Where it appears
- Widgets: Monetary Plumbing, Daily Dispatch
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last - API:
GET /api/v1/macro/historyfieldsseries[].records[].value
Treasury General Account
The Treasury's cash account at the Federal Reserve. Cash moving into it leaves bank reserves.
Also shown as Treasury General Account
- How it is worked out
- The weekly FRED series for the account balance, used as published.
- Units
- Millions of dollars, displayed in trillions or billions. 953612 displays as $953.6B.
- Date and lag
- Weekly; each value has the Wednesday date of the balance sheet release.
- How to read it
- A rising balance drains reserves; a falling one adds to them. Large swings cluster around tax dates and debt limit episodes.
Where it appears
- Widgets: Monetary Plumbing, Daily Dispatch
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last - API:
GET /api/v1/macro/historyfieldsseries[].records[].value
Fed total assets
The size of the Federal Reserve's balance sheet. It grows with asset purchases and shrinks with runoff.
Also shown as Fed Total Assets
- How it is worked out
- The weekly FRED series for total assets, used as published.
- Units
- Millions of dollars. 6745699 displays as $6.75T.
- Date and lag
- Weekly; each value has the Wednesday date of the balance sheet release.
- How to read it
- A shrinking balance sheet drains reserves unless the Treasury's cash account or reverse repo take-up falls by as much.
Where it appears
- Widgets: Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last - API:
GET /api/v1/macro/historyfieldsseries[].records[].value
Fed Treasury holdings
The Treasury securities the Federal Reserve holds outright.
Also shown as Fed UST Holdings
- How it is worked out
- The weekly FRED series, used as published.
- Units
- Millions of dollars. 4542228 displays as $4.54T.
- Date and lag
- Weekly; each value has the Wednesday date of the balance sheet release.
- How to read it
- A steady fall in holdings is balance sheet runoff.
Where it appears
- Widgets: Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last
Treasury General Account to reserves
The Treasury's cash account as a share of reserve balances.
Also shown as TGA / Reserves
- How it is worked out
- The account balance divided by reserve balances, on the same weekly date.
- Units
- A ratio displayed to 3 significant figures. 0.320 means the account equals about a third of reserves.
- Date and lag
- Weekly; each value has the Wednesday date of the balance sheet release.
- How to read it
- A higher ratio means the Treasury holds more cash relative to banks. The reserve scarcity factor counts a higher ratio as more stress.
Where it appears
- Widgets: Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last
Federal funds volume
The dollar volume of overnight federal funds trades behind the effective federal funds rate.
Also shown as EFFR Volume
- How it is worked out
- The daily FRED series, converted from billions to millions of dollars.
- Units
- Millions of dollars. 102000 displays as $102.0B.
- Date and lag
- Daily; each value has the date of its FRED observation.
- How to read it
- Falling volume means fewer trades set the rate.
Where it appears
- Widgets: Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last
SOFR volume
The dollar volume of overnight Treasury repo trades behind the Secured Overnight Financing Rate.
Also shown as SOFR Volume
- How it is worked out
- The daily FRED series, converted from billions to millions of dollars.
- Units
- Millions of dollars. 2922000 displays as $2.92T.
- Date and lag
- Daily; each value has the date of its FRED observation.
- How to read it
- Rising volume often follows heavy Treasury issuance that needs repo financing.
Where it appears
- Widgets: Monetary Plumbing
- Functions:
fred,fred.series - API:
GET /api/v1/macro/snapshotfieldsfeatures[].stats.last