17.1 Non-Parallel Term Structure Shifts

Key Takeaways

  • PCA decomposes yield-curve moves into a few orthogonal factors—typically level, slope, and curvature—that explain most historical variance.
  • A key-rate duration (KR01) is the portfolio’s dollar (or DV01-style) sensitivity to a localized bump at one maturity while neighboring rates are interpolated to hold other key rates fixed.
  • Portfolio KR01s sum exposures across positions; hedging matches each key-rate bucket with instruments (bonds, futures, swaps) that concentrate risk in that bucket.
  • Forward-bucket 01 shocks contiguous forward rates; KR01 shocks par/spot key rates with tent-shaped interpolations—both recover effective duration when all buckets move in parallel.
  • PCA factor volatilities and key-rate volatilities drive multi-factor VaR and stress P&L; parallel-duration alone misses twist and butterfly risk.
Last updated: August 2026

Non-Parallel Term Structure Shifts

Parallel-shift duration (modified duration or DV01) answers only one question: what happens if every yield on the curve moves by the same amount. Real curves twist and butterfly. VRM–13 gives FRM candidates the two standard toolkits for non-parallel risk: principal component analysis (PCA) of historical curve moves, and key-rate / forward-bucket 01s that localize sensitivity along the maturity axis.

Why Parallel Shifts Are Not Enough

A barbell (cash in 2-year and 30-year bonds) and a bullet (cash in a 10-year bond) can be duration-matched so a +1 bp parallel move produces nearly identical P&L. A steepener—short rates up, long rates down—hurts the barbell and helps the bullet (or the reverse, depending on signs). Regulatory and desk stress tests therefore require shape risk, not only level risk.

Shift typeDescriptionDuration alone?
Parallel (level)All yields +ΔyCaptured
Steepener / flattener (slope)Short and long move oppositelyMissed
Butterfly (curvature)Belly moves vs wingsMissed
Localized spikeOne sector jumps (e.g., 5y)Missed

PCA Drivers of Curve Moves

Take a vector of daily (or weekly) yield changes at fixed tenors, e.g., Δy = (Δy_2y, Δy_5y, Δy_10y, Δy_30y, …). Form the covariance (or correlation) matrix Σ of these changes. PCA finds orthonormal eigenvectors (factor loadings) and eigenvalues (factor variances):

Σ v_i = λ_i v_i

Order λ_1 ≥ λ_2 ≥ … The first principal component almost always looks like a roughly flat vector across tenors—the level factor. The second typically changes sign from short to long tenors—the slope factor. The third is often U-shaped or inverted-U—the curvature (butterfly) factor. In many government-bond markets, the first three PCs explain 90%+ of historical variance; higher PCs are residual noise or liquidity idiosyncrasies.

Worked PCA intuition

Suppose four tenors and estimated factor volatilities (annualized, in yield bp):

FactorInterpretationσ (bp/year)Share of variance
PC1Level8082%
PC2Slope2512%
PC3Curvature124%
ResidualIdiosyncratic2%

A portfolio’s PCA risk is the vector of factor exposures (dollar sensitivity to each PC shock) times these volatilities. Multi-factor VaR ≈ z_α × √(Σ_i (e_i σ_i)²) if factors are orthogonal (as PCs are by construction). Exam cue: orthogonality is why PCA is preferred to ad-hoc level/slope/curve regressions that leave correlated residuals.

Key-Rate Shifts and KR01

Key-rate duration (Ho’s framework, popularized in risk systems) defines a set of key maturities—commonly 6m, 2y, 5y, 10y, 20y, 30y. A key-rate shift at key maturity k raises that par (or zero) yield by 1 bp and interpolates neighboring points so that other key rates stay fixed. The interpolation is usually piecewise linear (“tent”): the shift is 1 at key k, 0 at adjacent keys, and linear in between. The portfolio’s KR01_k (or key-rate DV01) is the dollar P&L (or change in value) from that localized +1 bp tent, often reported as −ΔV per bp so that long bonds have positive KR01 like classic DV01.

Formally, if V(y) is portfolio value as a function of the curve,

KR01_k ≈ −[V(y + tent_k) − V(y)] / 1 bp

(Sign conventions vary; state yours clearly on the exam.)

Worked KR01 for a single bond

A 10-year par bond with DV01 ≈ $850 per $1 million face under a parallel 1 bp shift. Under a pure 10y key-rate tent, almost the entire curve segment affecting that bond moves, so KR01_10y ≈ $820–$850 (slightly less if coupons create sensitivity to shorter keys). Under a pure 2y key-rate tent, the 10y par yield barely moves (tent is zero at 10y), so KR01_2y is small but not zero because the discount factors for near coupons still shift slightly depending on how the interpolator builds the zero curve from par keys.

Portfolio KR01s

For a book of positions i = 1…N,

KR01_k(portfolio) = Σ_i KR01_k(i)

KR01s are additive across positions (to first order), which makes them ideal for limits and hedging grids. A portfolio plot of KR01 versus key maturity is the risk profile: peaks show where curve risk concentrates.

Worked portfolio aggregation

