Bubble Measure and Long-Short Spread in the Simulator

Introduction. Here I talk about improvement of my financial simulator. So far, I have the following factors:

  • BAA corporate bond rate, average December
  • Annual volatility, S&P 500

I decided to include two more important factors:

  • A bubble measure, which is an improvement over Robert Shiller’s cyclically adjusted price-earnings ratio (CAPE), for which he got a Nobel Prize in Economics. We discussed it here and here and here.
  • The long-short spread between 10-year and 3-month (average December) Treasury rates, which is often quoted as an important indicator. For example, if it is negative (inverted yield curve), then a recession is looming. We discussed it here and here and here.

We will now use annual earnings of S&P for our research. This is important, since it connects stock returns with fundamentals. This is similar to computing bond returns using bond rates. Robert Shiller used this comparison for his work. And we use this comparison to make our valuation measure. But, of course, stocks are much more volatile than bonds. So it’s harder to model.

Since we covered so much in previous posts, here we will be brief. For the person who wants to know details, we refer to GitHub repository.

Results. 1. First, recall the autoregression of order 1 for annual volatility:

 \ln V(t) = \alpha + \beta \ln V(t-1) + W(t).

Recall that  \alpha = 0.847850, \beta = 0.620146.

2-3. Then, modify the autoregression for log BAA rate  R(t) to include spreads:  S(t). This is vector autoregression of order 1:

 \begin{bmatrix} \ln R(t) \\ S(t) \end{bmatrix}

It does NOT include volatility. It has intercept and the slope matrix

 \begin{bmatrix} -0.263745 \\ 0.151941 \end{bmatrix}

 \begin{bmatrix} 1-0.471137 & 0.502590 \\ -0.043837 & 1-0.049088 \end{bmatrix}

4. Model annual earnings  E(t) by considering its growth:  G(t) = \ln E(t) - \ln E(t-1). We model this as a regression

 G(t) = a + bS(t-1) + k(R(t) - R(t-1)) + cV(t) + V(t)Z(t).

As usual, we fit it after dividing by volatility. We have

 a = 7.756497, c = -0.784163, b = 4.786272, k = 3.720972.

5. Next, we consider the bubble measure  B(t) computed as in the above blog posts, with 10-year averaging window, and without using volatility. We get for  \gamma = -0.02138 and  \theta = 1 - 0.1901:

 B(t) = \gamma + \theta B(t-1) + U(t).

6. We fit the corporate bond returns (geometric) denoted by  Q_0(t) in the same way as above. Namely,

 100\cdot Q_0(t) - R(t-1) = h_0 -m_0(R(t) - R(t-1)) + \delta_0(t).

This makes sense in the context of bond markets, even though we use geometric instead of arithmetic returns here. Note that this does not use volatility. Similar to the above post, we see:  h_0 = -1.661125,\, m_0 = 5.588353.

7. Next, we fit the geometric Standard & Poor 500 returns  Q_1(t) by dividing it by volatility  V(t). We also do regression versus

 B(t-1), S(t-1), R(t) - R(t-1), V(t).

 Q_1(t) = h_1 - m_1(R(t) - R(t-1)) - a_1B(t-1) - b_1S(t-1) + cV(t) + V(t)\delta_1(t).

The quantity  m_1 plays the role of the duration: Dependence upon the change in interest rates. This coefficient is negative because returns of stocks and bonds decrease when interest rates increase. Next,  a_1 is the coefficient for the bubble measure. Of course, this is also negative, since being in a bubble implies low future returns. Same is true for the long-short spread, as discussed at the top of this post. Numerical values of coefficients are:

 h_1 = 26.851013, m_1 = 7.823798, c = -1.356810, a_1 = 16.439790, b_1 = 3.411985.

8. Finally, for international stocks we do the same. Thus we write this regression as

 Q_2(t) = h_2 - m_2(R(t) - R(t-1)) - a_2B(t-1) + c_2V(t) + V(t)\delta_2(t).

Note that  m_2 is still the duration. Although  R(t) is BAA rate, which is the USA, but it influences the international stocks as well. Same for the bubble measure. Numerical values of coefficients are:

 h_2 = 25.607625, m_2 = 4.081440, c_2 = -1.919254, a_2 = 12.617889.

Remark. In the regression for earnings growth, we tried  S(t) - S(t-1) instead of  S(t-1) , but the p-value for the Student test is too large. Also, we tried  R(t-1) instead of  R(t) - R(t-1) , but the p-value for the Student test is too large. We used covariates in linear regressions if  p < 20\%. Similarly, for the international stocks, we found that spread  S(t-1) is not statistically significant.

Innovations. Thus we have 8 (eight) innovation series. Only  \delta_i(t) for  i = 0, 1, 2, can be modeled as Gaussian. But all of them, judging by the autocorrelation function for  \delta_i and for  |\delta_i| and other tests, can be modeled as independent identically distributed random variables.

I do not have energy to present all these plots for each innovation series. But below is the table. Here, ACF is the L1 norm for the first 5 lags of the autocorrelation function values. Kurtosis is normalized so for normal distribution it is zero. Of course, the same is true for skewness.

