A paper by my friend Julian, a PhD student in finance · "Pricing kernels and higher order moment–return correlations in the crude oil market" · my read of the mathematics in it
Julian's paper asks a question that sounds like economics: when the price of oil moves, does the market get more nervous, and does it matter which way the price went? For stocks the answer is old news. A crash makes investors expect more turbulence, a rally calms them down, and there are two competing stories for why (the leverage effect and volatility feedback). For oil nobody agrees, because a price spike can be bad news too: a war, a blockade, a shortage. So the paper builds a machine that reads the market's expectations straight out of option prices, every day for twelve years, and then runs a careful statistical interrogation of how those expectations respond to the previous day's move.
I'm putting it here because the machine is a chain of math I enjoy, and each link has a picture. Prices of bets become a probability density through a second derivative. That density is the wrong one, distorted by fear, and the correction turns out to be a histogram of past surprises. The corrected density gives three numbers a day, which get regressed slice by slice instead of on average, and the slices get tested all at once with a bootstrap. Every figure below runs on a small made-up oil market shaped like the paper's, computed for real; wherever a number is the paper's, I say so.
The data is options on USO, the biggest exchange-traded fund that tracks the price of West Texas crude: every quote from November 2013 to June 2026, with maturities between 5 and 35 days. An option is a bet on where the price will be, and the simplest one is a call.
A call option with strike $K$ and maturity $\tau$ pays $\max\{S_\tau - K,\, 0\}$ at time $\tau$: the amount by which the price finishes above $K$, or nothing. Its price today is written $C(K, \tau)$. Fixing $\tau$ and letting $K$ vary gives the call curve $K \mapsto C(K)$.
A call curve slopes down (a higher bar is harder to clear) and is convex. Here's the question that starts the paper: if you know the price of every call, do you know the market's odds for every outcome? Yes, and the proof is a trade. Buy a call at $K - h$, sell two at $K$, buy one at $K + h$. That package is called a butterfly, and its payoff is a tent of height $h$ sitting on $K$: it pays only if the price lands within $h$ of $K$. So its price is what the market charges for "the price ends up near $K$," and dividing by the tent's area recovers a density. Pricing with the market's own odds, and setting the interest rate to zero to keep the page clean, gives the definition. From here on, strikes are measured as a fraction of today's price, so a strike and a return live on the same axis. (The paper works with log returns; gross returns keep the pictures simpler.)
The risk-neutral density $f_Q$ is the density on the gross return $R = S_\tau / S_0$ for which every option's price is its expected payoff: $C(K) = \int (R - K)^+ f_Q(R)\, dR$ (with the interest rate set to $0$; in general the integral is discounted by $e^{-r\tau}$).
The price is an integral of the density, so two derivatives in the strike undo it.
If the call curve is twice differentiable, then $f_Q(K) = \dfrac{\partial^2 C}{\partial K^2}$ (times $e^{r\tau}$ when the rate is not zero).
Write $C(K) = \int_K^\infty (R - K) f_Q(R)\, dR$. Differentiate under the integral sign: the lower limit contributes $-(K - K) f_Q(K) = 0$, and the integrand contributes $-\int_K^\infty f_Q(R)\, dR = -(1 - F_Q(K))$. So $C'(K) = F_Q(K) - 1$, and differentiating once more gives $C''(K) = f_Q(K)$. $\blacksquare$
The butterfly is the finite-difference version of the same calculation: $\dfrac{C(K-h) - 2C(K) + C(K+h)}{h^2} \to C''(K)$ as $h \to 0$.
Here's the theorem as a picture: the butterfly's legs stack into a tent, the tent narrows, and sliding the strike along traces the whole density out from under the call curve.
Here's one butterfly with numbers, read off the toy market's call curve.
In the toy market, $C(0.89) = 0.1113$, $C(0.95) = 0.0672$, and $C(1.01) = 0.0331$ (rounded). Estimate $f_Q(0.95)$ with a butterfly of wing $h = 0.06$.
Buy one call at $0.89$, sell two at $0.95$, buy one at $1.01$. The package costs
$$C(0.89) - 2C(0.95) + C(1.01) = 0.1113 - 0.1344 + 0.0331 = 0.0100.$$Its payoff is a tent of height $h = 0.06$ on a base of width $2h = 0.12$, so its area is $\tfrac{1}{2} \cdot 0.12 \cdot 0.06 = h^2 = 0.0036$. Dividing,
$$f_Q(0.95) \approx \frac{0.0100}{0.0036} \approx 2.78.$$The toy market's true density there is $2.68$. The wings smear the density over the whole tent, and narrower wings would get closer.
Try it with your own strike and wings. The faint green curve is the true density of the toy market, so you can see how close the butterfly gets.
That's the clean version. Real data fights back.
Real quotes come at a handful of strikes, with noise, and a second derivative of noisy data is garbage. The paper doesn't differentiate the quotes. It fits a smooth, arbitrage-free surface through them first (a Heston–Kou model: stochastic volatility plus double-exponential jumps, recalibrated every trading day), converts in-the-money puts into calls with put–call parity, throws out anything violating the static no-arbitrage conditions, and only then differentiates on a fine grid of strikes. That's also why the sample starts in late 2013: before September 2013 some days had a single maturity and a few quoted strikes, too sparse to fit.
So $f_Q$ falls out of the call curve. The catch is in its name. It's the density under which prices are fair bets, and nobody prices fairly. People pay extra for insurance against outcomes they dread, and that extra shows up as probability mass in $f_Q$ that isn't there in reality. The density that actually generates returns, the one you'd see by replaying the month a million times, is the physical density $f_P$. The ratio between them has a name.
The pricing kernel is the ratio $m(R) = \dfrac{f_Q(R)}{f_P(R)}$ of the risk-neutral density to the physical density. It is the Radon–Nikodym derivative $dQ/dP$: for any payoff $X$, $\mathbb{E}_Q[X] = \mathbb{E}_P[m X]$.
Where $m > 1$, the market pays more for an outcome than its odds justify. Where $m < 1$, it pays less. Watch the ratio get computed point by point.
It's one ratio of two densities, and finance gave it four names: pricing kernel, stochastic discount factor, state-price density per unit probability, Radon–Nikodym derivative. Measure theory got there first and just called it $dQ/dP$.
The textbook picture of $m$ comes from a single investor who dislikes being poor.
Suppose an investor with increasing, concave utility $U$ holds the market and prices every payoff $X$ at $\mathbb{E}_P[m X]$ with $m \propto U'(W_\tau)$, marginal utility of wealth at maturity. Then $m$ is a decreasing function of the market's return: bad states are expensive, good states are cheap.
The investor chooses holdings to maximize $\mathbb{E}_P[U(W_\tau)]$ subject to a budget. At the optimum, the first-order condition for a tiny extra unit of any payoff $X$ costing $p$ reads $\mathbb{E}_P[U'(W_\tau) X] = \lambda p$ for a Lagrange multiplier $\lambda$, so $p = \mathbb{E}_P[m X]$ with $m = U'(W_\tau)/\lambda$. Concavity makes $U'$ decreasing, and the market's wealth rises with its return, so $m$ falls as $R$ rises. $\blacksquare$
Here's the argument as a picture, with a standard concave utility. The slope of the utility curve is the price of a state.
For a stock index that's roughly what you see: an expensive left tail, a cheap right tail. (Roughly. Estimated equity kernels often bend back up at the far right, the "pricing kernel puzzle," and the paper cites that literature.) For oil the story has to change, because the person holding oil is not the only person who cares about oil. An airline is ruined by a spike; a driller is ruined by a crash. Both tails are somebody's catastrophe, so the paper's Hypothesis 2 is that oil's kernel is not monotone at all.
That's the paper's central empirical picture: a U at five days, a W at thirty. The U says that at short horizons the market pays up for motion itself, in either direction, which is a variance risk premium. The W says that at longer horizons the variance premium fades and something else takes over: particular scenarios, a sharp collapse or a sharp spike, get their own premium, while the center bump means "about the same price next month" is pricey too and the mildly-up and mildly-down outcomes in between are the cheap ones. The paper reads that as heterogeneous expectations and hedging demand: different people insuring different nightmares.
Build your own kernel and watch what it does to the market's price for one concrete bet.
Those dials price two fixed bets. Turn it around: keep the 30-day W fixed and write the bet yourself. Each column of return pays whatever you draw, and the market charges its odds times the kernel there.
Now the hard part. Option prices give $f_Q$ every day. The paper wants $f_P$, and the kernel $m = f_Q / f_P$ is the thing it's trying to find, so there's no dividing your way out. What you do have is history: on each past day the market published an $f_Q$, and then a return actually happened. The trick for comparing a forecast density against the outcome it forecast is the probability integral transform.
For a forecast density with CDF $F$ and a realized outcome $r$, the probability integral transform (PIT) is $u = F(r)$: the probability the forecast assigned to outcomes at or below the one that occurred.
One month of it, with numbers.
At the start of a month, the market's density for the month's return has CDF $F_Q$ with $F_Q(0.93) = 0.31$. Oil then falls $7\%$, so $r = 0.93$. Find the PIT $u$ and its normal score $z = \Phi^{-1}(u)$, which the paper uses later.
The PIT is $u = F_Q(0.93) = 0.31$: the market had given a $31\%$ chance to a month this bad or worse. Since $\Phi(-0.5) \approx 0.3085$, the normal score is $z = \Phi^{-1}(0.31) \approx -0.50$.
One PIT says little. If the forecasts were right month after month, the $u$'s would spread evenly over $[0, 1]$, about a tenth of them in each tenth. The question is what happens when they don't.
The answer is the theorem that makes the whole method work.
Let the realized return $r$ have density $f_P$, and let $u = F_Q(r)$. Then $u$ has density $\dfrac{f_P(x)}{f_Q(x)} = \dfrac{1}{m(x)}$ at $x = F_Q^{-1}(u)$. In particular, $u$ is uniform on $[0, 1]$ exactly when $f_P = f_Q$.
$F_Q$ is increasing with derivative $f_Q$, so $u = F_Q(r)$ is a change of variables with $du = f_Q(r)\, dr$. The density of $u$ is therefore the density of $r$ divided by the Jacobian: $f_P(r) / f_Q(r)$, evaluated at $r = F_Q^{-1}(u)$. That ratio is identically $1$ if and only if the two densities agree. $\blacksquare$
So the histogram of past PITs is not just a diagnostic. As long as the distortion, measured in quantiles, is the same from month to month (which is what pooling the months assumes), it is the inverse kernel, plotted against quantiles instead of returns. Here it is being built, one month at a time.
Reading a kernel off a pile takes practice, because the pile is the kernel upside down. Try a few.
The paper's recipe, following Høg and Tsiaras (2011), smooths that histogram and multiplies it back. One wrinkle: instead of smoothing the $u$'s on $[0, 1]$, it first sends them through the inverse normal CDF, $z = \Phi^{-1}(u)$, and smooths the $z$'s with a Gaussian kernel density estimate $h$ (Silverman's bandwidth). If the market's density were right, the $z$'s would be standard normal, so the correction is the ratio of $h$ to the normal density $\phi$.
Let $H$ be the CDF of the kernel density estimate $h$ of the normal scores, and define the calibration map $\mathcal{C}(u) = H\!\left(\Phi^{-1}(u)\right)$. Then the calibrated physical CDF is $\mathcal{C} \circ F_Q$, and its density is
$$\hat f_P(x) = f_Q(x)\, \frac{h(z)}{\phi(z)}, \qquad z = \Phi^{-1}\!\left(F_Q(x)\right),$$which integrates to one. The pricing kernel estimate is then $\hat m(x) = f_Q(x) / \hat f_P(x) = \phi(z) / h(z)$.
The map $\mathcal{C}$ is built so that $\mathcal{C}(F_Q(r))$ is uniform: if $u = F_Q(r)$ has normal scores distributed like $h$, then $H(\Phi^{-1}(u))$ is the PIT of those scores under their own distribution, hence uniform. A CDF whose PIT is uniform is the true CDF, so $F_P = \mathcal{C} \circ F_Q$. By the chain rule, $f_P(x) = \mathcal{C}'(F_Q(x))\, f_Q(x)$, and differentiating $\mathcal{C}(u) = H(\Phi^{-1}(u))$ gives $\mathcal{C}'(u) = h(\Phi^{-1}(u)) \cdot \dfrac{1}{\phi(\Phi^{-1}(u))}$, since $\dfrac{d}{du}\Phi^{-1}(u) = 1/\phi(\Phi^{-1}(u))$. It integrates to one because substituting $z = \Phi^{-1}(F_Q(x))$, with $dz = f_Q(x)\, dx / \phi(z)$, turns $\int \hat f_P(x)\, dx$ into $\int h(z)\, dz = 1$. (On a finite grid the paper renormalizes anyway, to clean up truncation at the ends.) $\blacksquare$
Left to right, that's the whole pipeline. The dashed red at the end is the truth the toy market was built from, which in the real world nobody gets to see.
One step in that pipeline matters more than it looks: which months are allowed into the pile.
The order of operations matters more than it looks. The paper estimates $h$ on each day using only the PITs of months that had already finished by that day, so the physical density for tomorrow is a genuine forecast. Some of the literature (Bliss and Panigirtzoglou 2004, Schreindorfer 2025) fits the calibration map to the whole sample instead. That gives the statistically best reconciliation of the two densities after the fact, but nobody could have computed it in real time, so it can't be a forecasting model. The paper wants numbers an investor could actually have had.
Before trusting $\hat f_P$ for anything, the paper makes it compete. Three rivals: the raw risk-neutral density (skip the correction), a GARCH(1,1)-$t$ model (the workhorse volatility model, fed only past returns), and a historical kernel density (smooth the past returns and call that the forecast). The scoring rule is the one that rewards putting probability where the outcome lands.
The logarithmic score of a forecast density $\hat f_t$ for the return $R_{t+\tau}$ that occurred is $LS_t = \log \hat f_t(R_{t+\tau})$. Higher is better; a forecast that gave the outcome tiny probability scores very negatively.
Here's the contest, one month at a time: each forecast is scored by the height of its density where the month actually landed.
The paper also checks calibration: under a correct forecast the normal scores $z_t = \Phi^{-1}(u_t)$ should be independent standard normals, so it runs the Jarque–Bera test (right skewness and kurtosis?) and two of Berkowitz's likelihood-ratio tests (LR1: no autocorrelation? LR3: right mean, right variance, and no autocorrelation, all at once?). Here are its numbers, over 130 non-overlapping 30-day forecasts from November 2013 to March 2026.
| Model | Mean log score | SD of scores | Jarque–Bera $p$ | Berkowitz LR1 $p$ | Berkowitz LR3 $p$ |
|---|---|---|---|---|---|
| Calibrated physical | 0.845 | 0.95 | 0.52 | 0.17 | 0.45 |
| Raw risk-neutral | 0.798 | 0.98 | 0.27 | 0.18 | 0.38 |
| GARCH(1,1)-$t$ | 0.629 | 2.28 | < 0.001 | 0.049 | 0.003 |
| Historical KDE | 0.409 | 4.24 | < 0.001 | 0.031 | 0.11 |
Only the two option-based densities pass all three calibration tests, and the calibrated one scores highest with the least variation. Its lead over the raw risk-neutral density is statistically clear (an Amisano–Giacomini test of equal average scores gives $p = 0.0005$). Its lead over GARCH and history is bigger in size but not significant, because those two swing so wildly from month to month that the test loses power. Good enough: from here on, the paper uses $\hat f_P$.
A whole density per day is too much to regress on, so the paper boils each one down to its shape: how wide, which way it leans, how heavy the tails.
For a density with mean $\mu$ and central moments $\mu_k = \int (x - \mu)^k f(x)\, dx$, the volatility is $\sigma = \sqrt{\mu_2}$, the skewness is $\mu_3 / \sigma^3$, and the kurtosis is $\mu_4 / \sigma^4$. A normal distribution has skewness $0$ and kurtosis $3$.
Each number answers to its own dial. Watch them one at a time.
Here are the paper's summary statistics for the three quantities at the 30-day horizon, with volatility annualized and in percent. Nearly every density leaned left (even the 90th percentile of skewness is negative) and most had tails heavier than a bell curve, and the augmented Dickey–Fuller test says all three are stationary over time, so regressing on them is legitimate.
| Series | Mean | SD | 10% | Median | 90% |
|---|---|---|---|---|---|
| Volatility (%) | 36.46 | 17.61 | 22.46 | 33.10 | 51.33 |
| Skewness | −0.47 | 0.31 | −0.81 | −0.47 | −0.16 |
| Kurtosis | 3.43 | 0.80 | 2.78 | 3.26 | 4.21 |
Shape a density yourself and try to land all three numbers in the typical band.
Now the actual question. Each day gives yesterday's return and today's three expected moments. Regressing one on the other with least squares would answer "on average, how does a move change expected volatility?" The paper wants more than the average, for two reasons. First, a rise and a fall might do different things, so it splits the return into its positive and negative parts, $\text{Ret}^+_t = \max\{\text{Ret}_t, 0\}$ and $\text{Ret}^-_t = \min\{\text{Ret}_t, 0\}$, and gives each its own coefficient. (Watch the sign: following the paper, $\text{Ret}^-_t$ keeps its minus sign, so it's never positive and a bigger drop makes it more negative. The measure theory pages write $f^- = -\min\{f, 0\}$ instead, which is never negative.) Second, the response might be different on a calm day than on a day the market is already on edge, which is exactly what the average hides. Quantile regression keeps it.
For $u \in (0, 1)$, the check loss is $\rho_u(e) = u\,e$ for $e \geq 0$ and $\rho_u(e) = (u - 1)\,e$ for $e < 0$: a V with slope $u$ for positive errors and slope $u - 1$ for negative ones. The $u$-th conditional quantile regression chooses coefficients to minimize $\sum_t \rho_u\big(y_t - \langle \beta(u), x_t \rangle\big)$, where $x_t$ lists that day's regressors.
Strip away the regressors and fit a single number, and the check loss already does something surprising.
Find the number $q$ that minimizes $L(q) = \sum_i \rho_{0.7}(y_i - q)$ for the five values $1, 2, 4, 7, 11$.
With $u = 0.7$, a value above $q$ costs $0.7$ per unit of miss and a value below costs $0.3$. Try a few candidates:
$$\begin{aligned} L(4) &= 0.3(3 + 2) + 0.7(3 + 7) = 8.5, \\ L(7) &= 0.3(6 + 5 + 3) + 0.7(4) = 7, \\ L(11) &= 0.3(10 + 9 + 7 + 4) = 9. \end{aligned}$$To see that $7$ is the best, look at the slope. $L$ is piecewise linear, and moving $q$ up by a little adds $0.3$ for every value below $q$ and saves $0.7$ for every value above it. Between $4$ and $7$ there are three values below and two above, so the slope is $0.3 \cdot 3 - 0.7 \cdot 2 = -0.5$: still going down. Between $7$ and $11$ it's $0.3 \cdot 4 - 0.7 \cdot 1 = 0.5$: going up. So $q = 7$, and four of the five values (80%) sit at or below it, three (60%) strictly below: $7$ is the $0.7$ quantile of the data. With $u = 0.5$ the same argument lands on the median, $4$.
That wasn't luck. The minimizer always sits where the two costs balance.
For a random variable $Y$ with a continuous distribution, the constant $q$ that minimizes $\mathbb{E}[\rho_u(Y - q)]$ is the $u$-th quantile of $Y$. (With $u = \tfrac{1}{2}$ this is the familiar fact that the median minimizes the mean absolute error.)
Write $L(q) = \mathbb{E}[\rho_u(Y - q)] = u\,\mathbb{E}[(Y - q)^+] + (1 - u)\,\mathbb{E}[(q - Y)^+]$. Differentiating in $q$: the first term contributes $-u\,\mathbb{P}(Y > q)$ and the second $(1 - u)\,\mathbb{P}(Y < q)$. Setting $L'(q) = 0$ gives $(1 - u)\,\mathbb{P}(Y < q) = u\,(1 - \mathbb{P}(Y < q))$, so $\mathbb{P}(Y < q) = u$. Since $L$ is convex (it's an expectation of convex functions of $q$), this is the minimum. $\blacksquare$
Tilting the V toward $u = 0.9$ makes errors above the line nine times as costly as errors below it, so the fitted line climbs until only a tenth of the points sit above. That line describes the days when expected volatility was in its top decile among days with that size of move. Here's the whole fan.
Now tilt it yourself, and watch which points end up above the line.
The paper's regressions have more dials than the picture: for each quantile $u \in \{0.05, 0.10, \ldots, 0.95\}$ and each moment, a system like
$$\text{Vol}_t(u) = \alpha(u) + \sum_{l=0}^{2} \beta_l^{+}(u)\,\text{Ret}^{+}_{t-l} + \sum_{l=0}^{2} \beta_l^{-}(u)\,\text{Ret}^{-}_{t-l} + \sum_{l=1}^{2} \theta_l(u)\,\text{Vol}_{t-l} + \sum_{l=0}^{2} \lambda_l(u)\,\text{Skew}_{t-l} + \sum_{l=0}^{2} \varphi_l(u)\,\text{Kurt}_{t-l} + \varepsilon_t(u),$$with the same shape for skewness and kurtosis as the left-hand side. Today's return and two lags, the moment's own two lags, and the other two moments. Every variable is standardized first, so a coefficient reads "standard deviations of the moment per standard deviation of the regressor." Standard errors come from a circular block bootstrap: resample the days in blocks of 25 that wrap around the end of the sample, 5,000 times, so that day-to-day dependence survives the resampling.
Nineteen quantiles per coefficient means nineteen $t$-statistics per coefficient, and checking them one by one is a recipe for finding "significance" at a lucky few. The paper's statistical contribution is to test the curve $u \mapsto \beta(u)$ as a single object over a region $\mathcal{U}$ (the lower quantiles $[0.05, 0.35]$, the middle $[0.40, 0.60]$, the upper $[0.65, 0.95]$, or all of them).
The uniform significance test for a coefficient function $g(u)$ over a region $\mathcal{U}$ has null hypothesis $H_0$: there exists $u \in \mathcal{U}$ with $g(u) = 0$, against $H_1$: $g(u) \neq 0$ for every $u \in \mathcal{U}$. The statistic is the weakest point, $T_{\mathrm{obs}} = \min_{u \in \mathcal{U}} \left| \hat g(u) / \widehat{\mathrm{se}}(\hat g(u)) \right|$.
The weakest point needs a yardstick: how big could it get by luck alone? The bootstrap supplies one.
For bootstrap replication $b$ with re-estimated curve $g_b$, let $T^*_b = \max_{u \in \mathcal{U}} \left| (g_b(u) - \hat g(u)) / \widehat{\mathrm{se}}(\hat g(u)) \right|$, the largest standardized wobble anywhere in the region. The $p$-value is the share of replications with $T^*_b \geq T_{\mathrm{obs}}$. Rejecting when $p \leq \alpha$ keeps the chance of wrongly declaring the effect nonzero across the whole region at most $\alpha$ (as the sample grows).
Under $H_0$ some $u_0$ has $g(u_0) = 0$, so $|\hat g(u_0)|/\widehat{\mathrm{se}}$ is pure noise there, and $T_{\mathrm{obs}} \leq$ that noise. The bootstrap maximum $T^*_b$ is a sample from the distribution of the largest noise anywhere in the region, which dominates the noise at $u_0$. So $\mathbb{P}(T^* \geq T_{\mathrm{obs}})$ is at least the true probability of seeing a value as extreme as $T_{\mathrm{obs}}$ under $H_0$, whatever $u_0$ is: the test is conservative wherever the zero hides. A rejection is a single claim about the whole region (nonzero at every $u$), and to make it the weakest point has to beat the largest wobble anywhere, a stricter bar than any one quantile's own. Taking the max over the bootstrap replicates is the same idea as the sup-norm (Kolmogorov–Smirnov style) bands that cover a whole curve at once.
Here's the whole test on a made-up coefficient.
There's a second test in the paper for "are the tails more extreme than the middle?": compare the average $|\beta(u)|$ over a tail region with the average over the middle, $\Delta = \overline{|\beta|}_{\text{tail}} - \overline{|\beta|}_{\text{mid}}$, and get a one-sided $p$-value from the bootstrap in the same way. Same machinery, different statistic, and it's the one behind Hypothesis 5 below.
Now the numbers. Every variable was standardized, so a coefficient is in standard deviations, and turning one back into units a trader would recognize takes one multiplication.
In the volatility equation at the $u = 0.9$ quantile, the paper's coefficient on today's negative return is $\beta_0^-(0.9) = -0.1491$. Expected volatility has a standard deviation of $17.61$ percentage points, and $\text{Ret}^-$ has a standard deviation equal to a gross return of about $0.9844$. What does a one-standard-deviation drop do to expected volatility on a nervous day?
A one-standard-deviation drop (oil about $1.56\%$ lower) makes $\text{Ret}^-$ one standard deviation more negative, so the conditional $0.9$ quantile of volatility changes by $(-0.1491)(-1) = +0.1491$ standard deviations. In percentage points,
$$0.1491 \times 17.61 \approx 2.63 \text{ pp}.$$For comparison, at the median the coefficient on today's positive return is $0.0123$, and a one-standard-deviation rise adds only $0.0123 \times 17.61 \approx 0.22$ pp.
Here are the contemporaneous coefficients that matter most, from the volatility equation at the 30-day horizon, drawn from the paper's own table.
The paper states its findings as seven hypotheses. The first two are above: the calibrated density forecasts best, and the kernel is non-monotone. The rest are read off the uniform tests. Entries are the uniform tests' $p$-values, one per region; bold means rejected at 5%.
| Test (30-day horizon) | Moment | All | Low | Mid | High |
|---|---|---|---|---|---|
| H3 today's rise matters ($\beta_0^+ \neq 0$) | Volatility | 1.000 | 0.885 | 0.930 | 0.004 |
| Skewness | 1.000 | 0.774 | 0.978 | 0.000 | |
| Kurtosis | 1.000 | 0.894 | 0.996 | 0.004 | |
| H3 today's drop matters ($\beta_0^- \neq 0$) | Volatility | 0.059 | 0.022 | 0.000 | 0.000 |
| Skewness | 1.000 | 0.227 | 0.949 | 0.078 | |
| Kurtosis | 0.998 | 0.219 | 0.076 | 0.964 | |
| H4 rise and drop differ in size ($|\beta_0^+| - |\beta_0^-| \neq 0$) | Volatility | 0.208 | 0.083 | 0.000 | 0.000 |
| Skewness | 1.000 | 0.524 | 0.510 | 0.988 | |
| Kurtosis | 1.000 | 0.517 | 1.000 | 0.763 | |
| H6 yesterday's drop still matters ($\beta_1^- \neq 0$) | Volatility | 1.000 | 0.916 | 0.952 | 0.999 |
| Skewness | 0.505 | 0.043 | 0.001 | 0.267 | |
| Kurtosis | 0.421 | 0.015 | 0.001 | 0.224 | |
| H7 the moment's own lag ($\theta_1 \neq 0$) | Volatility | 0.000 | 0.000 | 0.000 | 0.000 |
| Skewness | 0.000 | 0.000 | 0.000 | 0.000 | |
| Kurtosis | 0.006 | 0.000 | 0.000 | 0.000 |
And the tail-extremeness test (H5), one-sided: is the average $|\beta|$ in a tail region larger than in the middle?
| Moment | rise, upper > middle | rise, lower > middle | drop, upper > middle | drop, lower > middle |
|---|---|---|---|---|
| Volatility | 0.001 | 0.501 | 0.001 | 1.000 |
| Skewness | 0.001 | 0.958 | 0.030 | 0.016 |
| Kurtosis | 0.001 | 0.970 | 0.343 | 0.258 |
Reading the tables with the coefficient signs from the regressions, here is the story the paper tells.
Notice what the W-shaped kernel and the quantile results are saying together. The kernel says the market prices both tails as disasters. The regressions say a move in either direction raises the expected size of the next move. Both are the same refusal to pick a side: in oil, "the price went up" is not good news or bad news, it's news.
The paper's conclusion is that no single story fits. Rises raise volatility (inverse leverage), drops raise it more (leverage), the effects grow with how nervous the market already is (heterogeneity), and only drops echo into the next day (behavioral). The crude oil market reacts to news the way a crowd does, not the way one textbook investor does, and the W-shaped kernel is the price list of that crowd's nightmares.
What I take from it, as the math person in the friendship, is the chain. A second derivative turns prices into odds. A ratio of densities turns odds into fear. A change of variables turns past surprises into the correction for that fear, and the correction is a histogram you can draw. A tilted absolute value turns "on average" into "at every slice." And a maximum over a bootstrap turns nineteen shaky $t$-tests into one honest one. None of those steps is finance; all of them are calculus and probability doing finance's work. That's the part I wanted on this site.