The Pricing Kernel: One Object Behind Every Valuation
A pricing kernel is a single random weight under which the price of any payoff is the ordinary average of that payoff multiplied by the weight, taken under the model's own measure. The weight packages the discounting and the change of measure into one object. Its average must be the discount factor, and it is largest exactly where the process finishes lowest.
Everything met in this reading order so far prices a payoff in two moves. First the outcomes are reweighted, the model's own probabilities swapped for the ones that make the pricing arithmetic work. Then comes the discounting, pulling the reweighted average back to today at the rate. Two moves, in that order, and the order matters to nothing at all because multiplication does not care which factor is applied first.
The indifference to order is the whole of what follows. If the order does not matter, and if neither move depends on the other, then the two of them can be folded into a single number attached to each outcome. Once that is done, pricing stops being a procedure and becomes a product. The pricing kernelA single random weight turning any payoff into its price by an ordinary average. is what the reweighting and the discounting become when they are folded together and carried as one object. A price is then a multiplication followed by an average and nothing else.
Here is the everyday version before the notation arrives. Consider weighing sacks of grain on a scale that reads slightly wrong, where how wrong it reads depends on which corner of the room the sack is standing in. The work can go in two steps: read the scale, then look up the correction for that corner and apply it. Or the arithmetic can be done once, printing a card for each corner with the combined multiplier on it. From then on each sack is weighed once and multiplied once. The second way is not a different theory of weighing. The card holds the same two corrections, pre-multiplied. The person at the scale has one number to reach for instead of two. Folding two corrections into one card is a repackagingCombining two operations into one, and the kernel does the same., and the kernel below does exactly that.
What is a pricing kernel, in one sentence?
Take the standard process, the one invented quantity this whole reading order runs on. The process is written S with a time subscript, it starts at Rs 100/-, it drifts at 8 per cent a year under the physical measure P, its volatility is 20 per cent a year, and it is watched over one year at a risk-free rate of 5 per cent continuously compounded. Every figure that follows is computed from those four numbers.
Now take a payoff. Not a contract, just a payoff: a number attached to each possible finishing value of the process, arriving from a source covered separately. Call it X at the horizon. The question is what it is worth today.
| \(\Pi_0\) | the price today of the payoff |
| \(X_T\) | the payoff at the horizon, handed over as numbers attached to outcomes |
| \(M_T\) | the pricing kernel over the horizon, a random weight attached to the same outcomes |
| \(\mathbb{E}^{P}\) | the ordinary average taken under P, the physical measure and the model's own |
| \(T\) | the horizon, 1.0 years throughout this guide |
Three things are claimed on the right hand side at once, and only one of them is arithmetic, so read it slowly. The first is that the average is an ordinary averageAn average under the model's own measure, with no reweighting applied.: no reweighting is happening in that expectation, and the probabilities inside it are the model's own. The second is that the multiplication happens outcome by outcome. The weight therefore has to be random rather than a single scalar. The third is the one that earns the object its name: the same M works for every payoff. The weight is not fitted to the payoff being priced. Hand it a different set of numbers tomorrow and it prices those too, unchanged.
The kernel also travels under a second name, and the second name appears more often than the first in written work. The kernel is called the stochastic discount factorAnother name for the same object, in common use., and the name is descriptive: it is a discount factor that varies by outcome instead of being one number. A third name, the state price density, belongs to the discrete treatment covered separately, and it is the same object again seen through a table of three outcomes rather than a continuum. Three names, one object, and this reading order treats them as one thing throughout.
What does the repackaging rest on?
Nothing new. The absence of new content is worth stating loudly. A reader meeting a fresh symbol reasonably assumes fresh content is arriving with it. It is not. Every ingredient of the kernel was established earlier, and the only thing added here is an instruction to multiply two of them together.
The reweighting factor came from the measure change work: the object that converts an average under P into an average under Q, one outcome at a time. On the standard process it is built from the market price of risk. The market price of risk is the gap between the drift and the rate divided by the volatility, and on the locked figures it is exactly 0.15. The discount factor came from the rate: over the one year horizon it is 0.951229. Multiply those two together, outcome by outcome, and the product is the kernel.
| \(M_T\) | the pricing kernel over the horizon |
| \(e^{-rT}\) | the discount factor, 0.951229 at r equal to 0.05 and T equal to 1.0 |
| \(d\mathbb{Q}/d\mathbb{P}\) | the reweighting factor carrying the model from the physical measure P to the risk-neutral measure Q |
| \(\theta\) | the market price of risk, the drift less the rate over the volatility, 0.15 exactly here; it is not the sensitivity of a contract to the passage of time, a different quantity carrying the same letter elsewhere |
| \(W_T\) | standard Brownian motion under P at the horizon, the single random input everything else is a function of |
| \(r,\;T\) | the risk-free rate 0.05 a year and the horizon 1.0 years |
Putting the locked path through that expression gives the first checkable figure. The locked path was constructed so that its twelve driving values sum to zero exactly. The Brownian value at the horizon is therefore zero, the reweighting factor is e to the minus 0.01125, and that comes to 0.988813. The kernel on that path is therefore 0.951229 multiplied by 0.988813, and that is 0.940588. Every number in this guide is that same multiplication done at a different outcome.
The kernel is described as a repackaging. What genuinely new ingredient does it add to what was already in hand?
How does one object stand behind every valuation?
The claim in the heading is stronger than it looks, so it is worth testing on payoffs that could hardly be more different from each other. The kernel does not get to change between them. The kernel is computed once, from the four locked parameters, and then applied.
Start with the simplest payoff anybody could write down: one rupee, in every outcome, whatever the process does. One rupee does not vary state by stateVarying across outcomes, which is what makes the kernel random. at all. Multiply it by the kernel and the product is just the kernel, so its price is the ordinary average of the kernel itself. The average of the kernel is 0.951229, and what pins it there is set out below.
Now take a payoff that varies as much as anything in this guide does: the finishing value of the standard process itself. Multiply the finishing value by the kernel outcome by outcome, average under P, and the answer is Rs 100/- exactly. The process started there. The match is not a coincidence and it is not a rounding. Recovering the starting value is the statement that a quantity held from today to the horizon is worth today exactly what it costs today, and the kernel reproduces that without being told.
Third, take a payoff handed over as a rule about numbers, with nothing said about what produced it. The rule pays nothing at every finishing value at or below Rs 100/-, and the excess over Rs 100/- at every finishing value above it. Written out, the numbers form the payoff column of the at-the-money contract in the locked set, and that contract is covered separately. The payoff arrives as a set of numbers attached to outcomes, and the kernel prices numbers. Run the same single operation and the answer is Rs 10.450584/-. The case locks that same figure for that contract.
Here is the arithmetic in a form that can be checked by hand rather than taken on trust. Divide the probability scale into eight equal slices and take the value at the middle of each. Slicing deterministically is what this reading order uses instead of drawing outcomes at random. Each slice carries probability 0.125 exactly. The kernel column comes straight from the formula above.
| Slice midpoint, in standard units | Finishing value | Kernel | Handed payoff | Payoff times kernel |
|---|---|---|---|---|
| minus 1.5341 | Rs 78.1278/- | 1.183964 | 0.0000 | 0.0000 |
| minus 0.8871 | Rs 88.9203/- | 1.074464 | 0.0000 | 0.0000 |
| minus 0.4888 | Rs 96.2949/- | 1.012140 | 0.0000 | 0.0000 |
| minus 0.1573 | Rs 102.8949/- | 0.963047 | 2.8949 | 2.7879 |
| plus 0.1573 | Rs 109.5775/- | 0.918653 | 9.5775 | 8.7984 |
| plus 0.4888 | Rs 117.0880/- | 0.874095 | 17.0880 | 14.9365 |
| plus 0.8871 | Rs 126.7985/- | 0.823393 | 26.7985 | 22.0657 |
| plus 1.5341 | Rs 144.3144/- | 0.747241 | 44.3144 | 33.1135 |
| Average over the eight slices | . | 0.949624 | . | 10.2128 |
Two honest observations about that total row. The kernel column averages 0.949624 rather than 0.951229, and the price column gives 10.2128 rather than 10.450584. Eight slices is a coarse reading of a continuous distribution, and slicing at midpoints understates how spread out the outcomes really are: the mean square of eight midpoints comes to less than one, so both averages come in low. Refine the slicing and both climb from below. At 1,000 slices the kernel averages 0.951215 and the price reads Rs 10.4493/-. At 5,000 the readings are 0.951226 and Rs 10.4504/-. The exact figures of 0.951229 and Rs 10.450584/- come from the formula, and the table is a hand-checkable approach to them rather than a substitute for them.
How many operations does pricing a payoff take once the kernel is in hand?
What does the kernel have to average to, and why?
Go back to the dullest of the three payoffs, the one rupee in every outcome. Multiplying by one changes nothing, so its price is the average of the kernel. But that payoff is also the plainest thing in finance: a rupee that arrives at the horizon whatever happens. Its price is the discount factorThe price today of one rupee received for certain, 0.951229 here., by definition of what a discount factor is.
So the two ends of that sentence have to meet. The average of the kernel is the price of a certain rupee, and the price of a certain rupee is the discount factor. There is no room left for the kernel's average to be anything else.
| \(\mathbb{E}^{P}[M_T]\) | the ordinary average of the kernel under the model's own measure |
| \(e^{-rT}\) | the discount factor, 0.951229 on the locked rate and horizon |
| \(\theta\) | the market price of risk, 0.15 exactly |
| \(W_T\) | standard Brownian motion under P at the horizon, mean zero and variance T |
| the middle average | exactly 1 for every value of theta, because the half theta squared term in the exponent is precisely the correction that makes it so |
A small piece of engineering hides in that line. The exponent carries a term of minus half theta squared times T. On the locked figures that term is minus 0.01125. The term is there for exactly one reason: without it the average of the exponential would come out above one, and the kernel would price a certain rupee at more than the discount factor. The correction keeps the whole construction honest, and it is the same correction met earlier wherever a lognormal quantity had to average to a stated number.
What must the kernel average to?
Where is the kernel large, and where is it small?
The shape of the kernel is what the object exists for. An average gives where the kernel sits; it gives nothing about its shape, and the shape is what does the work of pricing. The kernel is therefore computed across finishing values rather than averaged away.
The process is driven by one input, so every finishing value corresponds to exactly one Brownian value at the horizon. Invert the relationship, substitute, and the kernel stops depending on the Brownian value and starts depending directly on where the process ends. The result is tidier than the substitution suggests.
| \(S_T\) | the finishing value of the standard process at the horizon, in rupees |
| \(S_0\) | the starting value, Rs 100/- exactly |
| \(\mu\) | the drift under P, 0.08 a year |
| \(\sigma\) | the volatility, 0.20 a year, so the variance rate is 0.04 exactly |
| \(\theta/\sigma\) | 0.15 divided by 0.20, giving 0.75, and this is the exponent that sets the whole shape |
| \(r,\;T\) | 0.05 a year and 1.0 years, giving the constant 0.983881 once everything is multiplied out |
Now the four readings the case locks, each of them that one expression evaluated at a different finishing value. At a finish of Rs 80/- the kernel is 1.163122. At Rs 100/- it is 0.983881, the constant itself. A process finishing exactly where it started makes the bracket equal to one. At Rs 106.1837/-, where the locked path actually ends, it is 0.940588. At Rs 120/- it is 0.858137.
Read the direction and not just the numbers: the kernel is large where the process finishes low and small where it finishes high. The reading at Rs 80/- is 1.355403 times the reading at Rs 120/-. A rupee arriving in the low outcomes carries more weight in the average than a rupee arriving in the high ones, and that asymmetry is the entire content of the object. Take the tilt away and the kernel collapses into an ordinary constant discount factor with nothing left to say.
Where does the tilt come from, though? Not from anywhere mysterious. The exponent is the market price of risk divided by the volatility, and the market price of risk is itself the drift less the rate divided by the volatility. Put those together and the exponent is the gap between the drift and the rate divided by the variance rate: 0.03 over 0.04, and that comes to 0.75 exactly. The steepness of the kernel is a ratio of two quantities already in hand, the risk premium on top and the variance rate underneath, and no fifth quantity is involved.
The process finishes at Rs 80/-. Is the kernel there above or below its own average?
Before the control below moves: the market price of risk is about to rise. What happens to the kernel's average?
Tilt the kernel and watch what refuses to move
One control: the market price of risk, from 0 to 0.4. The volatility stays at 20 per cent, the rate stays at 5 per cent and the horizon stays at one year. Every reading below is computed from the formula rather than sampled, so it reproduces on every reload.
Three things are worth doing with that control before moving on. Set it to zero and watch the curve go flat: with no gap between the drift and the rate there is nothing to tilt, and the kernel is the plain discount factor in every outcome. Push it to 0.4 and watch the curve pivot: the ends swing apart until the low finish carries 2.250000 times the weight of the high one. Then watch the dashed line through all of it. The dashed line never moves by a pixel. The tilt is free to change and the average is not, and holding both facts at once is what understanding the kernel amounts to.
The crossing point is the third reading and it repays a moment. The curve meets its own average at a finish of Rs 104.60/- at the locked setting, drifting down towards Rs 102.02/- as the tilt is pushed to 0.4 and up to Rs 106.18/- as it falls to zero. The crossing is the outcome at which the kernel neither adds nor removes weight, and it moves because a steeper curve has to cross earlier to keep the same average.
Pricing Measure vs Pricing Kernel: are they two objects or one?
The usual telling makes the two sound like rival theories, so both sides are worth stating properly before contrasting them.
The pricing measureThe reweighting the kernel carries inside it. is a set of probabilities. The pricing measure assigns weight to outcomes differently from the assignment the model started with, chosen so that the discounted process becomes a martingale, and it is used by moving the whole calculation into it, averaging there, and discounting the result at the rate. A probability measure has weights that add to one across outcomes, and the pricing measure is no exception.
The pricing kernel is not a set of probabilities. The kernel is a random weight applied inside an average taken under the original measure, and its values do not add to one across outcomes at all. Averaged under the model's own probabilities it comes to the discount factor, 0.951229. The shortfall against one is exactly the amount the rate accounts for.
| left side | the kernel route, one multiplication and an ordinary average under P |
| middle | the same thing with the kernel split back into its two factors |
| right side | the measure route, an average under Q followed by discounting at the rate |
| \(X_T\) | any payoff at the horizon whatsoever |
| \(d\mathbb{Q}/d\mathbb{P}\) | the reweighting factor, exactly the object that turns an average under P into an average under Q |
So the answer to the heading is one object in two packagings, and the identity above is the proof rather than a claim. The kernel is the discount factor multiplied by the reweighting factor. Divide the kernel by the discount factor and the reweighting factor is what is left. Nothing is present in one that is absent from the other. Neither packaging is more fundamental than the other, and ranking them would be ranking two spellings of the same word.
Are the pricing measure and the pricing kernel two objects or one?
Why would anybody reach for the kernel rather than the measure?
If the two are identical in content, the choice between them is a choice about convenience, and convenience is decided by what the rest of the calculation is doing.
The kernel is the one to reach for when everything else in the calculation lives under one measure and is to stay there. Estimates, averages, variances and correlations computed from the model's own probabilities do not have to be translated if the pricing step never leaves that measure. A kernel allows a price to be written beside a variance in the same line of algebra without either of them changing address. One kernel also prices several payoffs at once against a common weight. The weight is shared and only the payoff column changes.
The pricing measure is the one to reach for when the argument is about the change of measure itself. If what is being explained is why the drift disappears, or what a martingale requires, or how the measure is pinned down, then hiding that machinery inside a single weight makes the argument harder rather than easier. The measure route puts the thing being discussed in the foreground; the kernel route buries it.
The whole calculation is under one measure and is to stay that way. Which packaging?
The error that gets made, and what it costs
The error is reading the kernel as a statement about somebody's preferences.
The mistaken reading is easy to trace. The kernel is high where the process finishes low and low where it finishes high, and that shape is the shape a story about valuing a rupee more when things have gone badly would produce. The exponent even wears a familiar costume: 0.75, a single positive number sitting where a curvature parameter would sit in that story. The resemblanceA shape that looks like a story about preferences, and is not one. is genuine, and it is why the reading feels like an insight rather than a leap.
But what actually went into the number is a drift of 0.08, a rate of 0.05, a volatility of 0.20 and a discount factor of 0.951229, and not one of those four is anybody's preference. The 0.75 is 0.03 divided by 0.04. The exponent is a risk premium over a variance rate, two model inputs, and it would be exactly 0.75 in a world with nobody in it. The kernel measures nobody's valuation of anything, and no arrangement of a drift, a rate and a volatility could. An object does not become a description of a person by being shaped like one.
The error costs an argument that cannot end. Somebody defends a valuation on the ground that the kernel encodes a considered view about bad outcomes; somebody else attacks the same valuation for encoding the wrong view. Both are discussing an object that is not on the table. The one on the table was assembled from three parameters and a discount factor. Nothing either side says touches the drift, the rate or the volatility, and those three are the only things that would move the number, so the debate cannot repair the valuation. Meanwhile the checkable question, whether those three inputs are the right ones for the job, goes unasked for as long as the argument runs.
The kernel is high where outcomes are low. Does that encode a preference?
How does somebody working with a pricing sheet actually use this?
Away from the algebra, the kernel earns its keep as a checking device, and the two checks are the two properties already established. Suppose a sheet of numbers is handed to an analyst: a column of outcomes, a column of weights somebody has computed, and a column of prices produced from them. The task is not to rebuild the model. The task is to say whether the sheet is internally consistent.
The first check is the average. Add up the weight column against the probabilities of the outcomes and see whether it lands on the discount factor over the same horizon. If it comes to something noticeably away from 0.951229 on these parameters, then the sheet prices a certain rupee at the wrong number, and every price computed from that column carries the same error, scaled. The average is a one line test and it catches an entire class of mistake: a rate applied twice, a horizon mismatched between the weight and the payoff, a normalisation left out.
The second check is the anchor. Price the simplest varying payoff on the sheet, the finishing value of the process itself, and see whether it comes back to the starting value. On these parameters that is Rs 100/-. A weight column that averages correctly but fails this one has the level right and the tilt wrong. The tilt error has a different cause, and separating the two shows where to look. A household budget check works the same way: totalling the month against the bank balance catches one kind of error, and checking that the single largest line is right catches another, and neither test substitutes for the other.
Covered separately. How the pricing measure is constructed and pinned down is covered separately; the reweighting factor is taken from there. The two theorems that say when such a measure exists and when it is unique are covered separately too. Any contract's payments are covered separately as well. The theory prices payoffs and not contracts, so the one payoff handed over as numbers arrived without an account of what produced it. No regulator sets the form of an identity, and the mathematics is the same everywhere.
References
| Source | Document | Where |
|---|---|---|
| arXiv Quantitative Finance | Preprint repository for the stochastic discount factor and the equivalence of the two pricing routes | arxiv.org |
| Social Science Research Network | Working paper repository for the same material | ssrn.com |
| Girsanov, Radon and Nikodym | Named wherever the reweighting factor appears, the second half of the kernel above | named in the text only |
| Black, Scholes and Merton, 1973 | Named for the locked at-the-money figure of Rs 10.450584/- that the kernel route reproduces here | named in the text only |
| Hull, Shreve and Wilmott | Standard texts on stochastic calculus and derivative pricing | named in the text only |
The standard process, its four parameters and the payoff handed over as numbers are invented.
Educational material. Not advice on any investment, tax, budget or market position.
