statsmodels.tsa.vector_ar.vecm.VECMResults.test_inst_causality

VECMResults.test_inst_causality(causing, signif=0.05)[source]

Test for instantaneous causality.

The concept of instantaneous causality is described in chapters 3.6.3 and 7.6.4 of [1]. Test H0: “No instantaneous causality between the variables in caused and those in causing” against H1: “Instantaneous causality between caused and causing exists”. Note that instantaneous causality is a symmetric relation (i.e. if causing is “instantaneously causing” caused, then also caused is “instantaneously causing” causing), thus the naming of the parameters (which is chosen to be in accordance with test_granger_causality) may be misleading.

Parameters:
causingint or str or sequence of int or str

If int or str, test whether the corresponding variable is causing the variable(s) specified in caused. If sequence of int or str, test whether the corresponding variables are causing the variable(s) specified in caused.

signiffloat, 0 < signif < 1, default 5 %

Significance level for computing critical values for test, defaulting to standard 0.05 level.

Returns:
resultsstatsmodels.tsa.vector_ar.hypothesis_test_results.CausalityTestResults

Notes

This method is not returning the same result as JMulTi. This is because the test is based on a VAR(k_ar) model in statsmodels (in accordance to pp. 104, 320-321 in [1]) whereas JMulTi seems to be using a VAR(k_ar+1) model. Reducing the lag order by one in JMulTi leads to equal results in statsmodels and JMulTi.

References

[1] (1,2)

Lütkepohl, H. 2005. New Introduction to Multiple Time Series Analysis. Springer.


Last update: Feb 14, 2024