Market prediction based on macroeconomic indicators - page 58

 

A clearer picture:


 
Vladimir:

Again, my method does not predict the S&P500. It predicts recessions. The 2020 recession is not over yet. There is no problem with the prediction.

...

To constructive dialogue. I should note, though, that the first line of the first post of this thread, in black and white, states the objective of the study: to predict the S&P500. Then, it talks about predicting the next quarter and describes step by step the approach to building the study. The recession is mentioned in passing (or rather, not mentioned at all).

Of course, it doesn't matter what is predicted, as long as it comes true).
 
Vladimir:

1. forecasters are selected based on their ability to predict recessions. The selection is made automatically, without my influence or opinion.

2. the valuation scale is whether the proposed buy&sell strategy is more profitable than buy&hold

3. the historical plots are limited to the depth of history of individual economic performance

The only possible criticism is that the historical results do not guarantee the accuracy of predicting recessions in the future. All the results of the chart shown have been fitted to history except for the last recession signal in December 2019.

For a constructive dialogue I suggest comparing the accuracy of my system/model with other fundamental or thechnical recession prediction systems. You can also compare the yield + drawdown of my system with other systems trading the S&P500.

I emphasize: my arguments are based on the first post of this thread, where the S&P500 forecasting method is described. I could miss some other posts in this thread, I do not comment them, I just believe, that the method is fully described on the first page.

1. I did not find this in the first post. The forecasting method described is aimed at predicting the next quarter of the S&P500. I did not read anything about the recession prediction method. If the recession prediction method is different from what is described, please state it (or give a link) so you can get an idea.

Also, if possible, describe in details the method of automatic selection of indicators, so that it completely removes the factor of subjectivity.

2. I don't understand this point. The description of the prediction method doesn't talk about specific strategies. (More precisely, the method itself is a strategy, but it is not specifically named).

3. So the full depth of history of each indicator is taken without any shortening?

...

I agree to compare the accuracy of your recession prediction system with others, just where do you get it from?
 

I ask simply: did your recession prediction system predict this recession and how long before it?

https://www.google.com/amp/s/ria.ru/amp/20200616/1572964400.html

Глубочайший спад: в США официально объявили о начале рецессии
Глубочайший спад: в США официально объявили о начале рецессии
  • 2020.06.16
  • Alexey Markun
  • ria.ru
МОСКВА, 16 июн — РИА Новости, Наталья Дембинская. С февраля американская экономика погрузилась в рецессию — впервые за 13 лет. Сокращение производства и рост безработицы просто катастрофические. Аналитики предупреждают: нынешний кризис, возможно, окажется даже хуже глобального финансового краха 2007-2009 годов.Скатились в рецессиюО том, что...
 
Реter Konow:

I ask simply: did your recession prediction system predict this recession and how long before it?

https://www.google.com/amp/s/ria.ru/amp/20200616/1572964400.html

Do you even read what you are commenting on before your comment-posts?

Vladimir wrote"This strategy gave a sell signal in December 2019. It hasn't given a buy signal yet. Apparently the market will go down." (с).

 
Vladimir:

So, the task is to predict the S&P 500 index based on available economic indicators.

Step 1: Find the indicators. The indicators are publicly available here: http://research.stlouisfed.org/fred2/ There are 240,000 of them. The most important one is GDP growth. This indicator is calculated every quarter. Hence our step is 3 months. All indicators on shorter timeframe are recalculated to 3 months, the rest (annual) are discarded. We also discard indicators for all countries except USA and indicators which do not have a deep history (at least 15 years). So we laboriously sift out a bunch of indicators, and get about 10 thousand indicators. Let's formulate a more specific task to predict the S&P 500 index one or two quarters ahead, having 10 thousand economic indicators with a quarterly period. I do everything in Matlab, but it could also be done in R.

Step 2: Convert all the data to a stationary form by differentiating and normalizing. There are a lot of methods. The main thing is that the transformed data can be recovered from the original data. No model will work without stationarity. The S&P 500 series before and after transformation is shown below.

Step 3: Choose a model. You could have a neural network. It can be a multivariablelinear regression. Can be a multi-variable polynomial regression. After trying linear and non-linear models, we conclude that the data is so noisy that there is no point in fitting a non-linear model as the y(x) graph where y = S&P 500 and x = one of 10 thousand indicators is almost a round cloud. Thus, we formulate the task even more concretely: to predict the S&P 500 index for one or two quarters ahead having 10 thousand economic indicators with a quarterly period, using multivariable linear regression.

Step 4: Select the most important economic indicators out of 10 thousand (reduce the dimension of the problem). This is the most important and difficult step. Suppose we take the history of the S&P 500 which is 30 years long (120 quarters). In order to represent the S&P 500 as a linear combination of various economic indicators, it is sufficient to have 120 indicators to accurately describe the S&P 500 during these 30 years. Moreover, the indicators can be absolutely any kind of indicators, in order to create such an accurate model of 120 indicators and 120 values of S&P 500. Thus, we shall reduce the number of inputs below the number of described function values. For example, we are looking for 10-20 most important indicators/inputs. Such tasks of describing data by a small number of inputs selected from a large number of candidate bases (dictionary) are called sparse coding.

