거시경제 지표에 기반한 시장 예측 - 페이지 12

 
avtomat :


"당신의 대학"이 당신에게 가르친 제한된 모델 클래스에 대해서만 사실입니다.


나는 대학에서 그것을 공부하지 않았다. 독학했어요. 나는 내 두뇌로 생각합니다. 나는 모든 것을 질문하고 확인합니다. 비정상 데이터에 대한 모델을 얻으려는 여러 번의 시도가 실패한 후에 고정 자체에 대한 필요성이 대두되었습니다. 세세하게 증명할 수는 있지만 모두가 각자의 의견으로 남을 것이기 때문에 시간이 아쉽습니다.

이 스레드에 대한 나의 관심은 Steve Keen 교수가 자신의 경제 모델이 2008년 붕괴를 예측한 방법에 대해 자랑했지만 Fed Bank의 DSGE 모델은 아무 것도 예측하지 못한 시장 뉴스를 본 데서 비롯되었습니다. DSGE 모델과 Keene 모델을 공부하기 시작했습니다. 내 길을 따르고 싶은 사람들을 위해 DSGE 모델에 대한 이 Matlab 기사부터 시작하는 것이 좋습니다. FRED 데이터베이스에서 경제 데이터를 로드하기 위한 코드를 포함하여 필요한 모든 코드가 있습니다.

http://www.mathworks.com/help/econ/examples/modeling-the-united-states-economy.html

Fedov 모델은 다음 예측 변수를 사용합니다.

 % FRED 시리즈 설명
%---------------------------------------------------------- -- ------------------------
%COE 직원에게 수십억 달러의 보상금 지급
%CPIAUCSL 소비자 물가 지수
% FEDFUNDS 유효 연방 기금 비율
% GCE 정부 소비 지출 및 수십억 달러 투자
% GDP 10억 달러의 국내 총생산
% GDPDEF 국내총생산 가격 디플레이터
% GPDI 총 민간 국내 투자($ billion)
% GS10 국고채 10년 수익률
% HOANBS 비농업부문 근로시간 지수
% M1SL M1화폐 공급(좁은 화폐)
% M2SL M2 통화 공급(광의 통화)
% PCEC 개인 소비 지출($ billion)
% TB3MS 3개월 국고채 수익률
% UNRATE 실업률


그런 다음 Steve Keane의 YouTube 강의를 시청하세요.

https://www.youtube.com/watch?v=aJIE5QTSSYA

https://www.youtube.com/watch?v=DDk4c4WIiCA

https://www.youtube.com/watch?v=wb7Tmk2OABo

그의 기사를 읽으십시오.

Modeling the United States Economy - MATLAB & Simulink Example
  • www.mathworks.com
The Smets-Wouters model (2002, 2004, 2007) is a nonlinear system of equations in the form of a Dynamic Stochastic General Equilibrium (DSGE) model that seeks to characterize an economy derived from economic first principles. The basic model works with 7 time series: output, prices, wages, hours worked, interest rates, consumption, and...
 
minsky 프로그램(경제 시뮬레이터) 은 첨부 파일에 있으며 사이트는 출처이며 사이트에는 프로그램 작업을 설명하는 많은 비디오 및 기타 많은 자료가 있습니다.

/go?link=http://www.ideaeconomics.org/minsky/

파일:
 
ProfSteveKeen
ProfSteveKeen
  • www.youtube.com
Rethinking Economics at the London School of Economics I was invited by the Rethinking Economics student association at the London School of Economics to give a talk about Greece, Austerity, Post Keynesian Economics and anticipating the crisis. There...
 
그리고 저개발자를 위해 읽을 수 있는 언어로
 
Vinin :
그리고 저개발자를 위해 읽을 수 있는 언어로

독일인들에게:)

https://translate.google.com.ua/translate?sl=ko&tl=ru&js=y&prev=_t&hl=ru&ie=UTF-8&u=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FSteve_Keen&edit-text=

 
gpwr :

따라서 작업은 사용 가능한 경제 지표를 기반으로 S&P 500 지수를 예측하는 것입니다.

