The last quarter century has seen the slow death of structural models in finance and the relentless rise of reduced form models. I have argued that this leads to models that are “over-calibrated to markets and under-grounded in fundamentals”, and was therefore quite happy to see Craig Pirrong revive structural models with his recent book on Commodity Price Dynamics.
Ironically, it was a paper based on a structural model that made it possible to jettison structural models. The 1985 paper by Cox, Ingersoll and Ross (“An Intertemporal General Equilibrium Model of Asset Prices”, Econometrica, 1985, 53(2), 363-384) took a structural model of a very simple economy and showed that asset prices must equal discounted values of the asset payoff after making a risk adjustment in the drift term of the dynamics of the state variables. This was a huge advance because it became possible for modellers to simply assume a set of relevant state variables, calibrate the drift adjustments (risk premia) to other market prices, and value derivatives without any direct reference to fundamentals at all.
Over time, reduced form models swept through the whole of finance. Structural (Merton) models of credit risk were replaced by reduced form models. Structural models of the yield curve (based on the mean reversion and other dynamics of the short rate) were replaced by the Libor Market Model (LMM). In commodity price modelling, fundamentals were swept aside, and replaced by an unobservable quantity called the convenience yield.
All this was useful and perhaps necessary because the reduced form models were eminently tractable and could be made to fit market prices quite closely. By contrast, structural models were either intractable or too oversimplified to fit market prices well enough. Yet, there is reason to worry that the use of reduced form models has gone beyond the point of diminishing returns. It is worth trying to reconnect the models to fundamentals.
This is what Pirrong is trying to do in the context of commodity prices. What he has done is to abandon the idea of closed form solutions and rely on computing power to solve the structural models numerically. I believe this a very promising idea though Pirrong’s approach stretches computing feasibility to its limits.
Pirrong regards the spot commodity price to be a function of one state variable (inventory denoted x) and two fundamentals (denoted by y and z, representing demand shocks with different degrees of persistence or a supply shock and a demand shock). As long as inventory is non zero, the spot price must equal the discounted forward price, where the forward price in turn satisfies a differential equation of the Black-Scholes type. The level of inventory is the result of an inter-temporal optimization problem.
Pirrong solves all these problems numerically using a discrete grid of values for x, y and z. Moreover, to use numerical methods, time (t) must also be discretized – Pirrong uses a time interval of one day and the forward prices are for one-day maturity. After discretization, the optimization becomes a stochastic dynamic programming problem. For each day on the grid, a series of problems have to be solved to get the spot price and forward price functions. For each value of inventory in the x grid, a two dimensional partial differential equation has to be solved numerically to get the grid of forward prices associated with that level of inventory. Then for each point in the x-y-z grid, a fixed point (or root finding) problem has to be solved to determine the closing inventory at that date. Once opening and closing inventories are known, the spot price is determined by equating supply and demand. All this has to be repeated for each date: the dynamic programming problem has to be solved recursively starting from the terminal date.
In this process, the computation of forward prices assumes a spot price function, and the spot price function assumes a forward price function. The solution of the stochastic dynamic programming problem consists essentially of iterating this process until the process converges (the new value of the spot price function is sufficiently close to the previous value).
Pirrong reports that the solution of the stochastic dynamic programming problem takes six hours on a 1.2GHz computer. To calibrate the volatility, persistence and correlation of the fundamentals to observed data, it is necessary to run an extended Kalman Filter and the stochastic dynamic programming problem has to be solved for each value of these parameters. All in all, the computational process is close to the limits of what is possible without massive distributed computing. Pirrong reports that when he tried to add one more state variable, the computations did not converge despite running for 20 days on a fast desktop computer.
Though the numerical solution used only one-day forward prices, it is possible to obtain longer maturity (one-year and two-year) forward prices as well as option prices by solving the Black-Scholes type partial differential equation numerically. Pirrong shows that models of this type are able to explain several empirical phenomena.
Perhaps, it should be possible to use models of this kind elsewhere in finance. Term structure models are one obvious problem with similarities to the storage problem.