Setup
When Analytic Greeks Are Not Available
The Black-Scholes Greeks derived in the previous module are available in closed form because the pricing function is differentiable and explicit. In practice, most pricing functions used on a derivatives desk are not:
- Exotic options (barriers, Asians, lookbacks) have prices computed by Monte Carlo or finite difference solvers — no analytic formula.
- Stochastic vol models (Heston, SABR) have semi-analytic prices but whose derivatives with respect to model parameters involve numerical quadrature.
- Calibrated models where the volatility surface itself depends on the market inputs in a non-trivial way.
For all such cases, bump-reval (finite difference approximation of derivatives) is the standard method on trading desks. It is computationally expensive but model-agnostic: the same procedure works for any pricing function.
Notation
Let be a pricing function. We want to estimate the partial derivative at a base point . The bump-reval approach: evaluate at a perturbed point (where is the -th unit vector and is the bump size), and form a finite difference quotient.
Forward Differences
Error analysis. By Taylor expansion:
Subtracting and dividing by :
The truncation error is : first-order accurate. The error decreases linearly as the bump shrinks.
Cost: 1 repricing per Greek (plus the base price). For inputs: total repricings.
Backward Differences
Truncation error is also , with the same leading coefficient but opposite sign:
Forward and backward differences have the same accuracy. Backward difference is useful when a positive bump is not feasible (e.g., interest rates near zero cannot be bumped upward without changing the sign regime).
Central Differences
Error analysis. Subtract the two Taylor expansions:
Subtracting: . Dividing by :
The truncation error is : second-order accurate. Central differences are far more accurate than one-sided differences at the same bump size.
Cost: 2 repricings per Greek (up and down bump). No base-price reuse possible. For inputs: repricings.
Second-Order Derivative (for Gamma)
Error: Adding the two Taylor expansions: . Subtracting and dividing by : truncation error .
Gamma via bump-reval uses this formula with , bump (a relative bump of typically ):
Cost: 2 additional repricings (the up and down bumps also give delta via central difference, so gamma is free once delta is computed by central differences).
Step Size Selection: The Accuracy-Stability Tradeoff
There are two sources of error in numerical differentiation:
- Truncation error: from the Taylor approximation. For central differences: (relative).
- Round-off error: from finite-precision arithmetic. The computed value of carries a rounding error of order , where (double precision). The finite difference quotient amplifies this by : round-off error .
Optimal : minimise total error . Setting the derivative to zero:
For forward differences, the optimal .
In practice: relative bumps (e.g., for vega, for delta) are used rather than absolute bumps, to ensure scale-invariance.
Complex-Step Differentiation
Principle
The complex-step method achieves near-machine-precision accuracy for derivatives without the cancellation error that limits finite differences.
For an analytic function extended to , evaluate at the complex point for real :
Taking the imaginary part:
Therefore:
Critical advantage. No subtraction of nearly equal numbers occurs (the real and imaginary parts are computed separately). The round-off error is (same order as the function value), not amplified by . We can safely take or even , achieving accuracy limited only by the truncation error — effectively machine precision.
Requirements
The pricing function must be analytically continuable to complex inputs. Most standard pricing functions (Black-Scholes, characteristic function models, deterministic pricing routines) are analytic. Monte Carlo estimators with indicator functions (e.g., ) are not analytic — the indicator is a step function and does not extend to . For such cases, a smooth approximation to the indicator is needed, or the complex-step method applies only to smooth ingredients (e.g., the Black-Scholes component in a hybrid model).
Comparison Table
| Method | Accuracy | Cost per Greek | Round-off safe? |
|---|---|---|---|
| Forward difference | 1 reprice | No (subtractive cancellation) | |
| Central difference | 2 repricings | No | |
| Complex step | — effectively exact | 1 complex reprice | Yes (no cancellation) |
Structured Bump Schedule for Ladder Construction
What a Bump Schedule Is
A bump schedule is a systematic list of: what market inputs to bump, by how much, and in what direction (up, down, both). For a derivatives book with exposures to many risk factors, the bump schedule must be comprehensive and internally consistent.
Standard bump sizes (conventions vary by desk; these are indicative):
| Risk factor | Bump type | Typical size |
|---|---|---|
| Spot (delta) | Relative, central | of spot |
| Spot (gamma) | Relative, central | of spot |
| Implied vol (vega) | Absolute, parallel | vol point (0.01 in decimal) |
| Interest rate (rho) | Absolute | basis point (0.0001) |
| Time (theta) | Forward | calendar day |
| Dividend yield | Absolute | basis point |
Vega Ladder Construction
A vega ladder is the vega sensitivity to each pillar of the implied vol surface. For a surface parametrised by strikes and maturities :
Computed by bumping by at each pillar and re-pricing. The vega ladder has entries — for a typical surface with 5 tenors and 7 strikes, that is 35 repricings per position per time step. For a book of 5000 positions, this is 175,000 repricings per risk run — a significant computational load.
Vega bucketing: sum the vega ladder entries by maturity to get the total vega per tenor (term structure of vega). This is the most commonly reported risk metric for options books.
Delta Ladder for Fixed Income
For a fixed-income book, delta is replaced by DV01 (dollar value of a basis point):
A DV01 ladder shows the sensitivity to a 1bp parallel shift at each tenor point of the yield curve. Computed by bumping each tenor rate by 1bp and repricing (30–50 repricings per position for a detailed curve).
Limitations
Bump size sensitivity. For options near a barrier or near expiry, the pricing function has large second and third derivatives; the optimal bump size is very small. Too large a bump introduces truncation error; too small amplifies round-off. For these cases, analytic Greeks (when available) or complex-step are strongly preferred.
Computational cost. A full bump-reval run for a large options book can take minutes to hours, depending on the model. Techniques to reduce cost: (1) analytic Greeks where available, (2) adjoint algorithmic differentiation (AAD), which computes all partial derivatives in a single backward sweep at cost times the forward model evaluation (rather than for bump-reval).
Adjoint Differentiation (AAD). For models where the pricing function can be automatically differentiated in reverse mode, AAD computes the full gradient in roughly – the cost of a single function evaluation, regardless of the number of parameters. This is the industry-standard approach for high-dimensional Greeks in Monte Carlo and is implemented in major risk engines (Murex, Calypso, and in-house systems at major banks).
Consistency of bump and model. When bumping the implied vol surface, the bump must be consistent with the interpolation scheme: bumping a single pillar may produce an arbitrage-violating surface (butterfly positivity violated) if not done carefully. Structured bump schedules must include an arbitrage check after each pillar bump.
Interview Angle
L1. What is the truncation error of central differences? Why is it preferred over forward differences for delta computation?
Central difference error is vs. for forward differences — one order better. For the same bump size , central difference is more accurate at typical bump sizes. The extra cost is one additional repricing (up and down instead of just up), which is acceptable. Central differences also give an exact second-order derivative (gamma) from the same two repricings.
L2. Derive the optimal bump size for central differences, balancing truncation and round-off error. Explain why the complex-step method avoids this tradeoff.
Truncation error . Round-off error . Total . Setting : for typical functions.
Complex-step: involves no subtraction of similar quantities — the real and imaginary parts are stored in separate floating-point registers. Round-off error is on the imaginary part directly. Taking gives truncation error — the derivative is computed to full machine precision.
L3. Explain the rationale for Adjoint Algorithmic Differentiation (AAD) and its cost advantage over bump-reval. For a Black-Scholes Monte Carlo pricer with 500 market inputs (a full vol surface), compare the cost of bump-reval, complex-step bump-reval, and AAD.
Bump-reval: 500 up-bumps + 500 down-bumps + 1 base = 1001 full Monte Carlo runs. If each run costs , total cost: .
Complex-step bump-reval: 500 complex repricings (each with complex arithmetic, roughly ) = . Same order but with better accuracy.
AAD: one forward pass (cost ) to evaluate the price, one backward pass (cost ) to propagate adjoints (reverse-mode automatic differentiation) — gives all 500 partial derivatives simultaneously. Total: regardless of the number of inputs. Speedup over bump-reval: for 500 inputs. For a book with 100,000 positions and end-of-day risk, the difference between hours and minutes.