forecast Chinese stock market return
out sample/Class09Slides6520_04-01-2019.pdf
Class 9 Bootstrapping and Data Mining/Snooping
Professor David Rapach
ECON 6520
Forecasting Macroeconomic and Financial Variables
Spring Semester 2019
[This Version: 04-01-2019]
Data mining/snooping
I Concern ⇒ we consider many potential predictors
I More likely to find ‘significant’ evidence of predictability
I Even when target variable is unpredictable
I Conventional tests assume researcher conducts single test
I But researcher actually conducts multiple tests
I Focus on ‘best’ results ⇒ size distortion
I 5% nominal critical value 6= actual 5% critical value
Data mining/snooping
I Need to control for data mining/snooping
I White (2000) ‘reality check’ bootstrap
I Controls test size for multiple model comparisons
I Based on maximum statistic
I Data-mining bootstrap procedures for nested models
I Inoue & Kilian (2005) ⇒ asymptotic results
I Rapach & Wohar (2006) ⇒ US stock returns
I Clark & McCracken (2012) ⇒ fixed-regressor wild bootstrap
Fixed-regressor wild bootstrap
I Out-of-sample asset return forecasting ⇒ yt = Rxt
I Constant expected return (prevailing mean) benchmark
I yt+1 = α + εt+1
I Competing predictive regression model forecasts
I yt+1 = α + βxj,t + εt+1 for j = 1, . . . , J
I T ⇒ # of observations in full sample
I First M1 observations ⇒ initial in-sample period I Last M2 observations ⇒ out-of-sample period
I Prevailing mean benchmark ⇒ MSFE0
I Predictive regression forecasts ⇒ MSFEj for j = 1, . . . , J
Fixed-regressor wild bootstrap
I Max of Clark & McCracken (2001) MSE-F statistics
I maxMSE-F = max j=1,...,J
MSE-Fj
I MSE-Fj = M2(MSFE0 − MSFEj)/MSFEj for j = 1, . . . , J
I Compute OLS residuals for ‘kitchen sink’ model
I yt = α + J∑
j=1
βjxj,t−1 + εt
I ε̂t = yt −
( α̂ +
J∑ j=1
β̂jxj,t−1
) for t = 2, . . . , T
Fixed-regressor wild bootstrap
I Generate pseudo observations under H0: no predictability
I y (b) t =
1
T
T∑ t=1
yt︸ ︷︷ ︸ ȳ
+ε̂tu (b) t for t = 2, . . . , T
I u (b) t ⇒ draw from N(0, 1) distribution
I Simply set y (b) 1 = y1
I Bootstrap pseudo observations ⇒ { y (b) t
}T t=1
I Wild bootstrap ⇒ accounts for conditional heteroskedasticity
Fixed-regressor wild bootstrap
I Use { y (b) t
}T t=1
& original xj,t observations to compute
I Prevailing mean benchmark forecast
I Predictive regression model forecasts for j = 1, . . . , J
I MSE-F (b) j for j = 1, . . . , J
I maxMSE-F(b) = max j=1,...,J
MSE-F (b) j ⇒ store
Fixed-regressor wild bootstrap
I Repeat B times ⇒ {
maxMSE-F(b) }B b=1
I Bootstrap p-value = 1 B
B∑ b=1
I(maxMSE-F(b) > maxMSE-F)
I I(x) = 1 when x is true, 0 otherwise
I Significant results readily explained by chance?
I Neely et al (2014) ⇒ equity premium forecasting
I Significant evidence not easily attributable to chance
Forecasting macro variables
I Proceed similarly with usual benchmark/competitors
I AR ⇒ yt+1 = α0 + p∑
k=1
αkyt−(k−1) + εt+1
I ARDL for j = 1, . . . , J
I yt+1 = α0 + p1∑ k=1
αkyt−(k−1) + p2∑ k=1
βkxj,t−(k−1) + εt+1
I General model needed for wild bootstrap
I Could consider ARDL model based on first PC
I yt+1 = α0 + p1∑ k=1
αkyt−(k−1) + p2∑ k=1
βk f̂t−(k−1) + εt+1
I Relatively straightforward extension for h > 1
I Need to account for serial correlation in general model residuals
__MACOSX/out sample/._Class09Slides6520_04-01-2019.pdf
out sample/Class06Slides6520_02-24-2019(1).pdf
Class 6
Model Uncertainty/Selection and Forecast Combination
Professor David Rapach
ECON 6520
Forecasting Macroeconomic and Financial Variables
Spring Semester 2019
[This Version: 02-24-2019]
Plethora of predictors
I We typically have many potential predictors of yt+1
I xj,t for j = 1, . . . , J
I What to do?
I Kitchen sink model (with single lag of each variable)
I yt = α0 + α1yt−1 + J∑
j=1
β1, jxj,t−1 + εt
I Warning ⇒ beware of models with many parameters
I In-sample overfitting ⇒ poor out-of-sample forecasting
Plethora of predictors
I Could try model selection criteria (eg, AIC or SIC)
I But many models to consider when J is large (2J )
I Selects only one model ⇒ potentially risky
I Stepwise regression
I Sensitive to algorithm
I Selects only one model ⇒ again, potentially risky
Forecast combination
I Bates & Granger (1969) ⇒ combine individual forecasts
I Often outperforms best individual forecast
I Consider J individual ARDL(1,1) models
I yt = α0 + α1yt−1 + β1, jxj,t−1 + εt for j = 1, . . . , J
I Forecast ⇒ ŷj,t+1 = α̂ (t) 0 + α̂
(t) 1 yt + β̂
(t) 1, j xj,t
I Of course, could consider individual ARDL(p1,p2) models
Simple combination forecast
I Arithmetic mean of individual forecasts
I Forecast ⇒ ŷc,t+1 = 1J J∑
j=1
ŷj,t+1
I Frequently works well in practice
I US real GDP growth (Stock & Watson 2003)
I Market excess return (Rapach, Strauss, & Zhou 2010)
Why does combining work?
I DGP highly complex & constant evolving
I Reduces risk associated with model uncertainty
I Diversify across forecasts to reduce forecasting risk
I Like diversifying across assets to reduce portfolio risk
I Accommodates structural breaks (Hendry & Clements 2004)
I Incorporates information from many predictors
I But avoids overfitting
I Shrinks parameter estimates (Rapach, Strauss, & Zhou 2010)
‘Tilting’ combining weights
I Instead of equal weighting, ‘tilt’ toward particular forecasts
I ŷc,t+1 = J∑
j=1
wj,tŷj,t+1, where J∑
j=1
wj,t = 1
I Approximate Bayesian Model Averaging (BMA)
I ∆SICj,t = SICj,t − SIC ∗ t
I SIC∗t ⇒ min SIC across all models based on data through t
I w∗j,t = exp(−0.5 ∆SICj,t)
I wj,t = w ∗ j,t
( J∑
i=1
w∗i,t
)−1
‘Tilting’ combining weights
I Discount MSFE (DMSFE, Stock & Watson 2004)
I Requires ‘holdout’ out-of-sample period
I wj,t = φ −1 j,t
( J∑
i=1
φ−1i,t
)−1 I φj,t =
t−1∑ s=M0
θt−1−s (ys+1 − ŷj,s+1) 2 , where 0 < θ 6 1
I θ = 1 ⇒ no discounting
I θ < 1 ⇒ places greater emphasis on recent performance
__MACOSX/out sample/._Class06Slides6520_02-24-2019(1).pdf
out sample/Class08Slides6520_03-18-2019.pdf
Class 8 Model/Parameter Instability
Professor David Rapach
ECON 6520
Forecasting Macroeconomic and Financial Variables
Spring Semester 2019
[This Version: 03-18-2019]
Structural instability
I Empirical relations frequently subject to structural breaks
I ∆s in technology, institutions, policy, etc
I Individual forecasting models can break down
I Giacomini & Rossi (2009), Rossi & Sekhposyan (2011)
I Forecast well for stretch of time, then perform poorly
I Macro variables (eg, Stock & Watson 2003)
I Stock returns (eg, Goyal & Welch 2003, 2008)
Structural instability
I Desiderata
I Approaches that are reasonably robust to structural instability
I Realize reasonably consistent out-of-sample gains
I Avoid prolonged periods of poor performance
Testing for forecast breakdown
I Formal tests of stability of forecasting performance
I Giacomini & Rossi (2009, 2010)
I H0: stable performance vs HA: ∆ in performance
Detecting forecast breakdown
I Goyal & Welch (2003, 2008) ⇒ useful visual device
I Graph cumulative difference in squared forecast errors
I CDSFEM1+1:M1+m2 = m2∑ s=1
( û21,M1+s − û
2 2,M1+s
) I ûi,M1+s = yi,M1+s − ŷi,M1+s for i = 1, 2
I Can easily determine when ŷ2,t outperforms ŷ1,t
I Ideally, line always has positive slope
I Illuminates episodes of substantive over/underperformance
What to do?
I Forecast combination relatively robust to structural instability
I Some analytical results (Hendry & Clements 2004)
I Macro variables (Stock & Watson 2003)
I Stock returns (Rapach et al 2010)
I Diffusion indices also appear to help
I Typically offer larger overall out-of-sample gains
I But gains less consistent than forecast combination
Estimation window
I Generally optimal to use pre-break data
I Pesaran & Timmermann (2007), Clark & McCracken (2009)
I Bias-efficiency tradeoff
I However, theoretically optimal window is complicated
I Depends on (unknown) break timing/size
I Practical way forward
I Average forecasts generated over different estimation windows
I Average across rolling & recursive estimation windows
I Clark & McCracken (2009)
Estimation window
I Average forecasts from all possible estimation window sizes
I Pesaran & Timmermann (2007), Pesaran & Pick (2011)
I Impose minimum window size (eg, 30% of available sample)
I Consider generating ŷt+1
I First estimation window ⇒ 1, ..., t
I Second estimation window ⇒ 2, ..., t
I Last estimation window ⇒ t − (winmin − 1), ..., t
I Take average of forecasts across estimation windows
I Can apply this procedure to diffusion index forecast
I Can average across forecasts based on individual predictors
__MACOSX/out sample/._Class08Slides6520_03-18-2019.pdf
out sample/Class07Slides6520_03-03-2019.pdf
Class 7 Diffusion Indices
Professor David Rapach
ECON 6520
Forecasting Macroeconomic and Financial Variables
Spring Semester 2019
[This Version: 03-03-2019]
Plethora of predictors
I Again, we typically have many potential predictors of yt+1
I xj,t for j = 1, . . . , J
I Consider factor model for predictors
I Principal components
I Intuition
I Captures key comovements in predictor variables
I Filters out noise in individual predictors ⇒ better signal
Factor model
I Standardize xj,t ⇒ zero mean/unit variance ⇒ x̃j,t
I x̃j,t = λjft + ej,t for j = 1, . . . , J
I ft ⇒ common factor underlying comovements in x̃j,t s I λj ⇒ x̃j,t ’s loading on ft
I Think of stock’s beta in CAPM
I λjft ⇒ common component of x̃j,t I ej,t ⇒ idiosyncratic component of x̃j,t
I Uncorrelated or ‘weakly’ correlated across j
I NB ⇒ ft is a latent (unobserved) variable
I Can’t estimate using conventional regression approach
Principal components
I Estimate common factor as first principal component
I X̃ T×J
= [ x̃1 . . . x̃T
]′ ⇒ data matrix I x̃t =
[ x̃1,t . . . x̃J,t
]′ I f =
[ f1 . . . fT
]′ I λ =
[ λ1 . . . λJ
]′ I Objective function ⇒ min
f,λ (JT)−1
J∑ j=1
T∑ t=1
(x̃j,t − λjft) 2
I f̂ T×1 ⇒ eigenvector for largest eigenvalue of X̃X̃
T×T
′
I λ̂ J×1
= ( X̃′X̃
)−1 X̃′f̂
Principal components
I NB ⇒ sign/scale of common factor arbitrary
I Multifactor model
I x̃j,t = K∑
k=1
λj,kfk,t + ej,t for j = 1, . . . , J & K � J
I fk = [ fk,1 . . . fk,T
]′ I F
T×K =
[ f1 . . . fK
] ⇒ matrix of uncorrelated factors
I F̂ T×K
⇒ eigenvector matrix for K largest eigenvalues of X̃X̃ T×T
′
I f̂1 explains greatest possible variation in data
I f̂2 does likewise but constrained to be orthogonal to f̂1
I And so on
Principal components
I Alternative method for computing PCs
I Use when T > J
I Ĝ J×K
⇒ eigenvector matrix for K largest eigenvalues of X̃′X̃ J×J
I Ĝ = [ ĝ1 . . . ĝK
] I ĝk =
[ ĝ1, k . . . ĝJ, k
]′ I F̂
T×K = X̃Ĝ
Forecasting
I ARDL(p1,p2) model based on f̂t (first PC)
I yt = α0 + p1∑ j=1
αjyt−j + p2∑ j=1
βj f̂t−j + εt
I Construct forecast just like we did previously (f̂t replaces xt )
I Could include additional factors
I Select # of factors & lag orders using AIC, SIC, or R̄2
I Of course, be wary of overfitting
Forecasting
I Predictive regression based on f̂t (first PC)
I Rxt = α + βf̂t−1 + εt
I Construct forecasts like we did previously (f̂t replaces xt )
I Could include additional factors
I Select # of factors using AIC, SIC, or R̄2
I Of course, be wary of overfitting
Forecasting
I Could include squared & cross-product factor terms
I Bai & Ng (2008)
I As always, be wary of over-parameterized model
I Diffusion indices often work well in practice
I Macro variables (Stock & Watson 2002)
I Equity risk premium (Ludvigson & Ng 2007, Neely et al 2014)
I Bond returns (Ludvigson & Ng 2009)