midas_qr {midasr} | R Documentation |
Restricted MIDAS quantile regression
Description
Estimate restricted MIDAS quantile regression using nonlinear quantile regression
Usage
midas_qr(
formula,
data,
tau = 0.5,
start,
Ofunction = "nlrq",
weight_gradients = NULL,
guess_start = TRUE,
...
)
Arguments
formula |
formula for restricted MIDAS regression or |
data |
a named list containing data with mixed frequencies |
tau |
quantile |
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
|
guess_start |
logical, if TRUE tries certain strategy to improve starting values |
... |
additional arguments supplied to optimisation function |
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)
Vaidotas Zemlys-Balevicius
Examples
##Take the same example as in midas_r
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)
}
##Generate coefficients
theta0 <- theta_h0(c(-0.1,10,-10,-10),4*12)
##Plot the coefficients
plot(theta0)
##Generate the predictor variable
xx <- ts(arima.sim(model = list(ar = 0.6), 600 * 12), frequency = 12)
##Simulate the response variable
y <- midas_sim(500, xx, theta0)
x <- window(xx, start=start(y))
##Fit quantile regression. All the coefficients except intercept should be constant.
##Intercept coefficient should correspond to quantile function of regression errors.
mr <- midas_qr(y~fmls(x,4*12-1,12,theta_h0), tau = c(0.1, 0.5, 0.9),
list(y=y,x=x),
start=list(x=c(-0.1,10,-10,-10)))
mr