imidas_r {midasr} | R Documentation |
Restricted MIDAS regression with I(1) regressors
Description
Estimate restricted MIDAS regression using non-linear least squares, when the regressor is I(1)
Usage
imidas_r(
formula,
data,
start,
Ofunction = "optim",
weight_gradients = NULL,
...
)
Arguments
formula |
formula for restricted MIDAS regression. Formula must include |
data |
a named list containing data with mixed frequencies |
start |
the starting values for optimisation. Must be a list with named elements. |
Ofunction |
the list with information which R function to use for optimisation. The list must have element named |
weight_gradients |
a named list containing gradient functions of weights. The weight gradient function must return the matrix with dimensions
|
... |
additional arguments supplied to optimisation function |
Details
Given MIDAS regression:
y_t=\sum_{j=0}^k\sum_{i=0}^{m-1}\theta_{jm+i} x_{(t-j)m-i}+\mathbf{z_t}\beta+u_t
estimate the parameters of the restriction
\theta_h=g(h,\lambda),
where h=0,...,(k+1)m
, together with coefficients \beta
corresponding to additional low frequency regressors.
It is assumed that x
is a I(1) process, hence the special transformation is made. After the transformation midas_r is used for estimation.
MIDAS regression involves times series with different frequencies.
The restriction function must return the restricted coefficients of the MIDAS regression.
Value
a midas_r
object which is the list with the following elements:
coefficients |
the estimates of parameters of restrictions |
midas_coefficients |
the estimates of MIDAS coefficients of MIDAS regression |
model |
model data |
unrestricted |
unrestricted regression estimated using |
term_info |
the named list. Each element is a list with the information about the term, such as its frequency, function for weights, gradient function of weights, etc. |
fn0 |
optimisation function for non-linear least squares problem solved in restricted MIDAS regression |
rhs |
the function which evaluates the right-hand side of the MIDAS regression |
gen_midas_coef |
the function which generates the MIDAS coefficients of MIDAS regression |
opt |
the output of optimisation procedure |
argmap_opt |
the list containing the name of optimisation function together with arguments for optimisation function |
start_opt |
the starting values used in optimisation |
start_list |
the starting values as a list |
call |
the call to the function |
terms |
terms object |
gradient |
gradient of NLS objective function |
hessian |
hessian of NLS objective function |
gradD |
gradient function of MIDAS weight functions |
Zenv |
the environment in which data is placed |
use_gradient |
TRUE if user supplied gradient is used, FALSE otherwise |
nobs |
the number of effective observations |
convergence |
the convergence message |
fitted.values |
the fitted values of MIDAS regression |
residuals |
the residuals of MIDAS regression |
Author(s)
Virmantas Kvedaras, Vaidotas Zemlys
See Also
midas_r.midas_r
Examples
theta.h0 <- function(p, dk) {
i <- (1:dk-1)/100
pol <- p[3]*i + p[4]*i^2
(p[1] + p[2]*i)*exp(pol)
}
theta0 <- theta.h0(c(-0.1,10,-10,-10),4*12)
xx <- ts(cumsum(rnorm(600*12)), frequency = 12)
##Simulate the response variable
y <- midas_sim(500, xx, theta0)
x <- window(xx, start=start(y))
imr <- imidas_r(y~fmls(x,4*12-1,12,theta.h0)-1,start=list(x=c(-0.1,10,-10,-10)))