There are many methods of selecting predictor inputs. I've tried them all. Here are the main two:

  1. We classify all 10k data by their predictive ability of the S&P 500. Predictive ability can be measured by correlation coefficient or mutual information.
  2. Let's look through all 10 thousand indicators one by one and select the one that has given the linear model y_mod = a + b*x1 describing S&P 500 with the minimum error. Then we select the second input again by trying the remaining 10 thousand -1 indicators so that it describes the residue y - y_mod = c + d*x2 with the minimum error. And so on. This method is called stepwise regression or matching pursuit.

Here are the first 10 indicators with the maximum correlation coefficient with the S&P 500:

Series ID Lag Corr Mut Info
'PPICRM 2 0.315 0.102
'CWUR0000SEHE' 2 0.283 0.122
'CES1021000001' 1 0.263 0.095
'B115RC1Q027SBEA' 2 0.262 0.102
'CES1000000034' 1 0.261 0.105
'A371RD3Q086SBEA' 2 0.260 0.085
'B115RC1Q027SBEA' 1 0.256 0.102
'CUUR0000SAF111' 1 0.252 0.117
'CUUR0000SEHE'. 2 0.251 0.098
'USMINE' 1 0.250 0.102

Here are the top 10 indicators with maximum mutual information with the S&P 500:

Series ID Lag Corr Mut Info
CPILEGSL 3 0.061 0.136
'B701RC1Q027SBEA' 3 0.038 0.136
'CUSR0000SAS' 3 0.043 0.134
'GDPPOT' 3 0.003 0.134
'NGDPPOT' 5 0.102 0.134
'OTHSEC' 4 0.168 0.133
3 'LNU01300060' 3 0.046 0.132
'LRAC25TTUSM156N' 3 0.046 0.132
'LRAC25TTUSQ156N' 3 0.046 0.131
'CUSR0000SAS' 1 0.130 0.131

Lag is the lag of the input series relative to the simulated S&P 500 series. As you can see from these tables, different methods of choosing the most important inputs result in different sets of inputs. Since my ultimate goal is to minimize model error, I chose the second method of selecting inputs, i.e. going through all inputs and selecting the input that gave the least error.

...

Regarding the question of the existence and influence of an unobservable subjective factor on the study, I suggest that you re-read these steps carefully and make sure that the subjectivity is either absent or does NOT change the final result.

Take into account that the indicators excluded (in step 4) from the analysis, in total, could have weights giving the opposite result, if you had taken them all into account. I mean, we can't know that, can we?
 
denis.eremin:

Do you even read what you are commenting on before your comment-posts?

Vladimir wrote"This strategy gave a sell signal in December 2019. No buy signal so far. Apparently the market will go down." (с).

I'm reading from my phone, I might have missed it.

Yes, on page 55. My first post is on 56. I read the first one, that describes the essence of the forecasting method and skipped the rest of them, because I'm interested in its essence. If it (the essence) has changed over the years (perhaps because Vladimir started talking about recession, about which there is nothing in the first post), then I am talking about the method of the first post.
 
What recession can the states talk about when they print the world's currency, buy everything in the world with it and pay it back in debt. In the rest of the world there is no production left and no currency left. The domestic means of production in the states rise in value. The population doesn't suffer, as purchasing power is maintained by the printing press. Inflation is carried out of the country. Savings in dollars in therest of the worldtend inversely to the S&P 500 index.
 
Реter Konow:
On the question of the existence and influence of an invisible subjective factor on the study, I suggest you re-read these steps carefully and make sure that the subjectivity is either absent or does NOT change the final result...
If my opponent in this topic would be a "sophisticated" philosopher, he would understand that I have trapped him by the question of subjectivity of "objective" research, from which there is no way to get rid of, he would ask me a counter question - "and how do you imagine absolutely objective research?", to which I would have to answer that I do not imagine any such option, because conditions of ANY research are set by the concept of the researcher and this factor cannot be avoided. In the end, together we would conclude that in forecasting we should not rely so much on the method of data analysis itself, but rather on personal subjectivity, which can be right in spite of all the "objective" indicators in the research.

Bet on the Personality first and the indicators considered in the analysis second, for rightness can be invariant and scientifically inexplicable. Such personalities have been and will continue to be in history.
 
Реter Konow:
... In the end, together we would come to the conclusion that in forecasting one should not rely so much on the method of data analysis itself, but rather on personal subjectivity, which can be right against all the "objective" indicators in the study.

Bet on the Personality first and the indicators considered in the analysis second, for rightness can be invariant and scientifically inexplicable. Such personalities have been and will continue to be in history.
I will make a clarification here, so that the reader does not think that I am leading him to mysticism (well, maybe just a little).

And so:

Personal subjectivity in analysis/research must be localised and clearly circumscribed. We need to be clear about where and why we are forced to make subjective assumptions. We need to answer the question of why we are willing to accept this degree of speculativeness. However, our analysis/research must strive for maximum objectivity, experimental validity, facts and verifications, but since sub-objectivity is not inevitable, we must elaborate criteria which indicate that we can rely on it.


That means (figuratively), in every study/analysis, numerical series, formulas and models, add an "I think so" parameter and count with it. It will be more accurate.