Unpublished Articles

The following are a series of articles written by me with the help of Claude, which dig into some interesting topics in the fields of Exotic Option Pricing, Algorithmic Trading and Convex Optimisation. They are written in a more pedagogical and less formal way than many articles or books. The key focus here is on intuition and understanding the application of the models.

Exotic option pricing

Stochastic Calculus — the calculus of random paths, and why finance is built on it

Ordinary calculus is the mathematics of smooth curves: things with a slope, a tangent, a well-behaved rate of change. The price of a stock, the level of an interest rate, the value of a hedge—none of these are smooth. They jitter endlessly, and the jitter does not vanish when you look closely; it is the whole point. Stochastic calculus is the calculus built for such objects, and it rests on one surprising fact: random noise accumulated over time has a size that ordinary calculus throws away. Written compactly that fact is (\dd W)^2=\dd t, and almost everything in this note is that one idea wearing a different hat. We start from Brownian motion and build the two tools a working quant uses every day—the Itô integral and Itô’s lemma—then solve the two canonical models, geometric Brownian motion and the Ornstein–Uhlenbeck process. From there we assemble the engine that turns a model into a price—martingales, Girsanov’s change of measure, the Feynman–Kac bridge between expectations and partial differential equations, and risk-neutral pricing—and put it to work pricing options in closed form: Black–Scholes, the exchange option, and the early-exercise (American) option. We then take the Markovian property seriously—the difference between a model whose future needs only its present (and so collapses to a fast, low-dimensional PDE or tree) and one that drags its whole history behind it (path dependence, rough volatility). Finally we put it all to work on the term structure of interest rates, building the Heath–Jarrow–Morton framework from scratch, deriving its no-arbitrage drift, and showing exactly when it collapses back to a one-factor Hull–White model. The aim throughout is intuition first, a figure for every idea, and just enough mathematics to make the intuition rigorous—and to leave you able to read the other notes in this series unaided.

Download PDF

The Dupire Local Volatility Model — the one model that fits every vanilla, and the one promise it breaks

Black–Scholes assigns one volatility to an asset; the option market quotes a different implied volatility for every strike and every maturity. That gap—the volatility smile—is not noise, and no single number can close it. Bruno Dupire’s 1994 insight was that we do not need a single number: if we let instantaneous volatility be a deterministic function \sloc(t,S) of time and spot, then there is exactly one such function that reprices the entire surface of traded vanilla options, and it can be read straight off market prices by a single formula. This note builds that result from the ground up. We start from the smile itself, recover the risk-neutral density from option prices (Breeden–Litzenberger), derive Dupire’s forward equation and the formula it yields, and then re-read that formula two ways—in terms of quoted implied volatilities, and as a conditional average of the “true” instantaneous volatility. We then show how the formula must be amended once interest rates are stochastic—where a correlation-dependent correction term appears and the model-free “read it off the surface” property is partly lost—and how the model is used to hedge: the behaviour of its Greeks, the backbone that biases its delta, and the vega matrix that turns an exotic’s volatility risk into a basket of vanillas. We close with what local volatility is excellent at (a perfect, unique, arbitrage-free fit to today’s surface) and the one thing it gets wrong—the dynamics of the future smile—which is exactly where stochastic volatility takes over. Appendices collect the supporting detail kept out of the main line of argument: the Black–Scholes formula and backward PDE, the Fokker–Planck equation and the full forward-equation derivation, the implied-variance form with its short-maturity “rule of two,” the SVI/SSVI surface parametrisation used to generate every figure, the change the formula needs once interest rates are stochastic, and the risk decompositions behind the Greeks. The local-volatility model is extracted from a synthetic market surface and then Monte-Carlo simulated to confirm it reprices that surface.

Download PDF

Hull–White Short-Rate Models

Modelling interest rates is harder than modelling a stock, and the difference is structural, not merely technical. A stock is one number; a rate market is an entire curve—a discount factor for every maturity—which the model must move coherently, which performs its own discounting, and which it must match exactly today or admit arbitrage. This note builds the Hull–White model from that starting point. It opens by starting from the familiar equity-derivatives picture—a single underlying—and stepping to a whole term structure, and the requirements that leap imposes—then meets them the way a short-rate model does: collapse the curve onto one mean-reverting rate, and fit today’s prices with a free, time-dependent drift. Part I develops the one-factor model—the Gaussian short rate, the drift that fits the curve, the affine bond-price formula, the vanilla options it prices in closed form (with a worked caplet), how its two parameters are calibrated, the smile it cannot make, and the early-exercise exotics it values on a lattice—before exposing the one thing a single factor cannot do: move rates at different maturities by anything other than lockstep. Part II adds a second factor (the G2++ model) so the curve can twist as well as shift, decorrelating rates and fitting a humped volatility term structure a single factor misses. Throughout, the spine is a two-layer split—a drift that nails today’s curve exactly, and a few volatility parameters left for the dynamics—and a diagram for every idea.