PositionKR01_2yKR01_5yKR01_10yKR01_30y
Long 5y note12420352
Short 10y future−5−40−380−15
Receive-fixed 30y swap85090510
Net15430−255497

Units: dollars per bp. The book is long the 5y and 30y sectors and short the 10y sector—classic barbell versus belly risk even if parallel DV01 = 15 + 430 − 255 + 497 = 687 looks like a simple long.

Hedging Instruments for Key Rates

To flatten KR01_k, trade an instrument whose KR01 is concentrated at k:

BucketTypical hedge
2y2y Treasury / CTZ, 2y futures, 2y swap
5y5y note / FV futures, 5y swap
10y10y note / TY futures, 10y swap
30yLong bond / US futures, 30y swap / bond future

Hedge ratio for bucket k: N_hedge ≈ −KR01_k(portfolio) / KR01_k(hedge per contract or per $ face). After hedging all keys, residual risk is interpolation error, convexity, spread (swap vs Treasury), and PCA factors beyond the key grid.

Worked hedge

Net KR01_10y = −$255 / bp. A 10y futures CTD basket has KR01 ≈ $85 / bp per contract. Number of contracts to buy ≈ 255 / 85 ≈ 3.0 contracts (buy because portfolio KR01_10y is negative—you need positive 10y duration). Recompute all buckets after the trade: 10y KR01 near zero, small leakage into 5y and 30y from the tent overlap.

PCA Volatility Versus Key-Rate Volatility

PCA volatilities σ_i = √λ_i are factor-level. Key-rate volatilities are the historical (or implied) volatilities of each key-rate change, plus a correlation matrix among keys. Both feed multi-factor VaR:

  • PCA route: map portfolio to PC exposures e_i, use diagonal factor vols.
  • Key-rate route: map to KR01 vector d, use dᵀ Σ_key d for variance of P&L (P&L ≈ −d · Δy_keys in dollar-bp units).

Key-rate vols are often higher at the short end (monetary-policy noise) and lower in the long end, with high correlations between adjacent keys. PCA compresses that correlated structure into a few orthogonal shocks—cleaner for stress narratives (“+2σ level, −1σ slope”).

Forward-Bucket 01 Versus KR01

A forward-bucket 01 (or forward DV01) shocks a contiguous segment of the instantaneous or discrete forward curve by 1 bp while leaving other forward segments unchanged. That is a rectangular shock in forward space, which translates into a smooth but different shape in par/zero space than a key-rate tent.

FeatureKR01 (key-rate)Forward-bucket 01
Shock objectPar or zero key ratesForward rates in a bucket
Shape in zero spaceTent / piecewise linearHump from integrating forwards
Natural hedgesPar bonds, swaps, futuresForward-starting swaps, FRAs, Eurodollars
AdditivityYes across keysYes across buckets
Parallel sumSum of KR01s ≈ parallel DV01Sum of bucket 01s ≈ parallel DV01

Exam distinction: if the vignette shocks “the 2y–5y forward,” think bucket 01. If it bumps “the 5y par yield holding other key pars fixed,” think KR01.

Duration from KR01 and Bucket 01

If every key rate (or every forward bucket) is shifted by the same 1 bp, the total P&L is the sum of the localized P&Ls. Therefore:

Parallel DV01 ≈ Σ_k KR01_k ≈ Σ_b Bucket01_b

Modified duration follows as D_mod ≈ (Σ KR01) / (0.0001 × V) when KR01 is dollar sensitivity per bp and V is value. This is a crucial consistency check: if your key-rate profile does not sum to the parallel DV01 within interpolation tolerance, the risk system is mis-specified.

Worked consistency check

Take a long-only book whose KR01s are ten times the net profile above: Σ KR01 = 6,870 $/bp and market value V = $10,000,000. Then

D_mod = (Σ KR01) / (V × 0.0001) = 6,870 / (10,000,000 × 0.0001) = 6,870 / 1,000 = 6.87 years.

If hedges cut the same shape down to Σ KR01 = 687 $/bp on the same V, parallel duration falls to 0.687 years—the key-rate shape can still be large even when net parallel duration looks tiny. Always reconcile Σ KR01 (or Σ bucket 01) with the system's parallel DV01 before trusting either number.

Synthesis for Exam Vignettes

When a question mentions “non-parallel,” reach for PCA level/slope/curvature or a key-rate grid—not a single duration number. Hedge each material KR01 bucket; verify that the sum of KR01s (or bucket 01s) recovers parallel DV01; and remember that PCA orthogonality simplifies multi-factor VaR while key-rate profiles communicate where on the curve the risk lives.

Loading diagram...
From Parallel DV01 to Curve Shape Risk
Test Your Knowledge

In PCA of government yield-curve changes, which statement is most accurate?

A
B
C
D
Test Your Knowledge

A key-rate shift at the 10-year point is best described as:

A
B
C
D
Test Your Knowledge

Portfolio KR01s (in $/bp) are 20, 150, −80, and 200 at the 2y, 5y, 10y, and 30y keys. Approximate parallel DV01 is:

A
B
C
D
Test Your Knowledge

How does a forward-bucket 01 differ from a key-rate KR01?

A
B
C
D