Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Error correction model

    Hi everyone,

    I'm currently doing a cointegration analysis using the engle-granger 2-step approach. My procedure is the following:
    1. I check the data and their first differences for unit roots by computing an ADF-test
    2. I run a regression to investigate the long run relationship
    3. I check the residuals of the regression for unit roots
    4. I estimate an ECM to investigate the short-run relationship

    All data are in logs. REER stands for the real exchange rate, BIP_Index is a proxy for foreign income and X_Waren denotes goods exports

    1. dfuller log_reer, trend regress lags(1)

    Augmented Dickey-Fuller test for unit root Number of obs = 85

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -2.523 -4.073 -3.465 -3.159
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.3167

    ------------------------------------------------------------------------------
    D.log_reer | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    log_reer |
    L1. | -.096442 .0382302 -2.52 0.014 -.1725081 -.0203758
    LD. | .0819867 .1061352 0.77 0.442 -.129189 .2931624
    _trend | .0003003 .0001121 2.68 0.009 .0000773 .0005233
    _cons | .4345077 .1746945 2.49 0.015 .0869204 .7820949

    dfuller log_bip_index, trend regress lags(2)

    Augmented Dickey-Fuller test for unit root Number of obs = 84

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -2.122 -4.075 -3.466 -3.160
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.5336

    ------------------------------------------------------------------------------
    D.log_bip_~x | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    log_bip_in~x |
    L1. | -.150518 .0709206 -2.12 0.037 -.291682 -.0093541
    LD. | -.4924618 .1641424 -3.00 0.004 -.819179 -.1657446
    L2D. | .0318482 .1638588 0.19 0.846 -.2943046 .3580009
    _trend | .0000756 .0001406 0.54 0.592 -.0002043 .0003555
    _cons | .5986994 .2779051 2.15 0.034 .0455431 1.151856

    dfuller log_x_waren, trend regress lags(1)

    Augmented Dickey-Fuller test for unit root Number of obs = 85

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -2.597 -4.073 -3.465 -3.159
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.2812

    ------------------------------------------------------------------------------
    D.log_x_wa~n | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    log_x_waren |
    L1. | -.1658003 .0638414 -2.60 0.011 -.2928246 -.0387759
    LD. | .0493087 .1116325 0.44 0.660 -.1728049 .2714223
    _trend | .0017861 .0007476 2.39 0.019 .0002986 .0032737
    _cons | 1.704441 .6499202 2.62 0.010 .4113041 2.997579


    dfuller d_log_reer, trend regress

    Dickey-Fuller test for unit root Number of obs = 85

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -8.812 -4.073 -3.465 -3.159
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.0000

    ------------------------------------------------------------------------------
    D.d_log_reer | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    d_log_reer |
    L1. | -.9557477 .108458 -8.81 0.000 -1.171505 -.7399901
    _trend | .0001481 .0000975 1.52 0.133 -.0000458 .000342
    _cons | -.0058777 .0048036 -1.22 0.225 -.0154337 .0036782

    dfuller d_log_bip_index, trend regress

    Dickey-Fuller test for unit root Number of obs = 85

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -10.372 -4.073 -3.465 -3.159
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.0000

    ------------------------------------------------------------------------------
    D.d_log_bi~x | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    d_log_bip_~x |
    L1. | -1.570418 .1514047 -10.37 0.000 -1.87161 -1.269226
    _trend | -.0001231 .0000959 -1.28 0.203 -.0003138 .0000676
    _cons | .0076598 .0047575 1.61 0.111 -.0018043 .0171239
    ------------------------------------------------------------------------------

    dfuller d_log_x_waren, trend regress

    Dickey-Fuller test for unit root Number of obs = 85

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -9.357 -4.073 -3.465 -3.159
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.0000

    ------------------------------------------------------------------------------
    D.d_log_x_~n | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    -------------+----------------------------------------------------------------
    d_log_x_wa~n |
    L1. | -1.034427 .1105552 -9.36 0.000 -1.254356 -.8144974
    _trend | -.0001184 .0001503 -0.79 0.433 -.0004175 .0001806
    _cons | .0165497 .0076233 2.17 0.033 .0013845 .0317148

    From this output I suppose the data are I(1), because the first differences are stationary.

    2. regress log_x_waren log_reer log_bip_index

    Source | SS df MS Number of obs = 87
    -------------+------------------------------ F( 2, 84) = 119.36
    Model | 5.50974913 2 2.75487456 Prob > F = 0.0000
    Residual | 1.93867794 84 .023079499 R-squared = 0.7397
    -------------+------------------------------ Adj R-squared = 0.7335
    Total | 7.44842707 86 .086609617 Root MSE = .15192

    -------------------------------------------------------------------------------
    log_x_waren | Coef. Std. Err. t P>|t| [95% Conf. Interval]
    --------------+----------------------------------------------------------------
    log_reer | 1.640304 .223489 7.34 0.000 1.195871 2.084736
    log_bip_index | 4.281953 .3190352 13.42 0.000 3.647517 4.91639
    _cons | -13.97056 1.620998 -8.62 0.000 -17.19409 -10.74703


    3. dfuller e_hat

    Dickey-Fuller test for unit root Number of obs = 86

    ---------- Interpolated Dickey-Fuller ---------
    Test 1% Critical 5% Critical 10% Critical
    Statistic Value Value Value
    ------------------------------------------------------------------------------
    Z(t) -3.168 -3.530 -2.901 -2.586
    ------------------------------------------------------------------------------
    MacKinnon approximate p-value for Z(t) = 0.0219

    As far as I know the residuals are stationary according to the test statistic.

    4. vec log_x_waren log_bip_index log_reer , trend(constant) lags(2)

    Vector error-correction model

    Sample: 1995q3 - 2016q3 No. of obs = 85
    AIC = -13.49135
    Log likelihood = 590.3822 HQIC = -13.29485
    Det(Sigma_ml) = 1.86e-10 SBIC = -13.00282

    Equation Parms RMSE R-sq chi2 P>chi2
    ----------------------------------------------------------------
    D_log_x_waren 5 .034249 0.1105 9.942754 0.0769
    D_log_bip_index 5 .021749 0.1799 17.5486 0.0036
    D_log_reer 5 .020755 0.1468 13.76807 0.0172
    ----------------------------------------------------------------

    ---------------------------------------------------------------------------------
    | Coef. Std. Err. z P>|z| [95% Conf. Interval]
    ----------------+----------------------------------------------------------------
    D_log_x_waren |
    _ce1 |
    L1. | -.0167854 .0243275 -0.69 0.490 -.0644665 .0308957
    |
    log_x_waren |
    LD. | -.0304141 .115653 -0.26 0.793 -.2570898 .1962615
    |
    log_bip_index |
    LD. | .1107395 .2534919 0.44 0.662 -.3860954 .6075744
    |
    log_reer |
    LD. | -.0435067 .1716449 -0.25 0.800 -.3799246 .2929112
    |
    _cons | .010315 .0041562 2.48 0.013 .0021691 .018461
    ----------------+----------------------------------------------------------------
    D_log_bip_index |
    _ce1 |
    L1. | -.0023862 .0154488 -0.15 0.877 -.0326653 .0278928
    |
    log_x_waren |
    LD. | .1264767 .0734434 1.72 0.085 -.0174697 .2704232
    |
    log_bip_index |
    LD. | -.6111421 .1609756 -3.80 0.000 -.9266485 -.2956356
    |
    log_reer |
    LD. | .0796915 .1090001 0.73 0.465 -.1339449 .2933278
    |
    _cons | .0008418 .0026393 0.32 0.750 -.0043312 .0060147
    ----------------+----------------------------------------------------------------
    D_log_reer |
    _ce1 |
    L1. | .0532652 .0147427 3.61 0.000 .0243701 .0821602
    |
    log_x_waren |
    LD. | -.0374401 .0700864 -0.53 0.593 -.174807 .0999268
    |
    log_bip_index |
    LD. | .1044381 .1536177 0.68 0.497 -.1966471 .4055232
    |
    log_reer |
    LD. | .068785 .1040179 0.66 0.508 -.1350864 .2726564
    |
    _cons | .0032883 .0025187 1.31 0.192 -.0016482 .0082248
    ---------------------------------------------------------------------------------

    Cointegrating equations

    Equation Parms chi2 P>chi2
    -------------------------------------------
    _ce1 2 32.31889 0.0000
    -------------------------------------------

    Identification: beta is exactly identified

    Johansen normalization restriction imposed
    -------------------------------------------------------------------------------
    beta | Coef. Std. Err. z P>|z| [95% Conf. Interval]
    --------------+----------------------------------------------------------------
    _ce1 |
    log_x_waren | 1 . . . . .
    log_bip_index | -3.405051 .859118 -3.96 0.000 -5.088891 -1.721211
    log_reer | -2.404049 .5994917 -4.01 0.000 -3.579031 -1.229067
    _cons | 13.97209 . . . . .
    -------------------------------------------------------------------------------

    As one can see, none of the coefficients is statistically significant and I'm asking my self why this is the case.

    Could anyone explain how this can happen? Did I do something wrong in the procedure or is one of the stata commands not correct?

    Any help would be highly appreciated.

    Kind regards

    Donat

  • #2
    Note that your last step is not the estimation of a single-equation ECM as in the Engle-Granger approach but of a VECM. For the Engle-Granger two-step approach, you might want to have a look at the user-written command egranger:
    Code:
    ssc install egranger
    help egranger
    Also see slides 5 and 6 of my presentation at last year's Stata Conference, and the remainder of that presentation for an alternative to the Engle-Granger two-step approach:
    https://www.kripfganz.de/stata/

    Comment


    • #3
      Thank's for the hint. I used the egranger command to estimate an ECM.

      egranger log_x_waren log_reer log_bip_index, ecm lags(2) regress
      Replacing variable _egresid...

      Engle-Granger 2-step ECM estimation N (1st step) = 87
      Number of lags = 2 N (2nd step) = 84

      Engle-Granger 1st-step regression
      -------------------------------------------------------------------------------
      log_x_waren | Coef. Std. Err. t P>|t| [95% Conf. Interval]
      --------------+----------------------------------------------------------------
      log_reer | 1.640304 .223489 7.34 0.000 1.195871 2.084736
      log_bip_index | 4.281953 .3190352 13.42 0.000 3.647517 4.91639
      _cons | -13.97056 1.620998 -8.62 0.000 -17.19409 -10.74703
      -------------------------------------------------------------------------------

      Engle-Granger 2-step ECM
      -------------------------------------------------------------------------------
      D.log_x_waren | Coef. Std. Err. t P>|t| [95% Conf. Interval]
      --------------+----------------------------------------------------------------
      _egresid |
      L1. | -.0154389 .030195 -0.51 0.611 -.0755775 .0446996
      |
      log_x_waren |
      LD. | -.0472074 .1202086 -0.39 0.696 -.2866235 .1922088
      L2D. | -.1661388 .1199037 -1.39 0.170 -.4049476 .0726701
      |
      log_reer |
      LD. | -.0384136 .1767611 -0.22 0.829 -.3904637 .3136366
      L2D. | -.1178015 .1749301 -0.67 0.503 -.466205 .2306021
      |
      log_bip_index |
      LD. | .1908264 .3000436 0.64 0.527 -.4067623 .7884151
      L2D. | .0659099 .2860667 0.23 0.818 -.5038414 .6356611
      |
      _cons | .0129228 .0042821 3.02 0.003 .0043941 .0214514

      The coefficients are still not significant and I can't figure out why this happens.

      Does anyone know what could be the problem?

      Comment


      • #4
        Sometimes, an effect just does not exist. That does not have to be a problem.

        You might double-check your results with the ardl command to see if you get similar results.
        https://www.kripfganz.de/stata/

        Comment

        Working...
        X