Download PDF

Local Stochastic Volatility

A local-volatility model fits today’s vanilla surface exactly but makes a specific, empirically wrong prediction about the future smile: it flattens. This note traces that defect from the start—where the skew comes from, how diffusion averages it away over a forward-start horizon, and why a stochastic-volatility process does not suffer the same fate—and then builds the cure. Local stochastic volatility (LSV) marries the two: a stochastic variance for realistic dynamics, scaled by a deterministic leverage function that restores the exact vanilla fit. We motivate the leverage function through Gyöngy’s mimicking theorem, show why calibrating it is a fixed-point problem solved by bootstrapping forward in time, and develop the two work-horse solvers—the forward-PDE (Fokker–Planck) method and the particle (Monte-Carlo) method—in detail, with pseudocode for each. Appendices cover the supporting numerics: explicit versus implicit finite differences and the Craig–Sneyd ADI scheme, Euler–Maruyama time stepping, and kernel-weighted regression.

Download PDF

The Longstaff–Schwartz Method — American Monte Carlo

A European option is easy to price by simulation: scatter a few hundred thousand random futures, average the discounted payoff, done. An American option—one its owner may cash in at any time, not only at the end—breaks that recipe, and the reason is structural, not technical. Its value is the solution of an optimal-stopping problem: at every moment the holder must weigh the payoff from exercising now against the value of holding on, the continuation value, which is an expectation over all the futures that have not happened yet. Trees and finite-difference grids compute that expectation by folding backward through time, but they collapse once there is more than a handful of underlyings. Monte Carlo scales to high dimension effortlessly—but it runs forward, and a single simulated path never sees the conditional expectation it would need to make the exercise decision. The Longstaff–Schwartz method is the bridge between the two. Its one idea is disarmingly simple: at each exercise date the simulated paths already form a cloud of points—where the underlying is now, and what each path went on to pay—and a least-squares regression through that cloud is the continuation value. Estimate it, compare it to the immediate payoff, and you have an exercise rule; replay the rule and you have a price. This note builds the method from the optimal-stopping problem up to a working algorithm, prices a small example entirely by hand, and is candid about where the bias hides and what the method cannot do. Throughout, the spine is one sentence—Monte Carlo runs forward, early exercise reasons backward, regression is the bridge—and a diagram for every idea.

Download PDF

The Quadratic Gaussian Model — the smile a short rate can make

The one-factor Hull–White model is a beautiful machine, and it has two holes in it. Because its short rate is Gaussian, that rate can wander below zero with real probability; and because it is Gaussian, the implied-volatility smile it makes is flat—a fixed shape, with no parameter left to bend it across strike. Both limitations have the same root: a Gaussian rate. This note develops a model that keeps almost everything good about Hull–White while fixing both, through a single change of variable: let the short rate be a quadratic function of a Gaussian factor, r_t=x_t^2+\beta x_t+\phi(t). Squaring a Gaussian gives a rate that cannot fall below a hard, tunable floor, and whose own volatility grows with its level—which is exactly a volatility skew. Remarkably, the tractability survives: bond prices are no longer exponential-affine but exponential-quadratic, with coefficients that solve a Riccati equation, and vanilla options reduce to one-dimensional Gaussian integrals because the driving factor stays Gaussian under the pricing measure. We recap only what we reuse from the companion Hull–White note, then build the quadratic Gaussian model from its two-layer spine—a drift that fits today’s curve exactly, and a few volatility parameters for the dynamics—show the floor and the skew it produces, price caps and swaptions, calibrate it, and work through the products a single Gaussian factor simply cannot price: out-of-the-money caps and floors, the swaption skew, convexity-sensitive CMS, and floored or capital-guaranteed notes.

Download PDF

A Practical Introduction to the LIBOR Transition

