Description Usage Arguments Details Value Author(s) References See Also Examples
Rolling out of sample forecasting of a HAR model.
1 2 3 |
RM |
An |
BPV |
A |
RQ |
A |
periods |
A vector denoting which lags should be used in the estimation, standard of |
periodsJ |
A |
periodsRQ |
A |
nRoll |
How many rolling forecasts should be performed. |
nAhead |
The length of each rolling forecast. |
type |
A |
windowType |
A |
insanityFilter |
A |
h |
A |
Not all models in this package are 'complete', which means some models use AR(1) processes to forecast e.g. realized quarticity in order to construct more than one step ahead forecasts.
The maximumm lag of the continuous or quarticity data must be lower than the maximum of the realized measure lag vector, the other cases are not implemented.
The estimates for the HARQ
and HARQ-J
models differ slightly from the results of BPQ (2016). This is due to a small difference in the demeaning approach for the realized quarticity. Here, the demeaning is done with mean(RQ) over all periods.
If h
is greater than 1, then nAhead
must be one, as multi-period ahead forecasts have not been implemented.
A HARForecast
object
Emil Sjoerup
Corsi, F. 2009, A Simple Approximate Long-Memory Model
of Realized Volatility, Journal of Financial Econometrics, 174–196.
Bollerslev, T., Patton, A., Quaedvlieg, R. 2016, Exploiting the errors: A simple approach for improved volatility forecasting, Journal of Econometrics , vol.192 , issue 1, 1-18.
See Also HAREstimate
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #HAR of Corsi(2009)
#load data:
data("SP500RM")
SP500rv = SP500RM$RV
ForecastHAR = HARForecast(SP500rv, periods = c(1,5,22), nRoll =50,
nAhead = 50, type = "HAR")
#plot the forecasted series along with the actual realizations:
plot(ForecastHAR)
#Calculate the MSE:
mean(forecastRes(ForecastHAR)^2)
#Calculate the Q-like loss function:
mean(qlike(ForecastHAR))
#HARJ
#load data:
data("SP500RM")
SP500rv = SP500RM$RV
SP500bpv = SP500RM$BPV
ForecastHARJ = HARForecast(SP500rv, BPV = SP500bpv, periods = c(1,5,22),
periodsJ = c(1,5,22) ,nRoll = 50,
nAhead = 50, type = "HARJ")
#Show the model:
show(ForecastHARJ)
#Extract the forecasted series:
forc = getForc(ForecastHARJ)
#HARQ BPQ(2016)
#load data
data("SP500RM")
SP500rv = SP500RM$RV
SP500rq = SP500RM$RQ
ForecastHARQ = HARForecast(SP500rv, RQ= SP500rq, periods = c(1,5,22),
periodsRQ = c(1,5,22), nRoll = 50, nAhead = 50,
type = "HARQ")
#HARQ-J BPQ(2016) with weekly aggregation.
#load data
data("SP500RM")
SP500rv = SP500RM$RV
SP500rq = SP500RM$RQ
SP500bpv = SP500RM$BPV
ForecastHARQJ = HARForecast(SP500rv, RQ = SP500rq, BPV = SP500bpv,
periods = c(1,5,22), periodsJ = c(1,5,22),
periodsRQ = c(1,5,22), nRoll = 50,
nAhead = 1, type = "HARQ-J", h = 5)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.