Announcement

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

  • Testing for ARCH effects in panel data

    Hi all,

    I am conducting an event study on volatility, and am trying to conduct Engle Lagrange's test for ARCH effects with the following code:

    Code:
    estat archlm, lags(1)



    The output from this code, is that "estat archlm not valid"

    I was wondering if anyone could help? I have also tried the following, seeing as I am using panel data with repeated time variables.

    Code:

    regress market_return return
    archlm, lags(2)

    To which the output is "sample may not include multiple panels"

    I have tested for heteroscedasticity using the "hettest" command and have found heteroscedasticity to be present. Would this suffice?

    I would really appreciate some help in the matter.

    Kind regard,

    Sarah.

  • #2
    Sarah: It's easy to implement a test "by hand." I do wonder if you have reversed market_return and return in the regression. But I'll assume that's what you want.

    Code:
    xtset id time
    reg market_return return
    predict uh, resid
    gen uhsq = uh^2
    reg uhsq L.uhsq L2.uhsq, vce(robust)
    The F statistic in the final regression is the test of the null of no ARCH effects. The "robust" option makes it robust to nonnormality.

    Comment


    • #3
      Hi Jeff

      Thank you so much for your response, this has really helped me!

      You are right - I had switched the variables around in my regression command, thank you for pointing that out.

      I wanted to ask - I am looking into volatility, and have thus created a variable, "returnsd" which is the standard deviation of returns, which is my volatility measure.

      Should I use returnsd in the regression command, instead of return?

      Kind regards,

      Sarah

      Comment


      • #4
        I doubt that. Typically the predictions of the ARCH regression are the estimated volatilities. Did you want to estimate an Arch-in-Mean model, where the volatility affects the mean return?

        Code:
        reg uhsq L.uhsq L2.uhsq, vce(robust)
        predict vhat
        vhat is the estimated volatility.

        Comment


        • #5
          Do you want to test whether volatility changed with some event? Then you could use, where "event" is the event dummy,

          Code:
          reg uhatsq L.uhatsq L2.uhatsq event, vce(robust)

          Comment


          • #6
            Hi Jeff,

            Thank you for your response.

            I am using the GARCH(1,1) model to estimate benchmark volatility during my event window, and then comparing it to the cumulative abnormal volatility around the event date, which was calculated from thew predicted variance. Does this sound correct to you?

            Comment


            • #7
              HI

              I am working on estimation of GARCH for closing price of companies listed in National Stock Exchange. So my data is as follow


              return_day c1 c2 c3 c4 c5 c6 c7 c8
              return1
              return2 .042488 -.002091 .049257 .022305 .046205 .025575
              return3 .012995 -.007702 .049601 .042437 .041009 -.005937
              return4 .020408 .037203 .049789 .011144 .048485 -.007035
              return5 .027429 .009519 .086013 -.019403 .054913 -.007352
              return6 -.015017 .028345 .017765 .015935 .038356 .027067
              return7 .053077 .007512 -.038545 .002481 .065963 -.013636
              return8 -.031635 -.02607 .004539 -.005374 -.039604 -.012761
              return9 -.008859 .008191 .000753 -.001801 .005155 -.001346
              return10 -.03352 -.013484 -.056433 .012132 -.051282 -.016314
              return11 .036416 .050798 -.047049 -.015783 -.032432 -.012198
              return12 -.04406 -.027497 .017573 -.0209 .011173 .000971
              return13 .033839 -.014096 .039474 .019026 .005525 .057527
              return14 .001693 -.008764 .008703 -.034338 -.032967 -.005767
              return15 -.026479 -.00853 -.032941 -.015443 -.008523 -.025577
              return16 .008681 -.016749 -.020276 -.007756 .022923 .013665
              return17 -.024096 -.017993 -.024834 -.001999 -.047619 -.020822
              return18 -.024103 .009827 -.025467 .002419 -.032353 -.002317
              return19 -.024096 .009028 .006098 -.002613 -.045593 -.014893
              return20 .025309 .028527 -.034632 -.006687 -.019108 -.057143

              Where return is change is closing price compare to previous day closing price. In this data, there are about 8 companies (c1, c2, ...c8 is shown in above table).

              I am trying to use foreach in stata so that i can calcuate and store result. I am trying following

              foreach company1 in 1 2 ... 8{

              arch c, arch(1) garch(1)


              estimates store model`company'
              }


              When i run this in do file, i get same output 8 times. so there is something wrong.

              Pls help me.

              Comment


              • #8
                Hello, everyone!
                I am applying PANEL GARCH using Stata but I have some doubts regarding how to apply the diagnosis tests.
                I checked in the option "postestimation", but I did not find the tests for the residuals. Only appears the option to check the Akaike criteria.
                Does anybody know how to perform the diagnosis tests (after tests) for PANEL GARCH?

                Thanks in advance.

                Comment

                Working...
                X