Core Path · L3.2.02

Risk factors and position mapping

12 minMarket riskRisk factorsSensitivities

By the end you will be able to

  1. 1Choose risk factors for each asset class and say what a given choice leaves out.
  2. 2Map a position onto the factors: split a maturity between curve points, translate a currency, and turn an option into delta and vega.
  3. 3Build a book's positions × factors sensitivity matrix and its sensitivity vector, and use them to estimate P&L.
  4. 4Tell when the linear estimate is good enough and when full revaluation is needed.

Why it matters

A large bank's trading desks hold hundreds of thousands of positions: bonds of every maturity, options at every strike, swaps in dozens of currencies. No one can model each one separately. Instead risk managers pick a manageable set of market variables and describe every position by how it responds to them. Done that way, RiskAtoms Bank's whole Markets desk fits in one row of eight numbers.

Core explanation

From positions to risk factors

L2.5.04: Sensitivities measured one sensitivity per position: DV01 for a bond, beta for a share, delta for an option. A desk needs all of them on one common grid, so that a gilt and a swap, or a basket and a put, can be added up. That grid is the set of risk factors, and describing each position on it is mapping.

Illustrative dataRiskAtoms Bank plc's Markets desk

One made-up trading book on one made-up valuation day, in pounds: eight positions in four books, eight risk factors and 750 days of simulated factor moves. The levels (UK index 8,000, GBP/USD 1.30, Brent $80 and so on) are round illustrative numbers, not market data. The same book runs through every lesson in Module 3.2, so the figures agree from lesson to lesson.

Choosing the factors

Good risk factors are observed every day, few enough to estimate their volatilities and correlations, and rich enough that the positions' values depend on little else. Each factor's daily move is measured in a natural unit: a log return for prices and exchange rates, basis points for rates and spreads, volatility points for implied volatility.

Asset classTypical factors at a bankRiskAtoms Bank's book
EquitiesAn index per market; single names or sectors for concentrated booksUK index, US index
Interest ratesPoints (vertices) on each currency's curve, for example 3 months to 30 yearsGBP 2-year and 10-year swap rates
FXEach currency's spot rate against the bank's base currencyGBP/USD
CommoditiesFutures prices by delivery month, per commodityBrent (one point)
VolatilityImplied volatility by expiry and strikeUK index implied vol (one point)
CreditSpread curves by rating and sector, or single namesInvestment-grade spread

A real bank's factor set runs to thousands. RiskAtoms Bank's has eight, enough to show every idea in this module. The fewer the factors, the more each one has to stand in for: the price of a smaller set is risk that falls between them.

Mapping three awkward positions

Corporate bonds: a maturity between vertices

The bonds have 5 years to run, but the curve has only 2-year and 10-year points. The 5-year rate is interpolated: 0.625 of the 2-year plus 0.375 of the 10-year. So is the bonds' rate risk.

US basket: one position, two factors

In pounds the basket is worth $39m × (US index change) ÷ GBP/USD. It gains £0.30m if the index rises 1% and loses £0.30m if the pound rises 1%.

Puts: spot and volatility

An option depends on its underlying and on implied volatility. The puts map to the UK index through delta (−£192,680 per 1%) and to UK vol through vega (£124,091 per vol point).

The sensitivity matrix

Put every position's sensitivities side by side and you get the sensitivity matrix: one row per position, one column per factor. Most entries are zero, because most positions depend on one or two factors. Adding down each column gives the book's sensitivity vector, the row in bold:

£ thousands per 1% (indices, GBP/USD, Brent), per bp (rates, spread) or per vol point
UK indexUS index2y rate10y rateGBP/USDBrentUK volIG spread
UK futures600.00000000
US basket0300.000−300.0000
UK puts−192.700000124.10
Gilt000−79.60000
2y swap0056.600000
FX forward0000200.0000
Brent00000123.100
Corp bonds00−21.4−12.9000−34.3
Book vector δ407.3300.035.1−92.5−100.0123.1124.1−34.3

Read the bottom row: the desk is long the UK index (£407,320 per 1%) even after its puts, long the US index, and long Brent; it loses £92,489 if the 10-year rate rises 1bp but gains £35,143 if the 2-year does; it is short the pound by £100,000 per 1%; it gains £124,091 per point of UK vol and loses £34,303 for each basis point of wider credit spreads. Every later lesson in this module starts from that row.

What does the factor set miss?

Risks not in the model

Every factor set leaves something out. Banks keep a list of these gaps, estimate each one separately and hold extra capital or set limits for them. Supervisors call them “risks not in VaR”.

The formal version

