NSS Yield Curve Engine
U.S. Treasury curve as of 01 October 2026 · Nelson-Siegel-Svensson · source: fred
The latest curve
Dots are observed constant-maturity yields; the line is the calibrated NSS curve. The forward curve shows the rates the market implies for future short-term borrowing.
Table view
| Observed (%) | Fitted (%) | Residual (bp) | Forward (%) | |
|---|---|---|---|---|
| Tenor | ||||
| 1M | 4.06 | 4.08 | -1.68 | 4.06 |
| 3M | 4.17 | 4.14 | 2.59 | 4.21 |
| 6M | 4.27 | 4.26 | 0.99 | 4.45 |
| 1Y | 4.44 | 4.48 | -4.12 | 4.82 |
| 2Y | 4.78 | 4.76 | 2.16 | 5.09 |
| 3Y | 4.91 | 4.89 | 1.89 | 5.13 |
| 5Y | 5.01 | 5.02 | -1.30 | 5.26 |
| 7Y | 5.12 | 5.13 | -0.56 | 5.47 |
| 10Y | 5.24 | 5.27 | -2.73 | 5.76 |
| 20Y | 5.64 | 5.56 | 8.36 | 6.11 |
| 30Y | 5.61 | 5.67 | -5.64 | 6.14 |
How the curve has moved
Every week since 1990 compressed into a slider, and as a surface.
Slope, regimes and recessions
An inverted curve (long rates below short rates) has preceded every U.S. recession since the 1960s. The regime strip classifies the model-implied slope with hysteresis so noise near a threshold does not flip the label.
Inversion episodes table
| End | Months | Deepest (pp) | Next recession | Lead (months) | |
|---|---|---|---|---|---|
| Inversion start | |||||
| Aug 2000 | Dec 2000 | 5 | -0.6 | Apr 2001 | 8.0 |
| Jul 2006 | May 2007 | 11 | -0.5 | Jan 2008 | 18.0 |
| May 2019 | Sep 2019 | 5 | -0.4 | Mar 2020 | 10.0 |
| Nov 2022 | Nov 2024 | 25 | -1.8 | – | – |
The near-term forward spread (Engstrom & Sharpe, 2019) reads the market's expected path of the Fed funds rate off the NSS forward curve: below zero, cuts are priced in.
Which signal predicts recessions best (pseudo-real time)?
| auc_in_sample | auc_out_of_sample | brier_out_of_sample | latest_probability | |
|---|---|---|---|---|
| predictors | ||||
| 10Y−3M spread | 0.778 | 0.612 | 0.088 | 0.069 |
| near-term forward spread | 0.772 | 0.712 | 0.091 | 0.044 |
| both | 0.785 | 0.502 | 0.103 | 0.062 |
Latent factors
Level, slope and curvature summarise the whole curve in a handful of numbers.
Correlation with model-free proxies
| NSS (free λ) | Diebold-Li (fixed λ) | |
|---|---|---|
| factor ~ proxy | ||
| beta0 ~ level | 0.503 | 0.838 |
| -beta1 ~ slope | 0.742 | 0.995 |
| beta2 ~ curvature | 0.798 | 0.979 |
Expected rates vs term premium
A 10-year yield is the average short rate investors expect over the next decade plus a term premium, the extra return demanded for holding a long bond. The Adrian-Crump-Moench model (the method behind the New York Fed's published premium) separates the two. Its expected short rates are also fitted to the Philadelphia Fed's Survey of Professional Forecasters, so they do not simply revert to the 1990-2026 average of rates; plain ACM is shown for comparison. Latest: 5.25% = 4.06% expected + 1.19% term premium.
Agreement with other estimates
| corr (level) | corr (12m change) | RMSE (bp) | mean gap (bp) | months | |
|---|---|---|---|---|---|
| ACM on NSS curves (full sample) vs Kim-Wright (Fed Board) | 0.96 | 0.75 | 122.31 | 104.17 | 441.00 |
| ACM + SPF surveys (full sample) vs Kim-Wright (Fed Board) | 0.95 | 0.79 | 29.70 | -5.56 | 441.00 |
| ACM on NSS curves (real time) vs Kim-Wright (Fed Board) | 0.08 | 0.52 | 116.24 | 70.88 | 382.00 |
| ACM + SPF surveys (real time) vs Kim-Wright (Fed Board) | 0.94 | 0.90 | 43.79 | -26.37 | 382.00 |
| ACM on NSS curves (full sample) vs ACM (New York Fed) | 0.91 | 0.81 | 97.23 | 79.97 | 442.00 |
| ACM + SPF surveys (full sample) vs ACM (New York Fed) | 0.73 | 0.42 | 87.69 | -29.72 | 442.00 |
| ACM on NSS curves (real time) vs ACM (New York Fed) | 0.38 | 0.66 | 115.65 | 55.06 | 383.00 |
| ACM + SPF surveys (real time) vs ACM (New York Fed) | 0.65 | 0.71 | 89.81 | -42.17 | 383.00 |
| ACM on NSS curves (full sample) vs ACM on the Fed's GSW curve | 0.99 | 0.95 | 31.28 | 15.17 | 441.00 |
| ACM + SPF surveys (full sample) vs ACM on the Fed's GSW curve | 0.90 | 0.67 | 125.49 | -94.56 | 441.00 |
| ACM on NSS curves (real time) vs ACM on the Fed's GSW curve | 0.25 | 0.69 | 126.97 | 1.24 | 382.00 |
| ACM + SPF surveys (real time) vs ACM on the Fed's GSW curve | 0.86 | 0.77 | 116.72 | -96.01 | 382.00 |
Which part of the slope predicts recessions?
| auc_in_sample | auc_out_of_sample | brier_out_of_sample | latest_probability | |
|---|---|---|---|---|
| predictors | ||||
| 10Y−3M spread | 0.743 | 0.497 | 0.103 | 0.069 |
| expectations component | 0.703 | 0.224 | 0.092 | 0.104 |
| term premium | 0.483 | 0.475 | 0.118 | 0.074 |
Real yields and breakeven inflation
TIPS pay a real yield. Fitting their curve next to the nominal one gives breakeven inflation at every maturity, and the 5-year, 5-year forward breakeven, the market's inflation compensation for years 5 to 10. It includes risk and liquidity premia, so it is not a pure forecast. Latest (2026-10-01): 10-year real yield 2.88%, 10-year breakeven 2.37%, 5y5y 2.39%.
Agreement with other measures
| corr (level) | corr (1m change) | RMSE (bp) | mean gap (bp) | months | |
|---|---|---|---|---|---|
| be_par_5y vs FRED T5YIE | 1.00 | 0.96 | 5.61 | -0.15 | 268.00 |
| be_par_10y vs FRED T10YIE | 0.99 | 0.93 | 6.46 | 1.63 | 268.00 |
| be_5y5y vs FRED T5YIFR | 0.95 | 0.95 | 13.68 | 8.57 | 268.00 |
| be_5y vs Fed GSW be_5y | 0.97 | 0.86 | 13.77 | -1.53 | 267.00 |
| be_10y vs Fed GSW be_10y | 0.98 | 0.91 | 8.23 | -1.03 | 267.00 |
| be_5y5y vs Fed GSW be_5y5y | 0.88 | 0.67 | 20.37 | -0.52 | 267.00 |
Validation against the Federal Reserve's GSW curve
Zero curves agree to 10.6 bp RMSE over 1909 dates; period-to-period changes correlate 0.973. The Fed fits off-the-run notes and bonds, this engine on-the-run par yields, so small persistent gaps are expected.
Table view
| 1Y | 2Y | 3Y | 5Y | 7Y | 10Y | 15Y | 20Y | 25Y | 30Y | 5y5y fwd | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| bias_bp | -5.17 | -2.57 | -1.93 | -2.74 | -4.99 | -8.80 | -12.06 | -10.45 | -5.43 | 1.46 | -14.86 |
| std_bp | 6.20 | 4.33 | 3.91 | 3.93 | 6.20 | 9.30 | 9.33 | 6.17 | 8.13 | 16.86 | 17.12 |
| rmse_bp | 8.07 | 5.04 | 4.36 | 4.79 | 7.96 | 12.80 | 15.25 | 12.14 | 9.77 | 16.92 | 22.66 |
| change_corr | 0.95 | 0.99 | 0.99 | 0.99 | 0.99 | 0.99 | 0.98 | 0.99 | 0.98 | 0.87 | 0.97 |
Model quality and relative value
Residuals are where individual tenors sit relative to the smooth curve. Positive (red) means the yield is above the curve - the bond is cheap relative to its neighbours.
Table view
| residual_bp | zscore | signal | half-life (periods) | |
|---|---|---|---|---|
| tenor | ||||
| 1M | -1.68 | -0.81 | fair | 2.41 |
| 3M | 2.59 | 0.99 | fair | 1.56 |
| 6M | 0.99 | -0.20 | fair | 2.08 |
| 1Y | -4.12 | -0.75 | fair | 4.41 |
| 2Y | 2.16 | 0.60 | fair | 3.39 |
| 3Y | 1.89 | 1.46 | fair | 4.86 |
| 5Y | -1.30 | -1.21 | fair | 5.65 |
| 7Y | -0.56 | -1.74 | fair | 8.04 |
| 10Y | -2.73 | 1.43 | fair | 25.11 |
| 20Y | 8.36 | 0.12 | fair | 42.56 |
| 30Y | -5.64 | -0.41 | fair | 25.22 |
Forecasting
Diebold-Li dynamic Nelson-Siegel forecasts, re-estimated each month on past data only, compared with the random-walk ("no change") benchmark.
Diebold-Mariano p-values
| 3M | 6M | 1Y | 2Y | 3Y | 5Y | 7Y | 10Y | 20Y | 30Y | |
|---|---|---|---|---|---|---|---|---|---|---|
| horizon | ||||||||||
| 1 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.000 | 0.001 | 0.005 | 0.000 | 0.000 |
| 6 | 0.182 | 0.098 | 0.102 | 0.055 | 0.068 | 0.160 | 0.241 | 0.328 | 0.009 | 0.019 |
| 12 | 0.413 | 0.380 | 0.324 | 0.259 | 0.223 | 0.222 | 0.215 | 0.183 | 0.001 | 0.000 |
The state-space version of the model (Kalman filter, all parameters estimated jointly by maximum likelihood) also gives forecast intervals.