For half a century the world’s interest-rate contracts were written on LIBOR: a term, forward-looking, credit-bearing rate you knew at the start of every period. The benchmarks that replaced it—SOFR, SONIA, €STR and their peers—are the opposite in every one of those respects: overnight, backward-looking, nearly risk-free rates known only at the end of a period. This note explains, for a reader who already knows risk-neutral pricing and the basics of exotic derivatives, what that inversion forces on every curve and every product. The organising idea is that the whole transition is, at heart, a change of projection index. We build the multi-curve picture that makes that statement precise—one discount curve, one projection curve per index—and show that swapping LIBOR for a compounded overnight rate is exactly a change of the projection curve, while the discount side had already moved years earlier, when collateral agreements pushed discounting onto the OIS curve. Along the way we meet the one genuinely new piece of mathematics the exotics desk has to absorb: a backward-looking compounded rate has a clean forward with no convexity adjustment when it is paid in the natural place, because compounding the overnight rate simply rebuilds the bank account—so the interesting optionality lives not in the vanilla coupon but in timing, in-advance conventions, and options observed during the accrual period. We close with the machinery that makes the switch fair and legally clean: the ISDA fixed spread adjustment, the fallback protocol, and the discount-curve “big bang”.

Download PDF

Algorithmic trading

Time-Series Analysis for Pairs Trading and Cointegration — trading the gap between two prices, not the direction of either

Most ways of making money in markets are a bet on direction: buy something you think will go up. This note is about a different kind of bet—one that is deliberately indifferent to whether the market rises or falls, and pays off instead when the gap between two related prices closes. The catch is that “related” has to mean something much stronger than “they look like they move together”. Two prices can rise and fall in near-lockstep for years and still drift apart forever; betting on their gap is then a slow way to lose money. The property that actually licenses the trade is cointegration: although each price wanders unpredictably on its own, some fixed combination of the two is tethered to a constant level and keeps returning to it. This note builds the idea from the ground up. We start with why a single price is essentially untradeable on its own (it is a random walk), explain the statistical test that tells a genuine tether from a mirage, construct the trade from the tethered combination, and then scale the whole apparatus up from a pair to a whole basket of assets using vector autoregressions, the Johansen procedure and the vector error-correction model. Throughout, we keep an eye on the real failure mode—tethers that hold in the data you fit and snap in the data you trade.

Download PDF

The Kalman Filter and Hidden Markov Models — tracking what you cannot see, in markets and elsewhere

A price on a screen is not the thing you want to trade on. It is a noisy, fleeting shadow of something you cannot see directly: a fair value, a hedge ratio, a market mood. This note is about a single, powerful idea for recovering that hidden thing as it changes—the state-space model, and the filtering recursions that estimate its hidden state one observation at a time. Two filters dominate practice and differ only in the shape they assume for the hidden state. The Kalman filter takes the state to be a continuous number (or a short vector of numbers) that drifts smoothly—a fair value, a trend, a regression coefficient—and, under linear-Gaussian assumptions, tracks it with nothing more than a running mean and variance updated by a beautifully simple rule. The hidden Markov model (HMM) takes the state to be a discrete regime—calm versus turbulent, trending versus ranging—that switches at random times, and infers from the data which regime you are probably in right now. We build both from the same Bayesian skeleton, derive their update rules from first principles (with the linear algebra quarantined to appendices), and show each at work on a canonical trading problem: the Kalman filter on a drifting pairs-trading hedge ratio, the HMM on volatility regimes. The pairs-trading example is a deliberate sequel: the companion note A Practical Introduction to Time-Series Analysis for Pairs Trading and Cointegration  builds the trade with a hedge ratio fitted once and held fixed; here we let that ratio become a hidden state that drifts, and track it in real time. We close with an candid account of where these models help, where they mislead, and how to tell the difference.

Download PDF

Convex optimisation

Semidefinite Programming — convex optimisation, from numbers to matrices

Most accounts of optimisation draw the important line in the wrong place. The line that matters is not between linear and nonlinear problems but between convex and nonconvex ones: convexity is what lets you trust an answer and, remarkably, lets the problem hand you a short proof that the answer is optimal. This note develops that idea and follows it to its richest practical conclusion, the semidefinite program (SDP). We climb a single ladder—optimise over numbers, then over vectors confined to a cone, then over matrices required to be positive semidefinite—and show that all three rungs are the same conic template wearing progressively roomier clothes. The positive semidefinite cone is the hero of the story: the most expressive convex set we can still optimise over efficiently. We explain what the constraint X \psd really means (it has four equivalent disguises), how a surprising range of problems collapses into an SDP through the Schur complement, why every SDP comes paired with a dual that certifies optimality, and how interior-point methods actually solve one using the -\log\det barrier. We close with three worked examples—the nearest correlation matrix, Lyapunov stability, and the Goemans–Williamson relaxation of Max-Cut—and a forty-line solver you can read in one sitting.

Download PDF