debias_ivx: Debiased IVX for predictive regression

View source: R/debiased_ivx_est.R

debias_ivxR Documentation

Debiased IVX for predictive regression

Description

y_t = w_{t-1} theta + u_t

where data is already aligned to incorporate the lagged regressor

Usage

debias_ivx(
  w,
  y,
  d_ind,
  intercept = FALSE,
  standardize = TRUE,
  c_z = 5,
  a = 0.9,
  standardize_iv = TRUE,
  iid = TRUE,
  post_inference = TRUE,
  lambda_choice = vector("list", length(d_ind) + 1),
  lambda_seq = vector("list", length(d_ind) + 1),
  train_method = "timeslice",
  nlambda = 100,
  lambda_min_ratio = 1e-04,
  k = 10,
  initial_window = ceiling(nrow(w) * 0.7),
  horizon = 1,
  fixed_window = TRUE,
  skip = 0,
  zhang_zhang = TRUE
)

Arguments

w

Matrix of all regressors

y

Vector of dependent variable

d_ind

Index for inference targets

intercept

Whether to include intercept in Lasso regression

c_z

Parameter in constructing IV (Phillips and Lee, 2016)

z = \sum_{j=0}^{n-1} (1 - c_z / n^a)^j \Delta d_{t-j}

a

Parameter in constructing IV (Phillips and Lee, 2016)

standardize_iv

Whether to standardize the IV

iid

boolean indicating whether we want to adjust the long-run variance

post_inference

boolean indicating whether to conduct post-lasso inference

lambda_choice

Choice of lambda for Lasso regression; List of length length(d_ind) + 1: each element = NULL or = a number if user has a specific choice of tuning parameter

lambda_seq

pre-specified sequence of tuning parameter for parameter tuning; Useful in calibration of tuning parameter based on the rate conditions in the asymptotic theory; List of length length(d_ind) + 1: Each element = NULL or a vector of tuning parameters

train_method

The parameter tuning method

  • "timeslice"https://topepo.github.io/caret/data-splitting.html#time: By combining initial window, horizon, fixed window and skip, we can control the sample splitting. Roll_block: Setting initial_window = horizon = floor(nrow(x) / k), fixed_window = False, and skip = floor(nrow(x) / k) - 1 Period-by-period rolling: skip = 0.

  • "cv": Cross-validation based on block splits.

  • "cv_random": Cross-validition based on random splits.

  • "aic", "bic", "aicc", "hqc": based on information criterion.

nlambda

number of candidate lambdas

lambda_min_ratio

# lambda_min_ratio * lambda_max = lambda_min (default: 0.0001): Determines the search range of lambda

k

k-fold cv if "cv" is chosen (default: 10)

initial_window

length of initial window for "timeslice" method

horizon

length of horizon for "timeslice" method

fixed_window

whether to use fixed window for "timeslice" method

skip

length of skip for "timeslice" method

zhangzhang

boolean indicating whether to conduct Zhang and Zhang (2014) debiased IVX

Value

A list contains

theta_hat_las

Estimate of delta from Lasso regression

theta_hat_ivx

Estimate of delta from debiased IVX

sigma_hat

Estimate of standard error of theta_hat_ivx

lambda_hat

Chosen tuning parameter for Lasso regression

phi_hat

Estimate of the frequency of 0s and L1 norm of std/nonstd coefficients in the second stage


zhan-gao/LasForecast documentation built on Sept. 18, 2024, 9:40 p.m.