nardl_auto_case {ardl.nardl}R Documentation

Obtain the best NARDL model specification and bounds test.

Description

This function finds the best NARDL model specification and conduct bounds test by relying on the general to specific approach.

Usage

nardl_auto_case(x, decomp, dep_var, control = NULL, d = Inf, c_q_order = c(2), 
                p_order = c(3), q_order, gets_pval = 0.1, 
                order_l = order_l, graph_save = FALSE)

Arguments

x

Dataframe

decomp

A character vector. The variable to be decomposed to positive (pos) and negative (neg) variable.

dep_var

A character vector. The dependent variable

control

A character vector. Default is NULL. The second dependent variable.

d

An integer or character vector. The threshold value (d) is adopted when computing the partial sum. The default value Inf is the implicit threshold for the partial sum whenever the base 'cumsum' function is adopted. The value of d can be 'mean' or 0 and any other integer specified as the threshold value for the partial sum.

c_q_order

Integer. Maximum number of lags for 'control'

p_order

An integer. Lag differenced adopted for the differenced response variable

q_order

An integer. Lag differenced adopted for the differenced explanatory variable(s)

gets_pval

The p- value which served as criteria for eliminating non-significant variable in the course of obtaining the best model based on the Schwarz information criteria.

order_l

Integer. Needed for the autocorrelation and heteroscedasticity test

graph_save

Logical. If TRUE, displays the stability plots

Details

The procedure of the general-to-specific approach in obtaining the parsimonious model involves conducting the multi-path backwards elimination; tests both single and multiple hypothesis tests, diagnostics tests and goodness-of-fit measures. See page 5 - 6 of Sucarrat (2021) for more details.

The value for gets_pval is influential the final model based on the multipath backward elimination. For more details on the general-to-specific approach, see the vignette of the 'gets' package.

Value

Parsimonious_NARDL_fit

Return an estimated general-to-specific NARDL model.

Parsimonious_ECM_fit

Return an estimated general-to-specific error correction model.

Summary_uecm_fit

Return the summary of 'Parsimonious_ECM_fit'

ecm_diagnostics_test

Return the diagnostic test for the 'Parsimonious_ECM_fit'. The diagnostic tests indicate the Breusch-Godfrey test for higher-order serial correlation (BG_SC_lm_test). The Engle (1982) test for conditional heteroscedasticity (LM_ARCH_test). The test for non-normality is that of Jarque and Bera (1980). The RESET null hypothesis adopted implies - including the 2nd - degree terms improve the fit (over the model specified).

longrun_asym

Return the estimated longrun asymmetric test

Shortrun_asym

Return the estimated short-run asymmetric test.If one of the decomposed variable does not appear among the shortrun differenced variables of the parsimonious model, The value returned is a wald test of whether the sum of the coefficients of the remaining decomposed variable included does not have any significant effect on the best model

cointegration

Return the F statistic, the upper and lower critical values for PSS (2001) bounds test. Please, disregard the tstat on the cointegration test.

Longrun_relation

The longrun relation

Note

Do not differenced the variables to be adopted in this function and all other functions for NARDL and ARDL estimation. The package inherently takes the difference and produced output with a prefix (D.) to the variable name and suffix the variable name with underscore (_) and the lag value.

References

Sucarrat, G. User-Specified General-to-Specific (GETS) and Indicator Saturation (ISAT) Methods. 28th September 2021. https://mirror.epn.edu.ec/CRAN/web/packages/gets/vignettes/user-defined-gets-and-isat.pdf

See Also

gets gets_nardl_uecm ardl_uecm auto_case_ardl

Examples

## Not run: 
 data("fuel_price")
 out1 <- nardl_auto_case(x = fuel_price,
                decomp =  'wti',
                dep_var = 'fpp',
                control = 'bdc',
                c_q_order = c(5), 
                p_order = c(5),
                q_order = c(6),
                gets_pval = 0.1,
                order_l = 4,
                graph_save = FALSE)
 out1

 out2 <- nardl_auto_case(x = fuel_price,
                decomp =  'wti',
                dep_var = 'fpp',
                control = NULL,
                c_q_order = c(4), 
                p_order = c(5),
                q_order = c(6),
                gets_pval = 0.02,
                order_l = 4,
                graph_save = FALSE)
 out2

## End(Not run)

[Package ardl.nardl version 1.3.0 Index]