The matrix and the vector (M-E01: Vectors and matrices). With nn positions and kk factors, let spj=∂Pp/∂xjs_{pj} = \partial P_p / \partial x_j and Δx=(Δx1,…,Δxk)⊤\Delta x = (\Delta x_1, \dots, \Delta x_k)^\top. To first order:

ΔP≈S Δx(n×k)(k×1)=(n×1)ΔPbook=1⊤ΔP≈1⊤S Δx=(S⊤1)⊤Δxδ=S⊤1,δj=∑p=1nspjΔPbook≈δ⊤Δx=∑j=1kδj Δxj\begin{aligned} \Delta \mathbf{P} &\approx S\,\Delta x && (n \times k)(k \times 1) = (n \times 1) \\ \Delta P_{\text{book}} = \mathbf{1}^\top \Delta \mathbf{P} &\approx \mathbf{1}^\top S\,\Delta x = (S^\top \mathbf{1})^\top \Delta x \\ \delta &= S^\top \mathbf{1}, \qquad \delta_j = \sum_{p=1}^{n} s_{pj} \\ \Delta P_{\text{book}} &\approx \delta^\top \Delta x = \sum_{j=1}^{k} \delta_j\,\Delta x_j \end{aligned}

Mapping by interpolation. Linear interpolation between the 2-year and 10-year points gives the 5-year rate, and the chain rule splits the bonds' rate sensitivity:

r5=r2+5−210−2 (r10−r2)=0.625 r2+0.375 r10∂P∂r2=∂P∂r5 ∂r5∂r2=0.625 ∂P∂r5,∂P∂r10=0.375 ∂P∂r5\begin{aligned} r_5 &= r_2 + \frac{5 - 2}{10 - 2}\,(r_{10} - r_2) = 0.625\,r_2 + 0.375\,r_{10} \\ \frac{\partial P}{\partial r_2} &= \frac{\partial P}{\partial r_5}\,\frac{\partial r_5}{\partial r_2} = 0.625\,\frac{\partial P}{\partial r_5}, \qquad \frac{\partial P}{\partial r_{10}} = 0.375\,\frac{\partial P}{\partial r_5} \end{aligned}

The weights add to one, so a parallel move of both points moves r5r_5 by the same amount and the split keeps the bonds' total rate sensitivity.

A 3 × 3 block in full. The gilt, the swap and the corporate bonds against the 2-year rate, the 10-year rate and the IG spread (£ per bp), with day 205's rates shock as Δx\Delta x (in bp):

Srates Δx=(0−79,625056,58300−21,440−12,864−34,303)(25153)=(−1,194,3811,414,571−831,854)S_{\text{rates}}\,\Delta x = \begin{pmatrix} 0 & -79{,}625 & 0 \\ 56{,}583 & 0 & 0 \\ -21{,}440 & -12{,}864 & -34{,}303 \end{pmatrix} \begin{pmatrix} 25 \\ 15 \\ 3 \end{pmatrix} = \begin{pmatrix} -1{,}194{,}381 \\ 1{,}414{,}571 \\ -831{,}854 \end{pmatrix}

Full revaluation gives −£1,185,837, +£1,409,520, −£826,338 for the three positions: within 1% of the estimates, because bonds are only slightly curved. The column sums, 1⊤Srates=(35,143, −92,489, −34,303)\mathbf{1}^\top S_{\text{rates}} = (35{,}143,\ -92{,}489,\ -34{,}303), are these three positions' part of the book vector.

Try it

Switch positions in and out to see how the matrix and the book vector change, then move a factor (or replay a day from the history) and compare the sensitivity estimate with full revaluation.

Try itBuild the sensitivity matrix

Positions in the book

£ thousands per 1% (indices, GBP/USD, Brent), per bp (rates, spread) or per vol point
UK indexUS index2y rate10y rateGBP/USDBrentUK volIG spread
UK futures600.00000000
US basket0300.000−300.0000
UK puts−192.700000124.10
Gilt000−79.60000
2y swap0056.600000
FX forward0000200.0000
Brent00000123.100
Corp bonds00−21.4−12.9000−34.3
Book vector δ407.3300.035.1−92.5−100.0123.1124.1−34.3

Factor moves

Sensitivity estimate δ′Δx−£1,221,960
Full revaluation−£1,056,108
Gap (full − estimate)+£165,852

The estimate multiplies each sensitivity by its factor's move and adds up over the included rows. Try the puts alone with a −5 sd index move, or the risk-off day: the straight-line estimate misses the puts' curvature.

Worked example

Mapping the desk's book

From eight positions to eight numbers