1단계: 지표를 찾습니다. 지표는 http://research.stlouisfed.org/fred2/에서 공개적으로 사용할 수 있습니다. 그 중 240,000개가 있습니다. 가장 중요한 것은 GDP 성장률입니다. 이 지표는 분기마다 계산됩니다. 따라서 우리의 단계 - 3 개월. 더 짧은 기간의 모든 지표는 3개월 동안 다시 계산되고 나머지(연간)는 폐기됩니다. 또한 미국을 제외한 모든 국가의 지표와 역사가 깊지 않은 지표(최소 15년)는 버립니다. 따라서 힘든 작업으로 많은 지표를 걸러내고 약 10,000개의 지표를 얻습니다. 우리는 분기 기간 동안 10,000개의 경제 지표를 사용할 수 있도록 S&P 500 지수를 1~2분기 전에 예측하는 보다 구체적인 작업을 공식화합니다. R에서는 가능하지만 MatLab에서 모든 작업을 수행합니다.

2단계: 미분 및 정규화를 통해 모든 데이터를 고정된 형태로 변환합니다. 여기에는 많은 방법이 있습니다. 가장 중요한 것은 변환된 데이터에서 원본 데이터를 복원할 수 있다는 것입니다. 고정성이 없으면 어떤 모델도 작동하지 않습니다. 전환 전과 후의 S&P 500 시리즈는 아래와 같습니다.

3단계: 모델을 선택합니다. 아마도 신경망일 것입니다. 다변수 선형 회귀 를 수행할 수 있습니다. 다변수 다항식 회귀를 수행할 수 있습니다. 선형 및 비선형 모델을 테스트한 후 데이터가 너무 시끄럽기 때문에 비선형 모델을 입력하는 것이 의미가 없다는 결론에 도달했습니다. y = S&P 500이고 x = 10,000개 지표 중 하나인 y(x) 그래프는 거의 원형에 가까운 구름입니다. 따라서 우리는 작업을 훨씬 더 구체적으로 공식화합니다. 다변수 선형 회귀를 사용하여 분기별 10,000개의 경제 지표가 있는 S&P 500 지수를 1~2분기 전에 예측합니다.

4단계: 10,000에서 가장 중요한 경제 지표를 선택합니다(문제의 차원 축소). 가장 중요하고 어려운 단계입니다. S&P 500의 역사를 30년(120분기)이라고 가정해 보겠습니다. S&P 500을 다양한 종류의 경제 지표의 선형 조합으로 나타내려면 이 30년 동안 S&P 500을 정확하게 설명할 수 있는 120개의 지표로 충분합니다. 더욱이, 120개의 지표와 120개의 S&P 500 값의 정확한 모델을 생성하기 위해 지표는 절대적으로 무엇이든 될 수 있으므로 설명된 함수 값의 수 이하로 입력 수를 줄여야 합니다. 예를 들어, 우리는 10-20개의 가장 중요한 입력 지표를 찾고 있습니다. 엄청난 수의 후보 기반(사전)에서 선택된 적은 수의 입력으로 데이터를 설명하는 이러한 작업을 희소 코딩(sparse coding)이라고 합니다.

예측 변수 입력을 선택하는 방법에는 여러 가지가 있습니다. 나는 그들 모두를 시도했다. 다음은 주요 두 가지입니다.

  1. 10,000개의 데이터를 모두 S&P 500 예측력으로 분류하고 예측력은 상관계수나 상호 정보로 측정할 수 있습니다.
  2. 하단에 있는 10,000개의 지표를 모두 살펴보고 가장 작은 오차로 S&P 500을 설명하는 선형 모델 y_mod = a + b*x1을 제공하는 지표를 선택합니다. 그런 다음 나머지 10,000 -1 표시기를 정렬하여 두 번째 입력을 다시 선택하여 오류가 가장 적은 나머지 y - y_mod = c + d*x2를 설명합니다. 등. 이 방법을 단계적 회귀 또는 일치 추적이라고 합니다.

다음은 S&P 500과의 상관 계수가 가장 높은 상위 10개 지표입니다.

시리즈 ID 지연 코르 뮤트 정보
'PPICRM' 2 0.315 0.102
'CWUR0000SEHE' 2 0.283 0.122
'CES1021000001' 하나 0.263 0.095
'B115RC1Q027SBEA' 2 0.262 0.102
'CES1000000034' 하나 0.261 0.105
'A371RD3Q086SBEA' 2 0.260 0.085
'B115RC1Q027SBEA' 하나 0.256 0.102
'CUUR0000SAF111' 하나 0.252 0.117
'CUUR0000SEHE' 2 0.251 0.098
'USMINE' 하나 0.250 0.102

다음은 S&P 500과 가장 상호 정보가 풍부한 상위 10개 지표입니다.

