Notes on Fixed Income Derivative Pricing
A graduate-level account of the theory, running from the construction of the Itô integral to how a swaption book is quoted, hedged and risk-managed. Each chapter reads in the browser, or downloads as a PDF.
Read the introduction for what these notes are trying to be, and how they are verified.
Every quantitative claim in the prose — every rate, ratio and comparison — is computed by the Rust crate published alongside the notes and pinned by a test, cross-checked against an independent route that shares none of its algebra. All chapters are also available as a single PDF, with a table of contents and cross references intact.
First published 25 August 2026 · last revised 4 October 2026. Revised often: chapters are added, split and reordered, so a chapter number is not a stable address. They are a work in progress rather than a finished text, and this page is always the latest version.
These notes are a personal project, not affiliated with, endorsed by, or the responsibility of any employer, past or present. They have also been extended and revised with AI assistance: several chapters, the figures, and the accompanying code were written that way. Every figure is drawn by published code with tests beside it — the numbers can be checked rather than taken on trust. Errors remain mine, and I would be glad to hear about any you find.
Stochastic Calculus
- 1Brownian MotionWe build the objects the rest of the book computes with. Filtrations and martingales first, then the Itô integral — which is defined by a limit that is not obviously there, so we show why it exists rather than assuming it, and find that the Itô isometry is what supplies the limit rather than merely describing it. Along the way the Stratonovich integral appears as the alternative that obeys the ordinary chain rule and is not adapted, which is the trade between geometry and predictability. The chapter ends with Itô’s lemma and the diffusions it applies to.PDF
- 2Price Process CharacterizationWe ask which stochastic processes are available to model a price, and find the answer far more restrictive than it looks. Brownian motion turns out to be the only continuous noise there is, which forces the diffusion term of the previous chapter’s equation rather than merely permitting it — the licence to write the equation at all comes from chapter 4, and the two halves are worth keeping distinct. Dropping continuity admits jumps, and we work the Poisson process through in enough detail to see how a default is modelled and why that case is so much more tractable than the general one.PDF
- 3The GeneratorOne operator runs through most of what follows, and it repays meeting on its own before it appears in disguise four times. For a diffusion it is ℒf=μf′+1/2σ^2f′′, and Itô’s lemma says precisely that ℒ is the drift of f(X). Everything else in this chapter is a consequence: pricing runs ℒ backwards on functions of the state, densities run its adjoint forwards, and the two are related by integration by parts and nothing more. Later chapters derive both equations separately and at length. They are the same object, and knowing that in advance turns four derivations into one.PDF
- 4No-Arbitrage PricingWe try to explain what arbitrage is and how to price financial derivatives in order to avoid arbitrage. The argument runs from a two-state model to the fundamental theorem in general form, and then asks what the theorem needs: completeness, which is what makes a price a number rather than a range. Jumps break it, so we work out what a jump model hands over instead — a split of the risk into the part that can be hedged continuously and the part that cannot — and close by deriving, rather than assuming, why every model in these notes is a diffusion.PDF
- 5Black ScholesWe price a European option, and pay attention to which parts of the argument are doing work. The asset’s expected return disappears, for a reason the lemma below makes precise. The formula’s two terms turn out to be the same probability measured under two different numeraires, which is visible in the derivation as a completed square before chapter 6 gives it a name. We then read the equation for what it says about a hedged position — that theta and gamma are one quantity seen twice — and collect the approximations a trader carries in place of the formula.PDF
- 6NumerairesWe change the unit of account, which is the most useful single manoeuvre in derivative pricing and the least intuitive. Girsanov’s theorem says a measure change moves drifts and cannot touch volatilities, and that asymmetry is what makes the technique work: choosing a numeraire chooses which quantity is a martingale, and the right choice makes a hard expectation trivial. We derive the forward and annuity measures that chapter 7 and chapter 15 need, and find that no-arbitrage assigns one price to each source of risk — the same projection that reappears as a hedge in chapter 23.PDF
Classical Models
- 7Curve Construction and Linear ProductsWe build the interest rate curve out of the instruments quoted in the market, and price the products whose value depends on the curve alone and not on its volatility. This is the layer underneath every model in the chapters that follow: a term structure model is calibrated to a curve, and a curve is not handed down, it is constructed.PDF
- 8Term Structure ModelsWe put the interest rate curve in motion. Chapter 7 built today’s curve out of today’s quotes, which is enough to price anything linear; here we ask how the whole curve may diffuse without admitting arbitrage, and price the products whose value depends on the answer. We work in a single curve framework, so that there is one interest rate in the market and the projection and discount curves of chapter 7 coincide.PDF
- 9Implied and Local VolatilityWe take seriously the fact that the market does not price options the way chapter 5 said it should. We show that the option prices at one expiry are the same information as the probability distribution of the underlying at that expiry, that there is always a model with a single deterministic volatility function reproducing every one of those prices, and we derive the formula for it. We finish with Gyongi’s theorem, which explains both why that model exists and why it is not the end of the story.PDF
- 10Smile Dynamics and Stochastic VolatilityWe show that fitting every option in the market is not enough. We derive, rather than assert, the relationship between the slope of a smile and the way that smile moves, and find that a local volatility model gets it wrong by a factor of two in the wrong direction. We then introduce models in which volatility is genuinely random, and show that the market’s quotes do not determine which one to use.PDF
- 11Local-Stochastic VolatilityWe combine the two models of the previous chapters. Local volatility fits every European option exactly but moves the smile wrongly; stochastic volatility moves it sensibly but does not fit. We derive the condition under which a model can do both at once, find that it defines the model implicitly rather than explicitly, and describe how that circularity is broken in practice.PDF
- 12Markovian Term-Structure ModelsWe return to interest rates carrying what the volatility chapters taught us. The Heath-Jarrow-Morton framework of chapter 8 is completely general and, for that reason, computationally useless: its state is the whole curve. We derive the one restriction on the volatility that collapses it to a finite state, obtain the quasi-Gaussian models, and take a mathematical excursion into why models of this shape can be solved at all.PDF
- 13Market ModelsWe model the rates that are actually quoted rather than the instantaneous abstractions of the previous chapters, which makes the calibration instruments price exactly by construction and costs the low-dimensional state that made those chapters tractable. We build the Libor market model with its drift derived rather than quoted, do the same in swap rate coordinates, and then settle the choice between them — forwards and swap rates cannot both be lognormal, and how much that matters is a measurement rather than a preference. The answer reorders the modelling priorities: decorrelation is worth percentage points of volatility and the departure from lognormality is worth hundredths.PDF
- 14Solvable ModelsChapter 3 ended on a promise: tractability is a property of the generator. This chapter cashes it. A model is solvable when ℒ preserves a small family of functions, so that an evolution on an infinite-dimensional space collapses onto a finite one — and the three classical families, exponential-affine, exponential-quadratic and polynomial, are three answers to that one question. We separate that collapse from a different one it is often confused with, being Markov, since a model can have either without the other. We take the Riccati equation apart to see why it is solvable rather than merely quadratic. And we look at the spectral route, which is how physics solves such equations and which works here for exactly the diffusions whose eigenfunctions are the classical orthogonal polynomials. The chapter ends with the recipe read backwards: how to look for a tractable class that nobody has written down.PDF
Products and Dependence
- 15CMS and Static ReplicationA swap rate paid on its own annuity needs no model. Paid on any other date it needs a correction, and the obvious way to find that correction — calibrate a term structure model and ask it — is both more work and less honest than the alternative. This chapter derives the alternative: express the payoff as a portfolio of swaptions held to expiry, and read the answer off one expiry’s smile. No short rate model, no term structure of volatility, no dynamics. It is chapter 9’s replication argument moved into the annuity measure, and it prices constant maturity swaps and cash settled swaptions the way the market actually prices them.PDF
- 16CreditWe price the instruments that trade on default. Chapter 2 built the default time and observed that its survival probability is formally a discount factor; here we collect on that observation, deriving the credit default swap, the relation between a spread and a hazard rate — which turns out to be exact rather than approximate — and the bootstrap that turns a handful of quotes into a curve. We end with the one thing a single-name model cannot do, which is the subject of chapter 18.PDF
- 17Foreign Exchange, Quantos and InflationThree markets that look unrelated on a trading floor are one piece of mathematics. An exchange rate is the price of one numeraire in units of another; a quanto is a payoff settled in the wrong numeraire; and inflation is foreign exchange with the real economy as the foreign country, the consumer price index as the exchange rate and index-linked bonds as the foreign bonds. One adjustment, −ρσ_1σ_2, does the work in all three, and we derive it once and then spend the chapter recognising it. It ends by explaining a correction on year-on-year inflation swaps that is worth a dozen basis points at the long end and is invisible to anyone who has not made the identification.PDF
- 18DependenceChapter 16 left a gap: single-name curves pin every marginal default distribution and say nothing at all about the joint one. This chapter is about what to put in that gap. It builds the tools that describe dependence — Sklar’s theorem, rank correlation, and the tail dependence coefficient that turns out to be the number most portfolio instruments are actually a bet on — and then gives four things to use, in increasing order of how much structure they demand. The Gaussian copula appears last, as a diagnosis rather than a target: it is a coherent model whose one defining property is that it sets to zero the exact quantity a senior tranche is priced off, and we finish by measuring what that costs.PDF
Numerical and Statistical Technique
- 19Numerical MethodsAlmost every model in these notes was chosen for the same reason, and it was not realism. Affine dynamics give Riccati equations — closed-form bonds for Gaussian short rates, a characteristic function for Heston — SABR gives an expansion, and each of those buys a price in microseconds, which is what made calibration possible on the hardware the models were designed for. That constraint shaped the canon, and it has largely lifted. This chapter is about what replaced it: what a lattice and a simulation actually cost, why early exercise is where the difficulty concentrates, and what becomes available once a model is no longer required to have a formula. We measure the costs rather than assert them, including two biases in the standard method for early exercise that pull in opposite directions and are usually discussed as one.PDF
- 20Fitting and TestingThe chapters so far have built models and taken their parameters as given. This one asks where the numbers come from and how anyone would know a model is wrong. The two questions turn out to be different problems: fitting to today’s prices is an inverse problem with no statistics in it, while fitting to a history is a statistical problem whose bias can be several times the truth. Both have the same failure, which is a fit that looks excellent while determining almost nothing, and both have the same remedy, which is to measure how far the answer can move before anyone would notice. We finish with the one general test of whether a model fits at all; chapter 21 continues into the harder case where the parameter itself is never observed.PDF
- 21Estimation in PracticeChapter 20 asked whether a fit means anything. This chapter asks the same question where the parameter is never observed at all — a variance, a regime, a factor driving a curve — and where the last decade of machine learning has made the boldest claims. Filtering recovers a latent state in principle and a network makes the recovery fast; neither changes what the data can identify, and telling the two apart is most of what follows. We work through what is genuinely hidden and what only looks that way, how long a regime takes to notice before it has already changed again, whether prices and a history can be fitted at once, the two parameters estimated constantly and understood least — a volatility and a correlation — and the oldest asymmetry in the subject: why implied volatility sits above realised, and what it costs to collect the difference.PDF
Trading and Risk
- 22Relative Value and the Basis TradeWe look at what the other side of the industry does with the same machinery. A relative value desk is not trying to price a derivative correctly; it is trying to find two things that should be worth the same and are not. We derive the decomposition of a fixed income return into carry, roll-down and yield change, construct the curve trades that isolate one factor from another, and work through the cash-futures basis in enough detail to see why the trade exists and why it periodically destroys the people doing it. Who is on the other side, and why they stay there, is the question the rest of the chapter returns to: the same ideas cover selling volatility and what that position is short, the retail versions of these trades, and how much a signal about a future release is worth, which is a mutual information measured in nats and sized by a log-optimal rule.PDF
- 23Market MakingEverything so far has priced instruments. This chapter quotes them, which is a different problem: a price is a number and a quote is a pair of numbers offered to somebody who gets to choose which side to take. We derive the one genuinely solvable quoting model, and find that the substitution which solves it is the same that solved the affine models — exponential utility makes a nonlinear control problem linear. Then we look at what that model cannot see, which is that the counterparty may know something, and at how a rates desk measures whether its flow is toxic. The chapter ends where a desk’s day ends: with a position nobody chose, because hedging it completely was not worth what it cost, which is what chapter 24 has to carry.PDF
- 24Risk ManagementWe stop asking what a trade is worth and start asking how wrong we might be about it. We set out the axioms a risk measure ought to satisfy, show that the industry’s standard measure fails one of them, derive the measure that repairs it, and then work through how such numbers are actually computed, tested, and set aside as capital — including for the model risk the previous four chapters kept uncovering.PDF
- 25Solvability, Realism and What Is LeftThe preceding chapters were written to be read in order and the argument they make is distributed across them, so this one assembles it. The claim is that the models in this book were chosen under a constraint that no longer binds, that the constraint which replaced it is not compute but identification, and that what solvability still buys is not speed but a bounded error — which makes the choice between a tractable model and a realistic one a trade of realism for auditability rather than a matter of taste. Along the way the same result appears from three directions: hedging a book better does not reduce its model risk, it concentrates it.PDF
Further Reading
- 1Hull, John C. Options, Futures, and Other Derivatives, EBook, Global Edition. Pearson, 2021.
- 2Shreve, Steven E. Stochastic calculus for finance II: Continuous-time models. Vol. 11. New York: springer, 2004.
- 3Karatzas, Ioannis, & Shreve, Steven E. Brownian Motion and Stochastic Calculus. 2nd ed. Springer, 1991.
- 4Bouchaud, Jean-Philippe, & Potters, Marc. Theory of Financial Risk and Derivative Pricing: From Statistical Physics to Risk Management. 2nd ed. Cambridge University Press, 2003.
- 5Henry-Labordere, Pierre. Analysis, geometry, and modeling in finance: Advanced methods in option pricing. CRC Press, 2008.