Working in MATLAB instead of python is like speaking French instead of English. Great if you want to step back in time. But not the most helpful language for our time. Python is definitely the lingua franca of the numerically-literate today. It is also very elegant. And free. So after years of paying through my nose for MATLAB toolboxes, I’m switching to python. Thought I’d share a bit of code documenting risk appetite as the controlling feature for understanding daily fluctuations in asset prices.
The small fry aren’t the marginal investors in financial assets. If you put your hands into the box containing all trades, the odds are overwhelming that the trade you pull out will have a market-based intermediary on both sides. More precisely, on one side you will find a broker-dealer — Wall Street sensu stricto — and on the other you will find an institutional asset manager. Dealers make markets by standing ready to buy and sell tradable securities at posted prices. Dealers’ willingness to absorb the order flow on their own books without immediately looking for an off-setting trade is market liquidity — fair weather market-making by high frequency firms notwithstanding. But dealers provide something even more important than liquidity: the biggest consumer of dealer balance sheet capacity is the provision of leverage to non-dealer counterparties. Fluctuations in the aggregate balance sheet capacity of US securities broker-dealers is what drives asset prices. Asset returns reflect compensation for the risk that dealer balance sheet capacity may shrink and drive asset prices closer to the ground.
Fluctuations in aggregate balance sheet capacity can only be determined in an accounting sense with a great deal of noise and quite after the fact. The Federal Reserve publishes data on dealer balance sheets at the quarterly frequency. Although this data is “dressed up” by the dealers, exposure to fluctuations in balance sheet ratios, constructed from this data, is priced into the cross-section of asset returns. In my earlier paper, I investigated the diachronic pattern of the price of balance sheet capacity. What I found was that the premium associated with this risk dwarfs the Fama-French premia, not just in the unconditional cross-section of expected excess returns, but even dynamically.
There is a huge problem with intermediary asset pricing. The problem is this: It is not clear how one may go about determining this all-controlling state-of-the-world variable on a day-today basis. For while patient investors may be willing to hold a systematic portfolio over many quarters, dealers aggressively manage their balance sheets at a daily frequency. The dealers keep system time — the book passes from Hong Kong to London to New York. So accounting data only takes us so far.
Is it possible to extract the signal for risk-appetite from asset price fluctuations? I think I figured it out.
A dealer’s probability of default is the product of systematic volatility and their own leverage. Dealers respond to innovations in volatility by adjusting their leverage to maintain a target probability of default. They respond to volatility shocks by shrinking their balance sheets, which generates more volatility. The procyclical pattern of volatility and leverage creates the well-known risk on-risk off cycle in asset prices. In a risk-off, volatility jumps and dealers respond by buying insurance against further spikes in volatility. More precisely, dealers bid up the short end of VIX futures so that, in a risk-off, the term structure inverts. This happens every single time. The signal is contained in the slope of volatility futures. We define SLOPE to be difference between daily closing index values of VIX and VIX3M.
We show that SLOPE is priced in to the cross-section of expected excess returns of US stocks. Our python code pulls volatility prices from the CBOE’s website and a hundred US stock portfolios sorted on market equity (size) and book-to-market ratio (value), along with the Fama-French factors — market (MKT), size (SMB), and value (HML) — and the risk free rate of return from Kenneth French’s website. We have data on more than 3000 trading days from December 2007. Whether one uses robust regression (which yields an even larger price of risk) or OLS, standard 2-pass regressions show that the risk premium on SLOPE dwarfs the premia on MKT, SMB and HML. (The code should automatically save the following graph as “Prices.png.” Please let me know if it does not.)
Here’s what this graph shows: that exposure to fluctuations in SLOPE does a better job of explaining the variation in these portfolios than the very factors on which the portfolios have been sorted! You could not possibly construct a harder case for the intermediary theory. You should not only ‘bet against beta’, you should also bet against size and value. If you really want to make money though, you should bet on SLOPE.
The second pass cross-sectional regression results are displayed below. The coefficients are the prices of risk in the order: the zero-beta rate of expected excess returns, SLOPE, MKT, SMB, and HML. All factors have been standardized to have mean zero and variance one using the interquartile range to estimate the scale parameter.
The main limitation of dynamic asset pricing is that one is dependent on the availability of price-of-risk factors that can span the prices of risk. By construction, price-of-risk factors predict future returns. No wonder the signal-to-noise ratio is so low. In order to understand the history of the diachronic fluctuations in asset prices, we’re better off looking at prices from rolling 2-pass regressions. We estimate factor prices along a quarterly moving window of 63 trading days. The price of systematic risk is given by the next graph. This is the risk on-risk off cycle.
The comparison with the prices of the Fama-French factors is embarrassing for the latter, especially because these hundred portfolios have been sorted on size and value. These stock returns covary more with SLOPE than MKT, SMB and HML because risk premia reflect compensation for bearing systematic risk defined by the short-term premium becoming large as dealers scurry to buy insurance in a risk-off.
SLOPE is a stronger measure of dealer risk appetite than estimated premia in volatility or other asset classes because of measurement error in the latter. We have previously looked at systematic trading of VIX futures. There’s a lot of money to be made by trading this signal.