시리즈 ID 지연 코르 뮤트 정보
'CPILEGSL' 0.061 0.136
'B701RC1Q027SBEA' 0.038 0.136
'CUSR0000SAS' 0.043 0.134
'GDPPOT' 0.003 0.134
'NGDPOT' 5 0.102 0.134
'오섹' 4 0.168 0.133
'LNU01300060' 0.046 0.132
'LRAC25TTUSM156N' 0.046 0.132
'LRAC25TTUSQ156N' 0.046 0.131
'CUSR0000SAS' 하나 0.130 0.131

지연은 시뮬레이션된 S&P 500 시리즈에 대한 입력 시리즈의 지연입니다. 이 표에서 볼 수 있듯이 가장 중요한 입력을 선택하는 다양한 방법으로 인해 다른 입력 세트가 생성됩니다. 최종 목표는 모델 오류를 최소화하는 것이므로 두 번째 입력 선택 방법, 즉 모든 입력의 열거 및 가장 적은 오류를 제공한 입력의 선택.

5단계: 모델의 오류 및 계수를 계산하는 방법을 선택합니다. 가장 간단한 방법은 COEX 방법이므로 이 방법을 사용한 선형 회귀가 널리 사용됩니다. RMS 방법의 문제점은 이상값에 민감하다는 것입니다. 이러한 이상치는 모델의 계수에 상당한 영향을 미칩니다. 이 민감도를 줄이기 위해 제곱 오차의 합 대신 절대 오차 값의 합을 사용하여 최소 계수(LSM) 또는 강력한 회귀 방법을 사용할 수 있습니다. 이 방법은 선형 회귀와 달리 모델 계수에 대한 분석 솔루션이 없습니다. 일반적으로 모듈은 평활/미분 가능한 근사 함수로 대체되며 솔루션은 수치적 방법으로 수행되며 오랜 시간이 걸립니다. 나는 두 가지 방법(린 회귀 및 MHM)을 모두 시도했지만 MHM의 많은 이점을 알아차리지 못했습니다. MHM 대신 우회했습니다. 고정 데이터를 미분하여 얻는 두 번째 단계에서 비선형 정규화 연산을 추가했습니다. 즉, 원래 계열 x[1], x[2], ... x[i-1], x[i] ...가 먼저 차분 계열 x[2]-x[1] 로 변환됩니다. .. x [i]-x[i-1] ... 그런 다음 각 차이를 sign(x[i]-x[i-1])*abs(x[i]-x[ i-1] )^u, 여기서 0 < u < 1. u=1의 경우 특이치에 대한 민감도가 있는 고전적인 COSE 방법을 얻습니다. u=0에서 입력 계열의 모든 값은 이상치가 거의 없는 이진 값 +/-1로 대체됩니다. u=0.5의 경우 MNM에 가까운 값을 얻습니다. u의 최적 값은 0.5와 1 사이에 있습니다.

데이터를 고정 형식으로 변환하는 인기 있는 방법 중 하나는 계열 값을 이러한 값의 로그 차이로 바꾸는 것입니다. log(x[i]) - log(x[i-1]) 또는 log(x[i]/x[i-1]). 10,000개 항목의 사전에는 0과 음수 값이 있는 행이 많기 때문에 이러한 변환을 선택하는 것은 제 경우에 위험합니다. 로그는 또한 이상값에 대한 RMS 방법의 감도를 줄이는 이점이 있습니다.본질적으로 내 변환 함수 sign(x)*|x|^u는 log(x)와 동일한 목적을 갖지만 0과 관련된 문제는 없습니다. 음수 값.

6단계: 새로운 입력 데이터를 대체하고 이전 히스토리 세그먼트에서 선형 회귀로 찾은 동일한 모델 계수를 사용하여 모델 출력을 계산하여 모델 예측을 계산합니다. 여기서 경제 지표와 S&P 500의 분기별 가치는 거의 동시에 나온다는 점을 명심하는 것이 중요합니다(정확도 3개월). 따라서 다음 분기의 S&P 500을 예측하려면 S&P 500의 현재 분기별 가치와 최소 1분기 지연된 항목 사이에 모델을 구축해야 합니다(지연>=1). 한 분기 앞서 S&P 500을 예측하려면 S&P 500의 현재 분기별 가치와 최소 2분기 지연된 항목 사이에 모델을 구축해야 합니다(지연>=2). 등. 2보다 큰 지연이 증가하면 예측의 정확도가 크게 감소합니다.

