1
$\begingroup$

I have a question regarding dominance analysis in linear regressions with ARIMA errors. I am currently working with stress models for the banking industry. In certain cases, we are using dynamic regressions for these purposes using macroeconomic data, such as exogenous variables. We want to assess the relative importance of the macroeconomic variable within the fitted equation. In any case, the macroeconomic variable should have a higher relative importance than the ARIMA errors.

I have been doing some research online, but I could not find anything related to dynamic regressions. On the contrary, for linear regressions I have found a variety of methods: standardized coefficients, Shapley regressions and dispersion importance (Johnson and Lebreton - 2004). I have found a R package "relaimpo" that implements some of these methods.

Are you aware of any methodology developed so far regarding this matter?

$\endgroup$
7
  • $\begingroup$ Is that typically called dominance analysis? (Just curious.) $\endgroup$ Dec 18, 2020 at 9:35
  • $\begingroup$ I am not versed in this topic, but I think this is a term that is being used in the last years. $\endgroup$ Dec 18, 2020 at 9:49
  • $\begingroup$ hi: dynamic regression is covered in hendry's "dynamic econometrics" text. also, harvey's latest text ( I think it's called analysis of econometric time series ) has some chapters that cover it. pankratz has a text that's full of examples but it's pretty old now. $\endgroup$
    – mlofton
    Dec 18, 2020 at 14:02
  • $\begingroup$ Not quite. Dominance, also known as stochastic dominance, is more appropriately used "in decision theory and decision analysis in situations where one gamble (a probability distribution over possible outcomes, also known as prospects) can be ranked as superior to another gamble for a broad class of decision-makers" (en.wikipedia.org/wiki/Stochastic_dominance). A more appropriate concept for your situation is the relative importance of variables in a statistical model, as is inherent in the acronym relaimpo or effect size. $\endgroup$
    – user234562
    Dec 18, 2020 at 14:04
  • 1
    $\begingroup$ @user332577 thank you for your input. I agree with your comment, however it seems it has been used in the context of relative importance for linear regressions as well: 1. Budescu, D. V. (1993). Dominance analysis: A new approach to the problem of relative importance of predictors in multiple regression. 1. Azen, R., & Budescu, D. V. (2006). Comparing Predictors in Multivariate Regression Models: An Extension of Dominance Analysis. 2. Luo, W., & Azen, R. (2013). Determining Predictor Importance in Hierarchical Linear Models Using Dominance Analysis. $\endgroup$ Dec 18, 2020 at 14:24

1 Answer 1

0
$\begingroup$

@Anderson Arroyo

A model like this is possible to estimate but, to my understanding, is not implemented in R/on CRAN as a package currently.

For instance, you could implement a model similar to the one you are interested in here using Stata and the SSC module domme (see Luchman, Xue, and Kaplan, 2020 for a discussion of the approach as well as this github page).

Below there is an example from an ARMA model with a first order moving average, first order autoregression and an exogenous variable. The approach is a dominance analysis adapted to focus on parameter estimation as opposed to independent variables and estimates a McFadden's pseudo-R^2.

. webuse friedman2, clear

. arima consump m2 if tin(, 1981q4), ar(1) ma(1)

(setting optimization to BHHH)
Iteration 0:   log likelihood = -344.67575  
Iteration 1:   log likelihood = -341.57248  
Iteration 2:   log likelihood = -340.67391  
Iteration 3:   log likelihood = -340.57229  
Iteration 4:   log likelihood =  -340.5608  
(switching optimization to BFGS)
Iteration 5:   log likelihood =  -340.5515  
Iteration 6:   log likelihood = -340.51272  
Iteration 7:   log likelihood = -340.50949  
Iteration 8:   log likelihood =  -340.5079  
Iteration 9:   log likelihood = -340.50775  
Iteration 10:  log likelihood = -340.50774  

ARIMA regression

Sample:  1959q1 - 1981q4                        Number of obs     =         92
                                                Wald chi2(3)      =    4394.80
Log likelihood = -340.5077                      Prob > chi2       =     0.0000

------------------------------------------------------------------------------
             |                 OPG
     consump |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
consump      |
          m2 |   1.122029   .0363563    30.86   0.000     1.050772    1.193286
       _cons |  -36.09872   56.56703    -0.64   0.523    -146.9681    74.77062
-------------+----------------------------------------------------------------
ARMA         |
          ar |
         L1. |   .9348486   .0411323    22.73   0.000     .8542308    1.015467
             |
          ma |
         L1. |   .3090592   .0885883     3.49   0.000     .1354293    .4826891
-------------+----------------------------------------------------------------
      /sigma |   9.655308   .5635157    17.13   0.000     8.550837    10.75978
------------------------------------------------------------------------------
Note: The test of the variance against zero is one sided, and the two-sided
      confidence interval is truncated at zero.

. matrix list e(b)

e(b)[1,5]
       consump:    consump:       ARMA:       ARMA:      sigma:
                                     L.          L.            
            m2       _cons          ar          ma       _cons
y1   1.1220286  -36.098721   .93484865   .30905921   9.6553076

. domme (consump = m2) (ARMA = L.ar L.ma) if tin(, 1981q4), reg(arima consump m2) ropt(ar(1) ma(1)) fitstat(e(),
>  mcf)

Total of 7 models/regressions

General dominance statistics: ARIMA regression
Number of obs             =                      92
Overall Fit Statistic     =                  0.5125

            |      Dominance      Standardized      Ranking
            |      Stat.          Domin. Stat.
------------+------------------------------------------------------------------------
consump     |
 m2         |         0.2181      0.4256            2 
ARMA        |
 L.ar       |         0.2449      0.4778            1 
 L.ma       |         0.0495      0.0965            3 
-------------------------------------------------------------------------------------
Conditional dominance statistics
-------------------------------------------------------------------------------------

             #param_ests:  #param_ests:  #param_ests:
                       1             2             3
consump:m2        0.3482        0.2265        0.0797
 ARMA:L.ar        0.3905        0.2533        0.0910
 ARMA:L.ma        0.0856        0.0578        0.0050
-------------------------------------------------------------------------------------
Complete dominance designation
-------------------------------------------------------------------------------------

                  dominated?:  dominated?:  dominated?:
                          m2         L_ar         L_ma
  dominates?:m2            0           -1            1
dominates?:L_ar            1            0            1
dominates?:L_ma           -1           -1            0
-------------------------------------------------------------------------------------

Strongest dominance designations

ARMA:L.ar completely dominates consump:m2
consump:m2 completely dominates ARMA:L.ma
ARMA:L.ar completely dominates ARMA:L.ma

I have been working on a port of this module to R but it is not yet ready to accommodate an AR(I)MA model. Hope to add such capabilities in the future and, eventually, release on CRAN.

$\endgroup$
1
  • $\begingroup$ Hi @jluchman. I have read your paper and I appreciate it. The PERI approach using DA statistics is what I was looking for. I will apply it to my models. I will try to implement a function in Python to deal with simple regressions and dynamic regressions, once I am done I will get back to you. Thank you so much! $\endgroup$ Dec 30, 2020 at 10:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.