Short-Rate Model vs Market Model: What Each Takes as Given
A short-rate model takes one rate as its primitive and derives every maturity from it. A market model takes the observable rates themselves as primitive and models each one directly. The choice decides what comes for free and what has to be imposed, and what a short-rate model cannot do turns out to be arithmetic rather than assertion.
Two ways of modelling the same object sit at opposite ends of one decision, and almost every difference people list between them is a consequence of that decision rather than a separate fact. The decision is about what the model receives and what it has to produce. Everything else, the notation, the number of state variables, the shape of the equations, follows.
The everyday version is closer to the mathematics than it looks. There are two ways to know what the sea will do at a harbour tomorrow afternoon. One is a tide table: somebody has written down the height of the water at each hour, and the row wanted is simply read off. The other is a model of the moon and the sun and the shape of the coast, from which the height at any hour is computed. Those hours are what the tide table is made of, so the table can never be wrong about the hours it lists. The model can be wrong about every one of them, and that is exactly why the model is the only one of the two that has said anything.
A short-rate model is the moon. A market model is the table. Each buys its strength with the other one's weakness, so neither is the better object, and any treatment that ends up preferring one has misunderstood the trade.
What does each of the two take as its primitive?
A primitiveWhat a model takes as given rather than derives. Everything else in the model is built out of the primitives, so the choice of primitive decides what the model can be wrong about. is whatever the model is handed rather than works out. The primitive is the raw material. A model can only be wrong about the things it derives, never about the things it was given, and once its primitives are known most of its behaviour can be predicted without seeing a single equation.
A short-rate model takes a single quantity as primitive: the rate that applies over the next instant, written as the short rate with a time subscript. The short rate is given a process. The rate starts at 5 per cent, is pulled toward a long-run level of 6 per cent at a speed of 0.5 a year, and carries a rate volatility of 1 percentage point a year. Four numbers, and nothing else is supplied to the model anywhere.
Everything a reader might want then has to be derived. The value today of one rupee due at a future date is not an input; it is an expectation taken over the whole path the short rate might follow between now and then. The rate quoted for a ten year horizon is not an input either; it is that value read back as a rate. Nothing at any maturity is supplied to a short-rate model, and that is precisely why it can disagree with the maturities it is later compared against.
A market modelA model taking the rates people actually quote as primitive and modelling each of them directly, rather than deriving them from one underlying rate. inverts the arrangement. Its primitives are the rates themselves, one for each observable maturity, each given its own process. The curve is not something the model produces at the end; it is the thing the model is built out of at the start. Where the short-rate model carries one state variable and derives nine numbers, a market model of nine maturities carries nine state variables and derives none of them.
| \(r_t\) | the short rate at time \(t\), the rate applying over the next instant, and the single primitive of the first arrangement |
| \(\mathbb{Q}\) | the risk-neutral measure, under which the expectation is taken; the physical measure \(\mathbb{P}\) plays no part in this comparison |
| \(P(0,T)\) | the value today of one rupee due at horizon \(T\), a derived quantity in the first arrangement |
| \(R(0,T)\) | the rate quoted today for horizon \(T\), derived in the first arrangement and given in the second |
| \(T_1\dots T_9\) | the nine horizons used throughout, at six months and one, two, three, five, seven, ten, twenty and thirty years |
Which of the two has the curve as an output, and which has it as an input?
What does a short-rate model give for free?
Start with what the arrangement buys. The limitation later on is the same property seen from the other side, and reading the limitation first makes it look like a defect.
Given its four numbers, the model hands back the value today of one rupee due at any horizon named. At the locked parameters those discount factorsThe value today of one rupee due at a stated future date. Multiplying an amount due later by its discount factor gives what it is worth now. read 0.974750 at six months, 0.949216 at one year, 0.898265 at two years, 0.848492 at three, 0.754894 at five, 0.670468 at seven, 0.560610 at ten, 0.308325 at twenty and 0.169551 at thirty. Read each back as a rate and the curve reads 0.051149, 0.052119, 0.053645, 0.054765, 0.056235, 0.057111, 0.057873, 0.058830 and 0.059153.
Nine numbers at nine horizons, and not one of them was supplied to the model. There is no thirty year input anywhere in the specification. The thirty year figure exists because the model was asked what a rupee due in thirty years is worth given a rate that starts at 5 per cent and is pulled toward 6 per cent, and it worked the answer out. Giving a curve for free means exactly that, and it is not a small thing: a shape has been produced from a mechanism rather than recorded from a list.
The same property has a second face. Because all nine come from the same four numbers through the same expectation, none of them can move on its own. Change the long-run level and every one of the nine moves. The ten year reading was never a place where a number could be stored, so no mechanism inside the model can reach it and leave the six month reading where it was.
| \(R(0,T)\) | the rate produced for horizon \(T\), one of the nine outputs |
| \(r_0\) | the starting level of the short rate, 0.050000, invented |
| \(\theta\) | the long-run level the short rate is pulled toward, 0.060000, invented |
| \(\kappa\) | the speed of the pull, 0.500000 a year, invented |
| \(\sigma_r\) | the rate volatility, 0.010000 a year in absolute terms, invented |
| \(B(T)\) | a shape factor rising from zero toward the reciprocal of the speed as the horizon lengthens |
| \(R_\infty\) | the level the curve approaches as the horizon grows without bound |
How many numbers produce the nine maturities?
What can a short-rate model not do?
Now the limitation. The claim that a short-rate model cannot match an arbitrary curve is stated everywhere and shown almost nowhere, so it reaches most readers as an assertion they are asked to accept. The claim is not an assertion. The claim is arithmetic, and the arithmetic is worked below.
Ask the model for the easiest shape there is. Not a hump, not a kink, just a flat curve at 5 per cent, the same rate at every horizon. There is an obvious setting to try: the short rate starts at 5 per cent, so set the long-run level to 5 per cent as well. Now there is no gap to close, the pull has nowhere to pull to, and the rate is already sitting exactly where the model wants it. Every intuition says the curve should come back flat.
Before the numbers: with the long-run level set to 5 per cent, equal to the starting rate, is the curve flat?
The curve reads 0.049997 at six months, 0.049988 at one year, 0.049966 at two years, 0.049944 at three, 0.049907 at five, 0.049882 at seven, 0.049859 at ten, 0.049830 at twenty and 0.049820 at thirty. Those nine readings make a falling curve, not a flat one, and the fall happens at every single step without one exception across the nine. The numbers are small, so put them where they belong: the thirty year reading sits 1.800000 basis points below the flat line the reader asked for, and the shape is wrong everywhere, not merely at the far end.
Where does the fall come from? The formula above answers it directly. Set the long-run level equal to the starting rate and the far-end level does not equal either of them. The far-end level is the long-run level less a quantity built out of the rate volatility and the speed, so it sits below both, at 0.049800. The starting rate is therefore above the far-end level even though it equals the long-run level, and the curve slides from the one to the other. Both of the two remaining pieces of the formula are proportional to the squared rate volatility, so the entire departure from flat is the uncertainty, and nothing else.
| \(R_\infty\) | the level the curve approaches as the horizon grows without bound |
| \(\theta\) | the long-run level, the only one of the four the calculator below moves |
| \(\sigma_r\) | the rate volatility, 0.010000, held fixed here |
| \(\kappa\) | the speed of the pull, 0.500000 a year, held fixed here |
Notice what has just happened. Walking past it is easy. The reader asked for the single simplest shape a curve can have, chose the one parameter setting that ought to deliver it, and the model refused. Not by a lot, but the refusal is not about size. The shape is wrong: a curve that was supposed to be level goes down, monotonically, at all nine horizons.
Can the parameters not simply be set until it is flat?
The honest next question deserves a straight answer. The loose version of the claim, that no setting of the four parameters gives a flat curve, is not quite true, and a careful reader will break it in about a minute. Two settings do flatten the curve. Both cost something, and what they cost is the interesting part.
The first is to set the rate volatility to zero. The whole departure from flat is proportional to the squared rate volatility, so setting that to nought and leaving the long-run level at 5 per cent gives 0.050000 at all nine horizons, exactly. It works. Setting the volatility to nought also deletes the model: a rate with no volatility does not move, the pull has nothing to pull against, and what is left is not a rate model at all but the assumption that the rate is a constant.
The second is more interesting because it is not degenerate. Leave the rate volatility at 1 percentage point and raise the speed of the pull. The shortfall is the squared rate volatility over twice the squared speed, so quadrupling the speed cuts the shortfall by sixteen. At a speed of 10 a year the shortfall is 0.000000500, and all nine readings print 0.050000 to six decimal places. The curve is flat to any tolerance a reader would ever check.
But the flat curve did not come for nothing; it was paid for with a claim about the process, and the claim is now visible somewhere else. At a speed of 0.5 a year the half-lifeThe time for half of any gap between the rate and its long-run level to be closed. The natural logarithm of two divided by the speed of the pull. of a gap is 1.386294 years. At a speed of 10 it is 0.069315 years, about 25.3 days. And the stationary spreadThe standard deviation the rate settles at once the pull and the uncertainty have balanced, and the width of the band it wanders inside over long horizons. falls from 1.000000 percentage points to 0.223607. The curve has been flattened by asserting that the rate snaps back to its level inside a month and barely wanders at all, and every rate contract the model is later asked about will be priced under those two assertions.
The property worth carrying away is more general than the flat curve. A short-rate model cannot move one part of the curve without moving everything else, including things that are not on the curve at all. Nothing in it is local. The nine-from-four fact is that same fact, seen from the side that costs something instead of the side that gives something.
A reader flattens the curve by raising the speed of the pull from 0.5 to 10 a year, leaving the rate volatility at 1 percentage point. What has that setting also done?
What shapes can the curve take at all?
The flat case is one shape the model was asked for and produced something else. Asking how much of the trouble was specific to flat is fair. The general answer turns out to be sharper and simpler than the counting argument people usually reach for.
Write the horizon in units of the speed, so one unit of the new clock is however long it takes the pull to act once. Then the whole formula collapses. Every rate the model produces is the far-end level plus a single expression built from two quantities: the gap between today's rate and the far-end level, and the coefficient on the uncertainty piece. The shape of the curve depends on the ratio of those two and on nothing else whatsoever. The remaining freedom sets the height of the curve and how far along the horizon its features are stretched, but not the shape.
| \(u\) | the horizon measured in units of the speed, so that the same picture serves every speed |
| \(x\) | one less the exponential of minus \(u\), a quantity rising from zero to one as the horizon lengthens |
| \(a\) | the gap between the starting rate and the far-end level, which may be of either sign |
| \(c\) | the coefficient on the uncertainty piece, always positive when the rate volatility is |
| \(\rho\) | the ratio of the two, called the shape ratio here as a convenience and not a standard name |
Scanning that ratio across sixteen orders of magnitude on both sides of zero produces exactly three shapes and no others. At a ratio of minus one or below the curve rises the whole way. Strictly between minus one and two it rises and then falls, giving a single hump. At two or above it falls the whole way. There is no setting anywhere in the parameter space that makes the curve fall and then rise again. A trough is not a shape this model has.
And now the flat case falls out as a special case rather than a coincidence. Set the long-run level equal to the starting rate and the gap becomes exactly the shortfall, exactly twice the uncertainty coefficient, so the ratio lands on exactly two, every time, for every speed and every positive rate volatility. Two is inside the falling region. The flat attempt does not fail because of the particular numbers chosen here; it fails identically for every speed and every rate volatility anyone could pick, and the worked case was standing in for that general statement.
| \(\theta=r_0\) | the setting a reader expects to give a flat curve, the long-run level put equal to the starting rate |
| \(a\) | the starting gap, which under this setting is the shortfall itself rather than zero |
| \(c\) | the uncertainty coefficient, exactly half the shortfall |
| \(\rho=2\) | the resulting shape ratio, which sits at the boundary of the falling region and inside it |
Before reading on: can the curve this model produces fall and then rise again?
The calculator below moves the long-run level, and the flat curve refuses to appear. The default reproduces the worked case above exactly, and the preset speeds buy the flat curve and show the bill.
Move the long-run level and try to flatten the curve
The starting rate is held at 5 per cent throughout. The dashed green line is the flat curve at the starting rate; the dashed red line is the level the curve settles on at the far end.
At a long-run level of 5.000000 per cent, equal to the starting rate, and a speed of 0.5 a year, the curve reads 0.049997 at six months and 0.049820 at thirty years, so it falls rather than lying flat, and its far end settles at 0.049800, a shortfall of 0.000200 below the long-run level.
Assumptions on screen: starting rate 5 per cent, rate volatility 1 percentage point a year, speed as selected. At a long-run level of 6 per cent the nine readings are 0.051149, 0.052119, 0.053645, 0.054765, 0.056235, 0.057111, 0.057873, 0.058830 and 0.059153. At a long-run level of 5 per cent they are 0.049997, 0.049988, 0.049966, 0.049944, 0.049907, 0.049882, 0.049859, 0.049830 and 0.049820, falling at every step rather than lying flat. At the locked speed the far end is always the long-run level less 0.000200, whatever that level is set to. Every figure is an educational illustration computed from invented parameters, and the case discount factor over one year is 0.951229 against a bond of Rs 1/- due at that horizon.
What is the far-end shortfall at the locked parameters, and what does it depend on?
What does a market model take as primitive instead?
Turn the arrangement around. A market model does not try to derive the curve because it never intended to. A market model takes the rates that are quoted, one for each maturity, and gives each of them a process of its own. Nine maturities, nine state variables, nine processes, and the collection of today's values is not something the model produces but something it is initialised with.
The immediate consequence is that it reproduces today's curve exactly, at every maturity, always. Not approximately, not to within a basis point, and not because anyone tuned it well. The curve was written into the model as an initial condition, so the match is reproduction by constructionMatching an input exactly because it is an input rather than a result. Arithmetic rather than evidence, and it cannot fail. and not a result. A tide table is never wrong about the hours it lists.
The exact match is therefore worth exactly nothing as evidence, and reading it as a success is the single most common error made about these models. When a model is shown reproducing an observed curve to nine decimal places, the correct question is not how good the model is but whether the curve was an input. If it was, what has been watched is a number copied from one side of a sheet to the other.
| \(R^{\text{model}}\) | the rate the market model reports for horizon \(T_i\) |
| \(R^{\text{given}}\) | the rate handed to it for that same horizon, which is its initial condition |
| \(\equiv\) | identically equal, holding by definition rather than by calculation |
| \(\text{error}_i\) | the difference at maturity \(i\), which is zero at every one of the nine and cannot be otherwise |
A market model reproduces a given curve exactly at all nine maturities. What has that established?
What does that buy, and what does it cost?
What it buys is real and should not be waved away by anyone who has just enjoyed watching the short-rate model fail at flat. When the thing being priced depends on a curve that has been handed over, and must be consistent with that curve at every point, a model that cannot disagree with the curve is not a cheat. A model that cannot disagree is then the correct tool, and a short-rate model that misses the curve by two basis points at the far end would be an unforced error.
The arrangement also buys locality, the exact thing the short-rate model could not give. A market model's ten year rate has its own process, so it can be moved while the six month rate stays put. Nothing propagates unless the propagation is built in by hand.
The cost is explanation. The rise from six months to thirty years is not something a market model produced, so ask it why the curve rises and it has nothing to say. The model received the rise. There is no mechanism inside it whose behaviour accounts for the shape, so no answer to a why question can come out of it, and the honest response is that the shape was assumed.
The arrangement also costs degrees of freedomHow many independent numbers a model or a shape carries. A model with as many free numbers as observations can match all of them without that match meaning anything.. A model with one free number per observation will agree with every observation, so agreement stops being informative and every check that might be run on it has been disarmed in advance. The short-rate model's four numbers against nine readings is precisely what makes disagreement possible, and disagreement is the only thing that could ever have shown the model to be wrong.
| What is being asked | Short-rate model | Market model |
|---|---|---|
| The primitive | One rate, given a process | The quoted rates, one process each |
| The curve | Produced, at the end | Received, at the start |
| Numbers supplied | Four | One for every maturity carried |
| Agreement with a given curve | Not assured; here it misses | Exact, and exact by construction |
| Can one maturity move alone? | No; nothing in it is local | Yes; each has its own process |
| Can it be wrong about the curve? | Yes, and that is the point | No, and that is the cost |
| Answers a why question about the shape | Yes | No |
The failure: reading the limitation as a defect and adding parameters until it goes away
Here is the move to watch for, and it looks like diligence. A reader sees the short-rate model miss the curve, concludes that a model which misses is a model that needs fixing, and adds parameters. Make the long-run level a function of time. Make the speed vary. Keep going, and at some point the curve matches, at every maturity, to any tolerance wanted.
The result is not a better explanation but a recording, and they have paid the price of a process model to get the content of a lookup table. The mathematics is still hard: there are still expectations, still a process, still the whole apparatus. But enough freedom was added to let any shape come out, so the shape no longer comes out of anything. The curve went from being a consequence of four numbers to being stored inside the parameters, and a model that can produce any shape has said nothing when it produces the one in front of it.
The crude version of this argument does not survive contact with the arithmetic, and it is the version most often given, so it is worth correcting. The crude version says four parameters cannot reproduce nine numbers. The crude version is not right. Fitting the four to an invented smooth humped shape reading 0.0500, 0.0530, 0.0570, 0.0595, 0.0615, 0.0620, 0.0615, 0.0590 and 0.0575 lands within a root mean squared error of 0.803748 basis points and a largest miss of 1.361118 basis points, a match for practical purposes. Nine numbers lying on a smooth shape do not carry nine independent degrees of freedom, so the counting was never what did the work.
The repertoire does the work. Fit the same four parameters to an invented trough shape that falls and then rises, reading 0.0550, 0.0530, 0.0505, 0.0495, 0.0500, 0.0520, 0.0545, 0.0570 and 0.0580, and the best available setting leaves a root mean squared error of 18.892464 basis points and a largest miss of 36.928733, twenty-three times worse. The model matches shapes it can make and fails shapes it cannot, and the boundary between the two is the three-shape repertoire rather than any count of parameters.
So the correction is not to add parameters until the fit is exact. The correction is to notice which of the two kinds of failure is in view. A small miss on a shape inside the repertoire is the model doing its job, giving nine numbers from four. A large miss on a shape outside it is the model saying something true and useful: whatever produced that curve is not the mechanism written down.
A short-rate model cannot match an observed curve, so someone adds parameters until it can. What have they built?
Which questions does each one answer?
All of the above reduces to one test that fits in a sentence, and it is worth carrying because it settles the choice without any of the mathematics. The test is whether the curve is the question or the given.
If the curve is the question, if what is wanted is why it has the shape it has, or what shape it would have under a different pull, or whether the shape in view is even reachable by a mechanism of this kind, then only a model that produces the curve can answer, and that is the short-rate model. The short-rate model answers by being able to be wrong. The trough shape above is a real answer to a real question: no mean reverting rate of this form produces that curve, so where such a curve appears, something outside the model made it.
If the curve is the given, handed over with everything computed from it required to be consistent at every point, then a model that can disagree with it is a liability rather than a virtue, and the market model is the tool. The market model answers a different question, namely what happens next given this starting point, and it answers that one without ever having to justify the starting point.
The everyday version again, one last time. Knowing why the tide comes in twice a day takes the moon, and no amount of reading tide tables will ever supply it. Knowing the height of the water at the harbour at four o'clock tomorrow, in order to decide when to bring a boat in, takes the table, and consulting the moon would be a strange way to spend the afternoon. The two models are not competing answers to one question; they are answers to two different questions that happen to be about the same curve.
The question is why a curve has the shape it has. Which model?
References
| Source | Document | Where |
|---|---|---|
| arXiv Quantitative Finance | Preprint repository for short-rate models, term structure construction and the market model literature | arxiv.org |
| Social Science Research Network | Working paper repository for the same material, including notes on the attainable shapes of model-produced curves | ssrn.com |
| Hull, Shreve and Wilmott | Standard texts on term structure models, short-rate processes and market models | print texts |
| Vasicek, 1977 | The mean reverting short-rate model whose curve formula is used throughout | Journal of Financial Economics |
| Uhlenbeck and Ornstein, 1930 | The mean reverting process beneath that model | Physical Review |
The four rate parameters, the curve, the humped shape and the trough shape are invented.
Educational material. Not advice on any investment, tax, budget or market position.