7단계: 이전 이력에 대한 예측의 정확성을 확인합니다. 위에서 설명한 원래 기술(각 입력을 이전 기록에 넣고, 가장 작은 MSD를 제공하는 입력을 선택하고, 해당 입력의 새로운 값에서 예측을 계산)은 무작위 또는 null 예측보다 훨씬 더 나쁜 예측 MSD를 생성했습니다. 나는 스스로에게 이런 질문을 던졌다. 과거에 잘 맞는 입구가 미래에 대한 예측 가능한 능력이 있어야 하는 이유는 무엇인가? 알려진 데이터에 대한 가장 작은 회귀 오류를 기반으로 하기보다는 이전 예측 오류를 기반으로 모델 입력을 선택하는 것이 합리적입니다.

결국 내 모델은 다음과 같이 단계별로 설명할 수 있습니다.

  1. stlouisfed에서 경제 데이터 업로드(약 10,000개의 지표).
  2. Preobrazeum 데이터를 고정된 형태로 정규화합니다.
  3. RMS 방법(선형 회귀)으로 분석적으로 해결된 S&P 500 지수의 선형 모델을 선택합니다.
  4. 히스토리의 길이(1960 - Q2 2015)를 선택하고 훈련 세그먼트(1960 - Q4 1999)와 테스트 세그먼트(Q1 2000 - Q2 2015)로 나눕니다.
  5. 1960 + N + 1부터 예측을 시작합니다. 여기서 N*4는 알려진 분기별 S&P 500 값의 초기 수입니다.
  6. 첫 번째 N 데이터에서 선형 모델은 각 경제 지표에 대해 y_mod = a + b*x로 작성됩니다. 여기서 y_mod는 S&P 500 모델이고 x는 경제 지표 중 하나입니다.
  7. 각 모델에 대해 N + 1 bar를 예측합니다.
  8. 각 모델별로 N + 1개 막대의 예측 오차를 계산합니다. 우리는 이러한 실수를 기억합니다.
  9. 알려진 S&P 500 값의 수를 1만큼 늘립니다. N + 1을 입력하고 훈련 세그먼트의 끝에 도달할 때까지 6-9단계를 반복합니다(Q4 1999). 이 단계에서 우리는 각 경제 지표에 대해 1960년 + N +1에서 1999년 4분기까지의 예측 오차를 저장했습니다.
  10. 두 번째 역사 기간(2000년 1분기 - 2015년 2분기)에 모델 테스트를 시작합니다.
  11. 10,000개의 입력 각각에 대해 1960~1999년 4분기 예측의 표준 오차를 계산합니다.
  12. 10,000개의 입력 중에서 1960~1999년 4사분기 동안 RMS 예측이 가장 낮은 것을 선택합니다.
  13. 1960~1999년 4분기에 대한 각 경제 지표에 대해 선형 모델 y_mod = a + b*x를 구축합니다.
  14. 우리는 각 모델별로 2000년 1분기를 예측합니다.
  15. 이전 시간 간격(1960 - Q4 1999)에 대한 예측의 RMS가 가장 낮은 선택된 입력의 예측이 2000년 Q1의 주요 예측으로 선택됩니다.
  16. 2000년 1분기에 대한 모든 입력의 예측 오류를 계산하고 이전 시간 간격(1960 - 1999년 4분기)에 대한 동일한 입력의 RMS에 추가합니다.
  17. 2000년 2분기로 이동하여 예측의 주요 목표인 S&P 500에 대해 알 수 없는 값으로 테스트 영역(2015년 2분기)이 끝날 때까지 12-17단계를 반복합니다.
  18. 2000년 1분기 - 2014년 4분기에 대한 예측 오류를 이전 세그먼트에서 예측의 표준 편차가 가장 낮은 입력으로 누적합니다. 이 오류(err2)는 샘플 외 예측 오류 모델입니다.

요컨대, 예측 변수의 선택은 이전 S&P 500 예측의 RMS에 따라 달라집니다. 예측자는 시간이 지남에 따라 변경될 수 있지만 테스트 세그먼트가 끝나면 기본적으로 변경을 멈춥니다. 내 모델은 2015년 2분기를 예측하기 위한 첫 번째 입력으로 2/4 지연이 있는 PPICRM을 선택했습니다. 1960 - Q4 2014에 대해 선택한 PPICRM(2) 입력을 사용한 S&P 500의 선형 회귀가 아래에 나와 있습니다. 검은색 원 - 선형 회귀. 다양한 색상의 원 - 1960년 - 2014년 4분기의 과거 데이터. 원의 색상은 시간을 나타냅니다.


