Most banks run risk overnight. A batch job calibrates the model to today’s market, prices the book, bumps each risk factor, reprices, and writes the results to a database. Traders see yesterday’s Greeks when they arrive in the morning.
Live Risk — real-time Greeks that update as the market moves — has been the holy grail for a decade. The problem isn’t speed (modern hardware is fast enough). The problem is calibration. When a market input changes, the calibrated model parameters change too. Propagating that change through the calibration requires solving an inverse problem, which traditionally means re-running the calibration solver.
The Implicit Function Theorem approach
The Automatic Implicit Function Theorem (AIFT) eliminates the re-calibration bottleneck. The insight: if your model is calibrated (i.e., model prices match market quotes), the IFT gives you an analytical expression for how calibrated parameters change when market inputs change. No iterative solver needed.
The AIFT implementation automates this:
- Start of day: Record the calibration + pricing on the tape. Run the solver once. Cache the Jacobian.
- Intraday: When market data moves, use the cached Jacobian to compute the parameter update analytically. Reprice with the updated parameters. One forward pass.
The result: calibration that took seconds now takes microseconds. The pricing pass is already fast (it’s a compiled kernel). Together, you get live risk.
Measured: QuantLib integration
We applied this to QuantLib’s IR swap pricing with Hull-White calibration. 1000 IR swaps, full delta and gamma risk.
| Metric | Value |
|---|---|
| Start-of-day recording | ~350 ms |
| Intraday pricing + Greeks (1000 swaps) | 20 ms |
| Calibration update | Sub-ms |
This is without modifying QuantLib’s C++ code. The “black box” approach records QuantLib’s existing calibration and pricing through operator overloading.
Why this matters
The #1 most-read article on Risk.NET for over a quarter was the AIFT paper. The reason: every bank wants live risk, and every bank has millions of lines of calibration code they can’t rewrite.
AIFT doesn’t require understanding or modifying the calibration code. It records it, differentiates through it, and uses the derivative to update parameters analytically. The transition from batch to live is a deployment change, not a rewrite.
Implemented using AADC, a commercial adjoint AD compiler (matlogica.com).
Frequently Asked Questions
What is Live Risk and why is it better than batch risk processing?
Live Risk provides real-time portfolio risk that updates with every market tick, versus overnight batch processing taking several hours. Live Risk enables faster decision-making, competitive advantage during volatile markets, and eliminates dangerous corner-cutting when computing scenario risks.
What is the Automated Implicit Function Theorem (AIFT) and why is it needed?
AIFT enables automatic differentiation of calibration routines (implicit functions solved by minimizers/solvers) without manual code refactoring. It handles model calibrations automatically, transforming calibrated parameter sensitivities into tradeable market rate sensitivities without identifying hidden variables or computing large Jacobians.
How long does it take to transition from batch to Live Risk with AIFT and AADC?
Unlike multi-year IT transformation projects, AIFT with AADC enables Live Risk transition in weeks to months. Example: QuantLib integration achieved 20ms pricing and risk for 1000 12-year IR swaps including curve fitting on single CPU, enabling practical Live Risk without major rewrite.
Does AIFT require identifying and tracking hidden variables in calibration?
No, AIFT uses checkpointing approach that doesn’t require going into solvers or identifying hidden variables. It automatically handles dependencies between calibration steps without computing large Jacobians of hidden variables, enabling integration without extensive refactoring.