Paper Explained
Making the Unfittable Fittable: Joslin, Singleton and Zhu
Term structure models were famously impossible to estimate reliably. JSZ found a way to rewrite them that makes estimation almost instant, and revealed something surprising about no-arbitrage along the way.
July 13, 2026
The paper
A New Perspective on Gaussian Dynamic Term Structure Models
Scott Joslin, Kenneth J. Singleton and Haoxiang Zhu · 2011
Read the original →There is a genre of finance paper that does not propose a new model at all. It takes a model everybody already agrees on, and makes it work. This is one of the great examples.
By 2011, Gaussian affine term structure models were the standard tool for decomposing yields and estimating term premia. Central banks used them. Everybody cited them. And everybody who had actually tried to estimate one knew a dirty secret: it was a nightmare.
The problem: a model nobody could reliably fit
The estimation of these models had a terrible reputation, and deservedly so.
You would write down the likelihood function, hand it to an optimiser, and watch it wander. The likelihood surface was flat in many directions and riddled with local maxima. Start the optimiser from a different point and you would land somewhere else entirely, with a different set of parameters, a different implied term premium and a different economic story. Runs took hours or days. Published papers using ostensibly the same model on the same data reported meaningfully different results, and it was often unclear whether the difference was economics or just where the optimiser happened to stop.
The root cause was over-parameterisation combined with unidentified parameters. These models are typically written in terms of unobservable latent factors, and latent factors can be rotated, rescaled and relabelled without changing a single predicted bond price. So there are whole families of parameter values that fit the data identically. An optimiser confronted with a ridge of equally good answers does not converge; it slides along the ridge.
This was not a minor inconvenience. If the model's term premium estimate depends on the optimiser's starting value, then the term premium estimate is not a fact about bonds, it is an artefact of software.
The key idea via analogy: stop using invisible coordinates
Joslin, Singleton and Zhu's fix has two parts, and both amount to choosing a better set of coordinates for the same object.
Part one: use yields as the factors. The old models were driven by latent variables, invisible, unlabelled, defined only up to an arbitrary rotation. JSZ replace them with observable portfolios of yields, in practice, the level, slope and curvature combinations that Litterman and Scheinkman showed drive bond returns. Those are things you can compute directly from the data. There is nothing to infer, nothing to rotate, nothing ambiguous.
The analogy: navigating by "three landmarks I cannot see and whose positions I must estimate simultaneously with everything else" versus navigating by latitude and longitude. Same map, but one set of coordinates is fixed and observable and the other is a source of endless confusion.
Part two, and this is the surprising theoretical result. JSZ prove that in a canonical Gaussian term structure model, the forecasts of the factors are completely unaffected by imposing the no-arbitrage restrictions.
Read that again, because it is genuinely startling. No-arbitrage is the theoretical heart of these models. It is what makes them finance rather than statistics. And JSZ show that, in this Gaussian setting, when the pricing side of the model is left unrestricted, all that expensive theoretical machinery has zero effect on how the model predicts the factors will evolve. The prediction of where yields are headed is exactly what a plain unrestricted regression on those yield portfolios would have told you.
The implication is enormous for estimation. It means the problem splits in two. The part that governs how the factors evolve through time can be estimated separately, by ordinary regression, which is instantaneous and has a unique answer. The part that governs how yields are priced from the factors has far fewer genuinely free parameters than anyone had been treating it as having, and JSZ identify exactly what they are: essentially the mean-reversion rates under the pricing measure, plus a level parameter.
What was a horrible high-dimensional search becomes a small, well-behaved one. In their words, standard maximum likelihood converges to the global optimum almost instantly. Hours become seconds, and, more importantly, every run gives the same answer.
Why it mattered
- It made these models trustworthy. Before JSZ, an estimated term premium was a number you had to take on faith about someone's optimiser. After, it is reproducible. This is the difference between a research tool and a genuinely scientific instrument, and it is why central bank yield-curve decompositions became much more credible.
- It clarified what no-arbitrage actually buys you. The result that no-arbitrage does not constrain the factor forecasts (in this setting) is a serious conceptual correction. It does not make no-arbitrage useless, it is still what ties the cross-section of yields together and lets you price things consistently, but it puts a limit on the claim that arbitrage-free structure improves prediction. It sits in interesting tension with Ang and Piazzesi's finding, and the reconciliation, roughly, is that the restrictions only help when the pricing side is also restricted, and helped mostly by disciplining a badly over-parameterised regression rather than by encoding deep truth.
- It made the factors observable and interpretable. Yields explaining yields, with no latent variables, is a huge gain in transparency. You can see what the model is doing.
- It became the standard implementation. The JSZ normalisation is now how these models are actually written down and fitted in the literature and in policy institutions. It is infrastructure.
- It is a model of how to do methodological work. No new economics. Just a careful look at what is and is not identified, and a re-parameterisation that removes the redundancy. Enormous practical payoff.
The honest limitations
- The headline result is specific to the Gaussian case. The clean separation, and the finding that no-arbitrage does not restrict factor forecasts, relies on the model being Gaussian with unrestricted pricing. Introduce stochastic volatility, jumps, or restrictions on the risk price structure, and the neat decomposition weakens or fails.
- Fast and unique is not the same as right. JSZ solve the estimation problem, not the model problem. If a Gaussian affine model is the wrong description of interest rates, and there are good reasons to think it is, especially near the zero lower bound, then JSZ have simply made it much easier to compute a wrong answer, reliably.
- Term premium estimates remain fragile in a deeper sense. Even with clean estimation, the split between "expected future short rates" and "term premium" depends on how you model the persistence of the factors, and yields are so persistent that the data cannot pin that down precisely from a few decades of history. Confidence bands around term premium estimates are wide, and JSZ do not narrow them.
- Small-sample bias in persistence. Interest rate factors are highly persistent, and estimating persistence from a short sample is biased downward, which in turn biases the term premium estimates. This is a known problem that JSZ's method does not address, and later work (notably by Bauer, Rudebusch and Wu) is specifically about correcting it.
- It offers no new economics. By design. This is a paper about identification and estimation, and it does not tell you anything new about why the yield curve is shaped the way it is.
The one-line takeaway
Joslin, Singleton and Zhu rewrote Gaussian term structure models in terms of observable portfolios of yields instead of invisible latent factors, turning an estimation nightmare into a near-instant calculation, and proved along the way that in this setting the no-arbitrage restrictions do not change the model's forecasts at all.