고정 S&P 500 예측(빨간색 선):

원시 형태의 S&P 500 예측(빨간색 선):

그래프는 모델이 2015년 2분기 S&P 500의 성장률을 예측함을 보여줍니다. 두 번째 입력을 추가하면 예측 오류가 증가합니다.

1 err1=0.900298 err2=0.938355 PPICRM(2)

2 err1=0.881910 err2=0.978233 PERMIT1 (4)

여기서 err1은 회귀 오류입니다. 두 번째 입력이 추가되면서 감소하는 것이 분명합니다. err2는 제곱 평균 제곱근 예측 오차를 랜덤 예측 오차로 나눈 값입니다. 즉, err2>=1은 내 모델의 예측이 무작위 예측보다 좋지 않음을 의미합니다. err2<1은 내 모델의 예측이 무작위 예측보다 낫다는 것을 의미합니다.

PPICRM = 생산자 물가 지수: 추가 처리를 위한 원유

PERMIT1 = 건축 허가에 의해 승인된 신규 민간 주택 유닛 - 1 유닛이 있는 구조

위에서 설명한 모델은 이런 식으로 다시 표현될 수 있습니다. 우리는 10,000명의 경제학자를 모아 그들에게 앞으로 분기의 시장을 예측하도록 요청합니다. 각 경제학자는 자신의 예측을 내립니다. 그러나 그들이 집필한 교과서의 수나 과거에 수상한 노벨상 수를 기반으로 예측을 선택하는 대신 예측을 수집하기 위해 몇 년을 기다립니다. 상당한 수의 예측 후에 우리는 어떤 경제학자가 더 정확한지 확인하고 다른 경제학자가 그의 정확도를 능가할 때까지 그의 예측을 믿기 시작합니다.

답은 간단합니다. 연간 기간에 거래하십시오....
 
IvanIvanov :
대답은 간단합니다. 연간 기간에 거래하십시오....
농담이야?
 
gpwr :
농담이야?

:-) 글쎄, 나는 모른다.... 분석이 몇 년 동안 계속된다면..... 그러면 나는 무엇을 거래해야 할지 모르겠다. m5에서는 실질적인 효과가 없을 것 같다. ..

또는 H4에 계산을 적용해 보십시오...

 

gpwr :

...상당한 수의 예측 후에 우리는 어떤 경제학자가 더 정확한지 확인하고 다른 경제학자가 그의 정확도를 능가할 때까지 그의 예측을 믿기 시작합니다...


음, 이런 종류의 Taleb는 그의 검은 백조와 모순됩니다. 특정 조건에서 잘 예측하는 경제학자들이 어떻게 충돌을 예측할 수 있습니까?

어떻게가 아니라 왜 이런 일이 일어날까요? 결국, 그들은 자신의 정당성을 확신합니다. 왜 그들이 이 정당성을 수정할까요? 그래서 우리는 레밍이 열정적으로 심연으로 뛰어들게 될 것입니다.

 

다음은 그의 모델에 대한 Keene의 기사입니다.

http://keenomics.s3.amazonaws.com/debtdeflation_media/papers/PaperPrePublicationProof.pdf

나는 그의 모델이 마음에 들지 않는다고 즉시 말할 것이지만. 그 목적은 경제 주기와 붕괴를 설명하는 것이지 시장이나 GDP와 같은 경제 성과 를 정확하게 예측하는 것이 아닙니다. 예를 들어, 그의 모델은 공공 부채의 증가가 경제의 붕괴로 이어질 것이라고 예측했습니다. 그러나 정확히 그의 모델은 예측하지 못했습니다. 또한 충돌 후 어떤 일이 일어날지 예측할 수 없습니다. 2009년 미국의 시장과 경제가 회복되었지만 그의 모든 이론적 곡선은 무한대로 이동하여 무한정 거기에 머물렀습니다. 이것이 아마도 그가 20년 동안 지속된 일본보다 더 심각한 대공황이 다가오고 있다고 주장하면서 이 회복을 믿지 않고 계속해서 매우 부정적인 이유일 것입니다. 이것이 모든 동적 경제 모델의 문제인 것 같습니다. 안정화하기 어렵고 불안정해지면 순환을 하며 더 이상 미래를 예측할 수 없습니다. 유명한 헤지 펀드가 Keane을 경제 고문으로 고용했지만.