---
title: "The Central Risk Book"
book: "Strategies II: Volatility, Relative Value, Macro and the Bank Desks"
subject: quant
language: en
chapter: 25
exercises: 8
source: https://one-course.com/books/quant/9/en/chapter/25-the-central-risk-book
---

# Chapter 25 — The Central Risk Book

Ten desks each hedging their own risk pay ten spreads for trades that would net to little. A [central risk book](#def-s2-the-central-risk-book-crb) collects the risk first, crosses what offsets, and hedges only what is left, when it is cheap to do so. On this chapter’s synthetic bank, five desks receiving independent client flows in 100 stocks would pay $335 000 a day to hedge each flow at once. Pooled, the net costs $270 000, 19.5% less. Kept and traded out at 15% a day, with the market risk hedged in index futures, it costs $45 000 a day. The book then carries residual risk with a one-day 99% value at risk of $859 000. The build is `firm.crbook`.

## 25.1 Pooling and netting

**Definition 25.1 (Central risk book).**

A *central risk book* is a trading book that takes on the risk that several desks acquire from clients, nets it, and manages the net: crossing offsetting positions internally, hedging common factors with liquid instruments and trading out the rest over time within risk limits.

**Definition 25.2 (Risk pooling).**

*Risk pooling* is combining positions from several sources before hedging, so that offsetting exposures cancel and only the net is traded.

`firm.crbook` gives five desks client flows in 100 stocks for 500 days ([Listing 25.1](#lst-s2-the-central-risk-book-book)). Each desk’s flow in each name has a standard deviation of $0.5 million a day, and 10% of the variance is common to all desks, as when clients herd. Stock returns follow a three-factor model, with a market factor of 1% daily volatility, two style factors and 1.5% of idiosyncratic volatility. Trading costs use Book 7’s model (chapter 27): a half-spread of 3 basis points and square-root impact with a coefficient of 0.7, on daily volumes between $20 and $200 million. Almgren, Thum, Hauptmann and Li, from almost 700 000 orders, found temporary impact closer to a 3/5 power of the trade rate than a square root; the exponent matters less here than the fact that impact grows faster than size.

Hedged desk by desk, each flow executed on its own as if the desk were alone in the market, the hedges cost $335 000 a day. Pooled first, 47.0% of the gross flow crosses internally and the net costs $270 000, a saving of 19.5%. The saving is smaller than the share crossed because the impact per dollar is lower on small trades: what nets away is disproportionately the cheap part. Butz and Oomen described the choice every dealer makes between internalising a client’s risk, warehousing it in anticipation of offsetting flow, and externalising it by hedging at once; a [central risk book](#def-s2-the-central-risk-book-crb) makes that choice for the whole bank.

## 25.2 Internal crossing

The saving depends on how independent the desks’ flows are ([Figure 25.1](#fig-s2-the-central-risk-book-desks)). With fully independent flows, pooling ten desks saves 48.0% of the cost. With 10% of the flow common to all desks, the saving peaks at 19.7% with six desks and falls to 17.1% with ten: the common part does not net, and with more desks it becomes a larger share of the net. A bank’s desks see the same clients’ moods, and the case for pooling must be made on their actual correlation.

![Hedging cost saved by pooling desks’ flows before hedging them at once, against the number of desks, for independent flows and for flows with a common component. Data: s2_crbook.by_desks.](https://one-course.com/images/onecourse/chapters/quant-9/s2-the-central-risk-book/fig-d2fe678c48e4.svg)

***Figure 25.1.** Hedging cost saved by pooling desks’ flows before hedging them at once, against the number of desks, for independent flows and for flows with a common component. Data: `s2_crbook.by_desks`.*

## 25.3 Optimised hedging

**Definition 25.3 (Residual risk hedge).**

A *residual risk hedge* hedges a pooled book’s exposure to common factors at once with liquid instruments (index futures, factor baskets) and leaves the remaining, mostly idiosyncratic, positions to be traded out gradually or offset by later flows.

The central book need not hedge the net at once. Each day it takes the clients’ net flow into its inventory, sells a fixed fraction of the inventory in the stocks, and holds an index future against the beta-weighted remainder. Garleanu and Pedersen showed that when trading is costly the optimal policy trades partially toward its target each period; here the target is a flat book, and the fraction sets the trade-off. Tomorrow’s flows offset part of what is kept, and what is traded out is traded in smaller pieces:

| share traded out a day | cost ($ thousands a day) | P&L sd ($ thousands) | sd without futures |
| --- | --- | --- | --- |
| 100% (pooled, at once) | 269.7 | 0 | 0 |
| 50% | 123.1 | 128 | 157 |
| 30% | 78.4 | 222 | 268 |
| 20% | 56.5 | 304 | 367 |
| 15% | 45.3 | 369 | 448 |
| 10% | 33.4 | 472 | 579 |
| 5% | 20.3 | 684 | 842 |

The futures overlay costs about $500 a day and removes about a fifth of the risk: the net positions are spread across names, so most of what is carried is idiosyncratic. Which point on the frontier ([Figure 25.2](#fig-s2-the-central-risk-book-frontier)) is right depends on the price of risk. With a one-day 99% value at risk limit of $1 million, the cheapest rate within the limit is 15%: $45 300 a day and a value at risk of $859 000. With a limit of $500 000, it is 35%: $89 300 a day. Against hedging desk by desk, the first saves 86.5% of the cost.

![The central book’s cost-risk frontier as the share of inventory traded out each day runs from 5% to 100%, with and without an index-future overlay; the dotted line is the standard deviation at which the one-day 99% value at risk reaches $1 million. Data: s2_crbook.frontier.](https://one-course.com/images/onecourse/chapters/quant-9/s2-the-central-risk-book/fig-85e7afc42b96.svg)

***Figure 25.2.** The central book’s cost-risk frontier as the share of inventory traded out each day runs from 5% to 100%, with and without an index-future overlay; the dotted line is the standard deviation at which the one-day 99% value at risk reaches $1 million. Data: `s2_crbook.frontier`.*

## 25.4 Governance

A [central risk book](#def-s2-the-central-risk-book-crb) changes who owns risk and who pays for hedging. The desks that bring the flows must be charged a transfer price for the risk they hand over, and credited for the netting their flows provide. If the price is too low, desks send risk they should have priced out of their clients; if it is too high, they hedge on their own and the netting is lost. The book’s own limits (value at risk, factor exposures, concentration, time to liquidate) need independent risk management, and the crossing itself needs rules. Clients’ trades must be executed on the terms promised to them, and information from one desk’s clients must not reach another desk’s trading. Book 7 (chapter 27) treats the internal crossing of a firm’s own strategies; the same questions of fair allocation arise between desks.

## 25.5 Strategy files

**Strategy file 25.1 — Central netting across desks.**

**Who pays you, and why.** The market’s spread and impact, not paid on offsetting flows.

**Instruments and venues.** Desks’ positions; the internal crossing engine.

**Signal.** Offsetting exposures across desks.

**Sizing and execution.** Net before hedging, with transfer prices to the desks.

**Costs.** Systems and governance.

**How it dies.** Correlated flows that do not net; desks that route around it.

**Horizon, capacity, infrastructure.** Intraday; a firm-wide position feed.

**Backtest honestly.** Desks’ actual flows and their correlation, not independence.

**Sources.** Butz and Oomen (2019); this chapter: 19.5% of hedging cost saved by pooling five desks.

**Strategy file 25.2 — Factor-hedged residual risk.**

**Who pays you, and why.** The cheapness of index futures against single stocks.

**Instruments and venues.** Index futures, factor baskets, sector ETFs.

**Signal.** The pooled book’s factor exposures from a risk model.

**Sizing and execution.** Hedge factors at once; leave idiosyncratic risk.

**Costs.** Futures roll and basis.

**How it dies.** A risk model that misses a factor.

**Horizon, capacity, infrastructure.** Daily; a factor risk model (Book 7, chapter 24).

**Backtest honestly.** Out-of-sample factor exposures.

**Sources.** This chapter: a fifth of the carried risk removed for $500 a day.

**Strategy file 25.3 — Patient hedging of pooled risk.**

**Who pays you, and why.** Impact saved by trading smaller and letting later flows offset.

**Instruments and venues.** The stocks, traded over days.

**Signal.** Inventory against the cost-risk frontier.

**Sizing and execution.** Trade a fixed share of the inventory a day, set by the risk limit.

**Costs.** Residual risk.

**How it dies.** One-way flows; volatility spikes that break the limit.

**Horizon, capacity, infrastructure.** Days; risk limits and capital.

**Backtest honestly.** Flows and volatility of stressed periods, not average ones.

**Sources.** Garleanu and Pedersen (2013); this chapter: $45 300 a day at a $1 million value at risk, against $335 000 desk by desk.

## 25.6 Tutorial: hedge what is left

**Goal.** Simulate desks’ client flows, hedge them desk by desk, pooled and patiently with a futures overlay, and choose the hedging rate from a risk limit. **End state:** the table and two figures.

1. **The book**. `def hedge_cost (trade: np.ndarray, sim: dict , cfg: CRBConfig) -> float : """$ cost of trading `trade` ($ per name) at the day's close with Book 7's model.""" return trade_cost(trade, 1.0 , sim[" sigma " ], sim[" adv " ], cfg.half_spread, cfg.eta) def desk_by_desk (sim: dict , cfg: CRBConfig | None = None ) -> np.ndarray: cfg = cfg or CRBConfig() fl = sim[" flows " ] return np.array([sum (hedge_cost(fl[d, t], sim, cfg) for d in range (fl.shape[0 ])) for t in range (fl.shape[1 ])]) def pooled (sim: dict , cfg: CRBConfig | None = None ) -> np.ndarray: cfg = cfg or CRBConfig() net = sim[" flows " ].sum(axis=0 ) return np.array([hedge_cost(net[t], sim, cfg) for t in range (net.shape[0 ])]) def central (sim: dict , cfg: CRBConfig | None = None , rate: float = 1.0 , futures: bool = True ) -> dict : """Each day the net flow joins the inventory x ($ per name, the bank taking the clients' other side); the book sells `rate` of x in the stocks at the close and, with `futures`, holds an index future of minus the remaining beta-weighted exposure. The next day's P&L on what is carried: x . r + future x market return.""" cfg = cfg or CRBConfig() net = -sim[" flows " ].sum(axis=0 ) T, N = net.shape x, h = np.zeros(N), 0.0 stock_cost, fut_cost, pnl = np.zeros(T), np.zeros(T), np.zeros(T) for t in range (T): pnl[t] = x @ sim[" ret " ][t] + h * sim[" market " ][t] x = x + net[t] trade = -rate * x stock_cost[t] = hedge_cost(trade, sim, cfg) x = x + trade if futures: target = -(sim[" beta " ] @ x) fut_cost[t] = cfg.futures_cost * abs (target - h) h = target return {" stock_cost " : stock_cost, " futures_cost " : fut_cost, " pnl " : pnl}` **Listing 25.1.** Hedging cost, desk by desk, pooled, and the patient central book. code/firm/crbook/firm_crbook.py
2. **The frontier and the limit**. `@functools .cache def frontier (futures: bool = True ) -> dict : """For each rate: mean daily cost (stocks and futures, $) and the standard deviation of the daily P&L carried.""" cfg, sim = market() out = {} for r in RATES: c = central(sim, cfg, r, futures) out[r] = {" cost " : float ((c[" stock_cost " ] + c[" futures_cost " ]).mean()), " sd " : float (c[" pnl " ][1 :].std()), " futures " : float (c[" futures_cost " ].mean())} return out def pick (var_limit: float = 1e6 ) -> dict : """The cheapest rate whose one-day 99% VaR (2.326 sd) fits the limit, with futures.""" f = frontier(True ) ok = [r for r in RATES if Z99 * f[r][" sd " ] <= var_limit] r = min (ok, key=lambda k: f[k][" cost " ]) return {" rate " : r, " cost " : f[r][" cost " ], " sd " : f[r][" sd " ], " var " : Z99 * f[r][" sd " ]}` **Listing 25.2.** Cost and risk by rate; the cheapest rate within a value-at-risk limit. code/strategies-2/25-the-central-risk-book/python/s2_crbook.py
3. **Run** `pooling()` , `frontier()` , `pick()` , `by_desks()` and `fig_crbook.py` .

**What to change next.** Make one desk’s flow a hedge of another’s (negative correlation); trade out names at rates set by their liquidity; add a transfer price and see which desks would route around the book.

## 25.7 Build: central risk book

**Purpose.** Desks’ flows, pooling, internal crossing, a futures overlay and patient hedging, costed with Book 7’s model.

**Interface.** `CRBConfig(…)`, `simulate_desks(cfg)`, `hedge_cost(trade, sim, cfg)`, `desk_by_desk`, `pooled`, `central(sim, cfg, rate, futures)`.

**Rules.** Desks’ hedges executed as if alone; the central book trades a fixed share of inventory a day; futures against beta-weighted inventory.

**Acceptance tests.** `code/firm/crbook/tests/`: offsetting desks cost nothing pooled; trading everything at once is pooling and carries nothing; futures remove market risk; the cost by hand.

**Stretch.** Name-by-name rates; transfer pricing; stressed flows.

Sources and further reading

- N. Garleanu and L. H. Pedersen, “Dynamic trading with predictable returns and transaction costs”, *Journal of Finance* 68(6), 2013.
- R. Almgren, C. Thum, E. Hauptmann and H. Li, “Direct estimation of equity market impact”, *Risk* , 2005.
- M. Butz and R. Oomen, “Internalisation by electronic FX spot dealers”, *Quantitative Finance* 19(1), 2019.

## 25.8 Exercises

**Exercise 25.1 ★.**

Two desks must buy $3 million and sell $2 million of the same stock. How much crosses internally, and what share of the gross?

**Solution of Exercise 25.1.**

$2 million crosses; the net is a $1 million purchase. Of the $5 million gross, 80% nets away.

**Exercise 25.2 ★.**

The carried P&L has a standard deviation of $369 000 a day. What is the one-day 99% value at risk under normality?

**Solution of Exercise 25.2.**

$2.326 \times 369\,000 \approx \$858\,000$; with the unrounded standard deviation, $859 000.

**Exercise 25.3 ★.**

With a half-spread of 3 basis points, impact $0.7\sigma\sqrt{q/V}$, $\sigma = 2\%$ and $V = \$50$ million, what does hedging $1 million cost?

**Solution of Exercise 25.3.**

$\$1\text{m} \times (0.0003 + 0.7 \times 0.02 \times \sqrt{1/50}) = \$1\text{m} \times (0.0003 + 0.00198) \approx \$2\,280$.

**Exercise 25.4 ★★.**

Why does pooling save less than the share of flow that crosses?

**Solution of Exercise 25.4.**

Impact per dollar rises with the trade’s size, so small trades are cheap per dollar. Netting removes the offsetting parts of the flows, and the net that remains is traded as one larger order with more impact per dollar; the saving in cost is smaller than the share of volume crossed (19.5% against 47.0%).

**Exercise 25.5 ★★.**

Why does trading out only part of the inventory each day save so much cost?

**Solution of Exercise 25.5.**

Two reasons: later client flows offset part of what is kept, so it never needs trading; and what is traded goes in smaller daily pieces, with less impact per dollar. The price is residual risk, as Garleanu and Pedersen’s partial trading toward a target trades cost against risk.

**Exercise 25.6 ★★.**

Why does the pooling saving fall beyond six desks when flows have a common part?

**Solution of Exercise 25.6.**

The common component adds up across desks and never nets. With more desks, the independent parts net to $\sqrt D$ times one desk’s while the common part grows as $D$, so it becomes a larger share of the net, and the net trades are larger with more impact per dollar.

**Exercise 25.7 ★★★.**

*Coding.* Run `pick(5e5)`. Which rate does a $500 000 value-at-risk limit choose, and what does it cost?

**Solution of Exercise 25.7.**

35% a day: $89 300 a day, with a value at risk of $449 000. A tighter limit buys less risk at twice the cost of the $1 million limit.

**Exercise 25.8 ★★★.**

*Find the flaw.* “The central book cut hedging costs by 86%; we should trade out 5% a day and cut them by 94%.”

**Solution of Exercise 25.8.**

At 5% a day the carried P&L has a standard deviation of $684 000 and a one-day 99% value at risk of about $1.59 million, far above the $1 million limit. The cost falls to $20 300 a day, 93.9% below desk by desk, because the book carries far more risk; the saving is a price for risk, not a free improvement.

## 25.9 Problem: Hedge What Is Left

**Problem 25.1.**

Weekend problem — the central risk book

The chapter’s synthetic desks and the public record.

**Part I — Pooling.**

1. Define a [central risk book](#def-s2-the-central-risk-book-crb) and [risk pooling](#def-s2-the-central-risk-book-pooling) .
2. Describe the desks, flows, returns and costs.
3. Give the costs desk by desk and pooled, and the share crossed.
4. What choice did Butz and Oomen describe?

**Part II — Crossing.**

5. How does the saving depend on the number of desks?
6. Why does the common part matter?
7. What did Almgren and co-authors find about impact?
8. Why is the saving smaller than the share crossed?

**Part III — Optimised hedging.**

9. Define a [residual risk hedge](#def-s2-the-central-risk-book-residual) .
10. Describe the patient policy and give the frontier.
11. What does the futures overlay do?
12. Which rate does a $1 million limit choose?

**Part IV — The verdict.**

13. State the *named result* : the hedging cost saved by pooling and the residual risk accepted.
14. Which assumption flatters the desk-by-desk comparison?
15. What should the transfer price to desks do?
16. What can go wrong with a patient book in a one-way market?
17. What must governance keep apart?
18. Which strategy file depends on a risk model?
19. How does this chapter relate to chapter 24’s internalisation?
20. In one sentence: what does a [central risk book](#def-s2-the-central-risk-book-crb) sell to the bank?

**Solution of Problem 25.1.**

1. A book that takes the risk desks acquire from clients, nets it and manages the net; pooling combines positions before hedging so offsets cancel.
2. Five desks, 100 stocks, 500 days, $0.5 million flow sd per name a day with 10% common variance; a three-factor model with 1.5% idiosyncratic volatility; 3 basis points half-spread and square-root impact with coefficient 0.7.
3. $335 000 a day desk by desk, $270 000 pooled (19.5% less); 47.0% of gross flow crosses.
4. Internalising a client’s risk in anticipation of offsetting flow, or externalising it by hedging at once.
5. With independent flows the saving rises to 48.0% with ten desks; with a common part it peaks at 19.7% with six and falls to 17.1% with ten.
6. It does not net, and grows faster than the netted part.
7. Temporary impact follows a 3/5 power of the trade rate rather than a square root; either way impact grows faster than size.
8. Impact per dollar is higher on the larger net trade than on the small offsetting pieces.
9. Hedging common factors at once with liquid instruments and leaving the rest to be traded out or offset.
10. Trade out a fixed share of inventory each day with futures on the beta-weighted rest: from $269 700 and no risk at 100% to $20 300 and $684 000 of daily P&L sd at 5%.
11. It removes about a fifth of the carried risk for about $500 a day.
12. 15%: $45 300 a day and a value at risk of $859 000.
13. Pooling saves 19.5% of the hedging cost; patient hedging within a $1 million value-at-risk limit saves 86.5%, carrying a daily P&L standard deviation of $369 000.
14. That each desk’s hedge is executed as if alone in the market; in fact desks’ orders meet in the same market.
15. Charge desks for the risk they hand over and credit them for the netting they provide, so they neither dump risk nor route around the book.
16. Offsetting flows stop coming, the inventory grows, and the rate must rise when trading is dearest.
17. Clients’ information from one desk and trading by another; the book’s limits and the desks’ incentives.
18. Factor-hedged residual risk.
19. Chapter 24’s desk internalises one client stream; the central book internalises across desks.
20. Netting and patience: the cost the bank does not pay for hedging risk that offsets or can wait.

## 25.10 Interview questions

**Interview question 25.1 ★ trader.**

What is a [central risk book](#def-s2-the-central-risk-book-crb), and why would a bank run one?

**Solution of Interview question 25.1.**

A book that collects client risk from several desks, nets it and hedges only the remainder, factor risks first and the rest patiently. It saves the spreads and impact of hedging offsetting risk and gives the bank one view of its exposures.

**Interview question 25.2 ★★ researcher.**

How would you choose how fast to trade out a pooled inventory?

**Solution of Interview question 25.2.**

Trace the cost-risk frontier on the book’s actual flows, costs and volatilities, then pick the point that minimises cost plus a price of risk, or the cheapest point within the risk limit; revisit when flows or volatility change.

**Interview question 25.3 ★★ trader.**

Two desks send you opposite risk in the same stock at the same time. How do you price the cross to each?

**Solution of Interview question 25.3.**

At a mid price at the time of the cross, with each desk charged the same, and a transfer charge reflecting the cost it would have paid externally less a share of the saving; never at a price that favours one desk’s clients over the other’s.

**Interview question 25.4 ★★ risk.**

What limits would you put on a [central risk book](#def-s2-the-central-risk-book-crb)?

**Solution of Interview question 25.4.**

Value at risk and stress loss; factor exposures (market, sector, style); concentration by name against its liquidity; time to liquidate; limits on inventory age; and escalation when offsetting flow dries up.

**Interview question 25.5 ★★ developer.**

Design the firm-wide position feed a [central risk book](#def-s2-the-central-risk-book-crb) needs.

**Solution of Interview question 25.5.**

Every desk’s positions and trades, by instrument and time, streamed with consistent reference data and timestamps; netting by underlying; factor exposures computed centrally; reconciliation with desks’ books; and an audit trail of crosses.

**Interview question 25.6 ★★★ researcher.**

$D$ desks have independent flows of standard deviation $s$ in a name. Show that pooling cuts the expected linear cost by a factor $\sqrt D$ and the expected impact cost, proportional to $|q|^{3/2}$, by a factor $D^{1/4}$.

**Solution of Interview question 25.6.**

Desk by desk the expected linear cost is $D c\,E|q| = D c s\sqrt{2/\pi}$; pooled, the net has standard deviation $\sqrt D s$, so $c\sqrt D s\sqrt{2/\pi}$: a factor $\sqrt D$ less. The impact cost is $k E|q|^{3/2} \propto s^{3/2}$ per desk, $D$ of them; pooled $\propto (\sqrt D s)^{3/2} = D^{3/4}s^{3/2}$: a factor $D/D^{3/4} = D^{1/4}$ less.
