Deep kernel hedging
Jean-Loup Dupret, Donatien Hainaut, Edouard Motte
cs.LG, math.FA, q-fin.CP, q-fin.RM
2026-09-28
A neural RKHS hedge with 100 frozen RFFs cuts Heston quadratic MSE ~25% vs FNNs at N=250; on S&P500 it leads quadratic MSE, not always CVaR.
In incomplete markets a claim cannot be replicated. Hedging is stochastic control: a discrete policy that minimizes a convex loss of terminal P&L. Under Heston-type stochastic volatility the real-world hedge almost never has a closed form. Deep hedging (Buehler et al., 2019) lets a neural net output trades from simulated or historical paths and skips a market model. On a few hundred paths it overfits and moves around with initialization.
Kernel hedges put the policy in an RKHS, a function space defined by a kernel with continuous point evaluation, so the objective is convex and regularized. A fixed kernel often has the wrong geometry on market features. Deep kernel learning composes a base kernel with a learned embedding, usually inside a Gaussian process that repeatedly factors large Gram matrices. Hedging datasets are typically a few hundred to a few thousand paths. That is the regime this paper targets.
The kernel is Kθ(x, x') = K(ψθ(x), ψθ(x')). ψθ is a shallow net; K is a shift-invariant base kernel, RBF in the experiments. The hedge is ξ{tk} = ϕ(X{tk}) with ϕ in the RKHS of Kθ, trained with a convex loss plus λ‖ϕ‖². Features can be (time, spot, vol) or a truncated time-augmented path-signature, a finite list of iterated integrals of the path.
For fixed θ, a generalized representer theorem gives a finite-dimensional form: the optimal ϕ is a linear combination of gain-weighted kernel sections along training paths. The Gram matrix changes with θ, costs O(N²) memory, and picks up another n² from the rebalancing dates.
Random Fourier features fix that. The base kernel is a cosine expectation over frequencies. Draw D frequencies and phases once, freeze them, and write the kernel as an inner product of explicit maps yθ(x). The net still trains, so the kernel moves through the embedding. The hedge is ϕ(x) = βᵀ yθ(x), with β and θ updated by SGD. Mini-batch cost is O(B n D). As D → ∞, both the optimal value and the hedge converge to the exact deep-kernel problem.
The net is one hidden layer of 16 tanh units, 16-d output, ℓ2-normalized so the RBF bandwidth γ folds into ψθ and frequencies stay N(0, I). D = 100, batch 32, 100 epochs, AdamW, λ = 10^{-6}. The deep-hedging baseline is a two-layer 16-unit FNN (16d+305 weights vs 16d+389). A classical kernel baseline drops the net and learns only the RBF scale. Two losses: quadratic (v0 learned on synthetic data) and 5% CVaR, mean loss beyond a quantile, written in Rockafellar-Uryasev form, with v0 held fixed because the objective is otherwise unbounded below. Replacing cosine RFFs with ReLU or tanh random features barely changes results when the embedding is present. Removing the embedding does. The latent geometry is doing the work.
Synthetic paths are Heston with the Mikkilä and Kanniainen (2023) Table 3 parameters: S0=1, r=0.02, μ=0.1, ν0=0.03, ν̄=0.04, κ=3.41, σν=0.62, ρ=-0.79. ATM European calls, maturities 1/12, 1/4, 1/2 year, N in {250, 500, 1000, 2500}, 25,000 held-out paths, ten seeds. Out-of-sample quadratic MSE:
| Maturity | Method | N=250 | N=1000 |
| T=1/4 | BS delta | 1.07e-4 | 1.07e-4 |
| T=1/4 | Deep hedging | 1.06e-4 | 7.71e-5 |
| T=1/4 | Classical kernel | 1.56e-4 | 1.33e-4 |
| T=1/4 | Deep kernel | 7.91e-5 | 6.88e-5 |
At T=1/4 and N=250, deep kernel MSE is about 25% below the FNN and below a practitioner Black-Scholes delta that plugs in current stochastic vol. The classical kernel loses to Black-Scholes in most cells. At T=1/2, N=250: 1.62e-4 vs FNN 2.04e-4 vs BS 2.40e-4. At N=2500 the gap shrinks; deep kernel still leads (1.31e-4 vs 1.43e-4 at T=1/2). Seed standard deviations are smaller too. MAE, 95% quantile and CVaR0.95 at N=1000 follow the same ranking.
CVaR training at N=1000, with v0 pinned to the BS price at σ=√ν0, goes the same way. T=1/2 CVaR0.95: 3.47e-2 (deep kernel), 3.60e-2 (FNN), 3.98e-2 (BS), 4.65e-2 (classical kernel). Absolute CVaR cannot be compared across the two objectives because v0 is treated differently.
Real data: S&P500 from 2010-01-01 to 2022-12-31 for training, 2023-01-01 to 2026-05-31 for testing, sliding windows. Features are the order-3 time-augmented signature of (S/S0, realized vol). Initial prices are pathwise BS values; errors are scaled by S0. Quadratic 40-day MSE: BS 9.75e-5, classical kernel 7.29e-5, FNN 4.35e-5, deep kernel 3.55e-5. Ten-day: 2.06e-5 vs FNN 2.24e-5. Twenty-day: 3.13e-5 vs 3.46e-5. CVaR training is mixed. Ten-day CVaR0.95: 9.19e-3 vs FNN 1.00e-2. Twenty-day: 1.08e-2 vs 1.04e-2. Forty-day: 1.15e-2 vs 1.10e-2. The test set is about 800 paths, so the 5% tail has roughly 40 points.
Signatures add nothing in the Markovian Heston setting. Vanilla (t, S, ν) features on real data are weak; the main text therefore uses signatures.
This is an incremental architecture change aimed at a real constraint: independent hedging paths are scarce. Similar parameter count, RKHS-norm regularizer, better low-N MSE and lower seed variance. RFF drops per-step cost from O(N² n²) to O(B n D). Use it for a single underlying, no transaction costs, discrete rebalancing. Multi-asset books, market impact, and a learned pricing map as a function of the initial state are not in this paper.
The authors flag multi-asset trading, transaction costs and market impact, and jointly learning the initial price as a function of the starting market state. On real data v0 is pinned to BS, not learned.
The FNN baseline is two layers of 16 units. A deeper net or an RNN might close the low-N gap; that comparison is absent. Real paths overlap, so the effective sample is smaller than 3262−Tdays. Out-of-sample CVaR uses about 40 tail points; at 20- and 40-day tenors the FNN is slightly better. ℓ2 normalization can destroy injectivity of ψθ and, with it, a universality argument for the deep kernel. No fees, no bid-ask, one risky asset. Relative ranking may move if the dynamics or the nets change, which the paper states.