Step 1 of 6
  1. 1

    The corporate bonds' yield

    r5=0.625×4.00%+0.375×4.40%=4.15%r_5 = 0.625 \times 4.00\% + 0.375 \times 4.40\% = 4.15\%, plus the 120bp spread: a yield of 5.35%, the bonds' coupon, so they are at par.

Units: the matrix shows £ per 1% for prices, per 1bp for rates and spreads and per 1 vol pt for vol. Inside δ⊤Δx\delta^\top\Delta x the log moves are decimals (0.006119 is a 0.6119% move), so the price sensitivities are per 1.00.

Regulatory lens · looking ahead

The Basel market risk standard (FRTB) builds its standardised approach on exactly this mapping: it prescribes the risk factors and sensitivities banks must compute, including ten tenor points from 3 months to 30 years for each currency's rate curve, and then aggregates them with set risk weights and correlations. Banks that use internal models must show that each risk factor is backed by enough real price observations to be modelled. Both are covered in M4.3: Market risk capital (FRTB) and CVA.

Spark Atoms

Spark AtomRiskMetrics gave the factors away
In October 1994 J.P. Morgan published RiskMetrics: a technical document and daily volatility and correlation data for a large set of risk factors, free to anyone. Its method of mapping every cash flow onto a fixed grid of vertices, keeping its value and its risk, became the industry's common starting point.
Spark AtomEight numbers, one book
RiskAtoms Bank's desk holds £210m of positions with a value, plus futures, a swap and a forward worth nothing, in four books. Its first-order market risk is the eight numbers in the bottom row of the matrix.

Key takeaways

  • Risk factors are a fixed set of observed market variables; every position is described by its sensitivity to them.
  • Mapping handles the awkward cases: interpolate a maturity between curve vertices, translate foreign positions into a price factor and an FX factor, and turn options into delta and vega.
  • The positions × factors sensitivity matrix S gives each position's P&L as SΔx; its column sums are the book vector δ, and the book's P&L is about δ′Δx.
  • The linear estimate is good for small moves and nearly straight positions (bonds); options need second-order terms or full revaluation for large moves.
  • Every factor set leaves gaps (basis, single-name risk, curve shape); banks track them as risks not in the model.

Reaction

Check what stuck

Question 1 · objective 2

A desk's curve has vertices at 5 and 10 years. A 7-year bond's rate is interpolated linearly between them. What weight goes on the 10-year vertex?

Question 2 · objective 2

That bond loses £50,000 for a 1bp rise in its own rate. What is its sensitivity to the 5-year vertex, in £ per bp?

£

Question 3 · objective 2

A sterling desk holds $20m of US shares with a beta of 1. GBP/USD is 1.25. What is its exposure to the US index, in £ per 1% move?

£

Question 4 · objective 3

Why is the book's sensitivity vector the column sums of the sensitivity matrix?

Question 5 · objective 1

The book maps the gilt onto the 10-year swap rate. Which risk does that leave out?

Glossary

Risk factor
A market variable, observed every day, that drives the value of positions: an index level, a point on a yield curve, an exchange rate, an implied volatility.
Mapping
Describing a position by its exposure to a fixed set of risk factors, so that very different instruments can be added up.
Vertex
A fixed maturity on a curve (2 years, 10 years, …) used as a risk factor. Cash flows or sensitivities at other maturities are split between the nearest vertices.
Sensitivity matrix
A table with one row per position and one column per risk factor; each entry is the position's P&L for a unit move in that factor.
Sensitivity vector
The column sums of the sensitivity matrix: the whole book's P&L per unit move in each factor.
Full revaluation
Repricing each position in full at the new factor levels, rather than multiplying sensitivities by moves.
Basis risk
The risk that two prices treated as one factor (a gilt yield and a swap rate, say) move differently.

Deep Dives & Origins

Deep Dives

  • P. Jorion, Value at Risk, 3rd ed., McGraw-Hill, 2007, the chapter on VaR mapping. Intermediate.
  • C. Alexander, Market Risk Analysis, Volume III: Pricing, Hedging and Trading Financial Instruments, Wiley, 2008. Advanced.

Origins

  • J.P. Morgan and Reuters, RiskMetrics: Technical Document, 4th ed., 1996.
  • Basel Committee on Banking Supervision, Basel Framework, MAR21: Standardised approach: sensitivities-based method, Bank for International Settlements.
  • Basel Committee on Banking Supervision, Basel Framework, MAR31: Internal models approach: model requirements (risk factor eligibility), Bank for International Settlements.

Watch this lesson

Video version

Prefer to watch? The same lesson as a 12-minute video will sit here, made from this page's script.