comb_EIG2: Bias-Corrected Eigenvector Forecast Combination

Description Usage Arguments Details Value Author(s) References See Also Examples

View source: R/comb_EIG2.R

Description

Computes forecast combination weights according to the bias-corrected eigenvector approach by Hsiao and Wan (2014) and produces forecasts for the test set, if provided.

Usage

1

Arguments

x

An object of class foreccomb. Contains training set (actual values + matrix of model forecasts) and optionally a test set.

Details

The bias-corrected eigenvector approach builds on the idea that if one or more of the predictive models yield biased predictions, the accuracy of the standard eigenvector approach can be improved by eliminating the bias. The optimization procedure to obtain combination weights coincides with the standard eigenvector approach, except that it is applied to the centered MSPE matrix after extracting the bias (by subtracting the column means of the MSPE).

The combination weights are calculated as:

w = (1 / \tilde{d}_l) * \tilde{w}^l

where \tilde{d}_j and \tilde{w}^j are defined analogously to d_j and w^j in the standard eigenvector approach, with the only difference that they correspond to the spectral decomposition of the centered MSPE matrix rather than the uncentered one.

The combined forecast is then obtained by:

\hat{y}_t = a + (f_t)'w

where a = E(y_t) - E(f_t)'w is the intercept for bias correction. If the actual series and the forecasts are stationary, the expectations can be approximated by the time series means, i.e. the intercept is obtained by subtracting the weighted sum of column means of the MSPE matrix from the mean of the actual series. Forecast combination methods including intercepts therefore usually require stationarity.

Value

Returns an object of class foreccomb_res with the following components:

Method

Returns the used forecast combination method.

Models

Returns the individual input models that were used for the forecast combinations.

Intercept

Returns the intercept (bias correction).

Weights

Returns the combination weights obtained by applying the combination method to the training set.

Fitted

Returns the fitted values of the combination method for the training set.

Accuracy_Train

Returns range of summary measures of the forecast accuracy for the training set.

Forecasts_Test

Returns forecasts produced by the combination method for the test set. Only returned if input included a forecast matrix for the test set.

Accuracy_Test

Returns range of summary measures of the forecast accuracy for the test set. Only returned if input included a forecast matrix and a vector of actual values for the test set.

Input_Data

Returns the data forwarded to the method.

Author(s)

Christoph E. Weiss and Gernot R. Roetzer

References

Hsiao, C., and Wan, S. K. (2014). Is There An Optimal Forecast Combination? Journal of Econometrics, 178(2), 294–309.

See Also

comb_EIG1, foreccomb, plot.foreccomb_res, summary.foreccomb_res, accuracy

Examples

1
2
3
4
5
6
7
8
9
obs <- rnorm(100)
preds <- matrix(rnorm(1000, 1), 100, 10)
train_o<-obs[1:80]
train_p<-preds[1:80,]
test_o<-obs[81:100]
test_p<-preds[81:100,]

data<-foreccomb(train_o, train_p, test_o, test_p)
comb_EIG2(data)

ForecastComb documentation built on May 1, 2019, 9:16 p.m.