SeriesLengthSkewnessKurtosisShapiro-Wilk pJarque-Bera pACF original valuesACF absolute values
Volatility960.4010.4010.4010.4010.4010.237
BAA rate970.0081.7540.0080.0020.3750.655
Long-short spread971.0583.3820.0000.0000.4550.468
Earnings growth970.6142.9030.0000.0000.4740.253
Bubble measure97-0.8161.1020.0030.0000.2910.608
US corporate bond returns520.1930.2380.8570.8000.8780.706
US stock returns970.0390.1570.3440.9400.4130.590
International stock returns55-0.015-0.2020.9410.9530.5270.331

Covariance matrix

 \begin{array}{lrrrrrrrr} \textsc{Series} & \text{vol} & \text{spread} & \text{baa-rate} & \text{earn-growth} & \text{bubble} & \text{usa-ret} & \text{intl-ret} & \text{bond-ret} \\ \text{vol} & 0.1342 & 0.0179 & 0.0134 & -0.1393 & -0.0273 & -0.0253 & -0.0316 & 0.0724 \\ \text{spread} & 0.0179 & 1.0797 & -0.0270 & -0.1194 & -0.0106 & -0.1961 & -0.2815 & -0.3577 \\ \text{baa-rate} & 0.0134 & -0.0270 & 0.0156 & -0.0398 & -0.0120 & -0.0151 & -0.0008 & -0.1121 \\ \text{earn-growth} & -0.1393 & -0.1194 & -0.0398 & 3.1196 & -0.0136 & 0.3457 & 0.4155 & -1.1972 \\ \text{bubble} & -0.0273 & -0.0106 & -0.0120 & -0.0136 & 0.0344 & 0.1699 & 0.0914 & 0.1133 \\ \text{usa-ret} & -0.0253 & -0.1961 & -0.0151 & 0.3457 & 0.1699 & 1.8470 & 0.7857 & 0.9502 \\ \text{intl-ret} & -0.0316 & -0.2815 & -0.0008 & 0.4155 & 0.0914 & 0.7857 & 2.9181 & -0.3106 \\ \text{bond-ret} & 0.0724 & -0.3577 & -0.1121 & -1.1972 & 0.1133 & 0.9502 & -0.3106 & 7.0280 \\ \end{array}

Correlation matrix

 \begin{array}{lrrrrrrrr} \textsc{Series} & \text{vol} & \text{spread} & \text{baa-rate} & \text{earn-growth} & \text{bubble} & \text{usa-ret} & \text{intl-ret} & \text{bond-ret} \\ \text{vol} & 1.0000 & 0.0472 & 0.2919 & -0.1800 & -0.4234 & -0.0516 & -0.0493 & 0.0725 \\ \text{spread} & 0.0472 & 1.0000 & -0.2082 & -0.0544 & -0.0575 & -0.1388 & -0.1304 & -0.1043 \\ \text{baa-rate} & 0.2919 & -0.2082 & 1.0000 & -0.1510 & -0.5435 & -0.0890 & -0.0036 & -0.3101 \\ \text{earn-growth} & -0.1800 & -0.0544 & -0.1510 & 1.0000 & -0.1304 & 0.1204 & 0.1036 & -0.1878 \\ \text{bubble} & -0.4234 & -0.0575 & -0.5435 & -0.1304 & 1.0000 & 0.7038 & 0.3467 & 0.2714 \\ \text{usa-ret} & -0.0516 & -0.1388 & -0.0890 & 0.1204 & 0.7038 & 1.0000 & 0.3705 & 0.2817 \\ \text{intl-ret} & -0.0493 & -0.1304 & -0.0036 & 0.1036 & 0.3467 & 0.3705 & 1.0000 & -0.0701 \\ \text{bond-ret} & 0.0725 & -0.1043 & -0.3101 & -0.1878 & 0.2714 & 0.2817 & -0.0701 & 1.0000 \\ \end{array}

See below the p-values for the Student T-test for null hypothesis which is zero correlation between series of innovations.

 \begin{bmatrix} 1 & 65 & 0 & 8 & 0 & 62 & 72 & 61 \\ 65 & 1 & 4 & 60 & 58 & 17 & 34 & 46 \\ 0 & 4 & 1 & 14 & 0 & 39 & 98 & 3 \\ 8 & 60 & 14 & 1 & 14 & 24 & 45 & 18 \\ 0 & 58 & 0 & 14 & 1 & 0 & 1 & 5 \\ 62 & 17 & 39 & 24 & 0 & 1 & 1 & 4 \\ 72 & 34 & 98 & 45 & 1 & 1 & 1 & 62 \\ 61 & 46 & 3 & 18 & 5 & 4 & 62 & 1 \\ \end{bmatrix}

Published by


Responses

  1. Simulator Final Update – My Finance

    […] updated the online simulator to include the bubble measure involving earnings growth, and the long-short spread. The previous version […]

    Like

  2. Autoregression Simplification – My Finance

    […] all residuals analysis, instead referring the reader to the new GitHub repository, but results are almost the same as before. If I have time, I will write a detailed description of analysis of residuals. Next, we need to move […]

    Like

Leave a comment