In my last post, I noted that we could specify the vector field of a multivariate Ornstein-Uhlenbeck process to be cyclical so as to correspond to the seasonality found in certain financial and commodity markets. As an example, I compared the path of expected values generated by a simple rotational vector field to the prices of gasoline and ultra low sulfur diesel futures contracts traded on NYMEX. But while the two sets of expected values were similar, I noted that this approach falls short in one important respect.
The problem with this approach is that the prices produced by this model aren’t stationary. If we were to simulate prices using this model, we’d find that the spreads eventually would drift away from typical values without bound, with variances that continue to increase without bounds over time. That's not the behavior we observe when analyzing RBOB and ULSD crack spreads and futures prices, which tend to be mean-reverting.
Recall the comment in our last post that diffusion processes can be viewed as scaled Brownian motions dropped into a vector field. With that in mind, let’s consider what happens when we drop a bivariate arithmetic Brownian motion into various vector fields.
If we drop it into a vector field without any forces at all, it will evolve as a random walk in the two-dimensional plane, drifting away from its origin without bounds over time. The process will be non-stationary, with no limiting covariance matrix and with no limiting probability density.
If we instead place our arithmetic Brownian motion into a rotational vector field, it still has the characteristic of a random walk – albeit a random walk traveling in a rotational vector field. In other words, the rotational vector field has a tendency to make our Brownian particle travel around the origin along with the flow, but it doesn’t introduce any forces that would tend to keep the Brownian particle in the vicinity of the origin. It doesn’t help make the Brownian motion stationary.
As it happens, it is possible to specify a vector field that introduces both seasonal patterns and stationarity. In particular, we can specify a vector field that looks like water spinning around a drain, as shown below.
This vector field has a tendency to cause our Brownian particle to travel around the origin with the flow, but it also has a tendency to push the particle back toward the origin. In this way, the particle is more likely to stay in the general vicinity of the origin than to drift away without bound. And consistent with this, the variance of the process has a limiting value over time. In other words, there is a long-term stationary density for this process, with its mean at the origin and with a well-defined, finite covariance matrix.
So have we found our model for the gasoline and diesel crack spreads? Well….as it happens, the ‘drain' vector field causes the amplitude of the cyclical expected values to decline over time. For example, the path of expected values is shown in the graph below.
So the expected path of the spread between the two variables exhibits a similar dampening over time, as shown in the next graph.
Note that this dampening in the amplitude of the cycle is not observed in the spread of futures prices that we saw in our last post.
So our rotational vector field succeeded in mimicking the path of expected values observed in the RBOB and ULSD futures markets, but it didn’t give us a stationary probability density. And our ‘drain' vector field succeeded in giving us both stationarity and seasonality – but with a dampening in the amplitude that isn’t observed in the futures market.
Is this a lost cause, then? Not at all. But I’ll save the solution for the next post.
Комментарии