Page 3 of 6
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Thu Aug 01, 2013 5:13 pm
by TomDoan
miao wrote:Hi Tom,
I have questions about the variables. Could you check if I understand them correctly?
1.
GDPTOPLUS :Response of GDP growth to Positive oil shock
GDPTOMINUS : Response of GDP growth to Negative oil shock
GDPTOPLUSNOM : Response of GDP growth to Positive oil shock without M effect
GDPTOMINUSNOM : Response of GDP growth to Negative oil shock without M effect
That's correct.
miao wrote:
UPPER(1) , LOWER(1):Confidence interval for “GDPTOPLUS”
UPPER(2), LOWER(2) : Confidence interval for “GDPTOMINUS”
Two figures show the confidence bands for GDPTOPLUS and GDPTOMINUS,
RESP(1) , RESP(2):What are they? Are they the medians (50th percentiles) of the confidence bands?
That's described in the comments:
* This will do 16- and 84%-ile bands around the median response which is roughly
* the equivalent of +/- 1 s.d. bands, but allowing for asymmetry.
miao wrote:
2.
By “Without M effect”, does it mean that the IRF is computed from exactly the same estimated coefficients of M-model, but the coefficient of H_{1,1} terms in the mean equation is set to zero
With the current version of this program, the model is re-estimated without the M terms. An earlier version used the same coefficients but zeroed out the M terms, but after a more careful reading of the paper, I thought that the re-estimation was what they meant.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Mon Aug 05, 2013 3:14 am
by miao
Hi Tom,
Thank you very much for your reply. I attempt to use a SVAR model, which is pretty similar to the Elder 2010 model, for Elder 2010 data. I compare the IRF of SVAR (Response of GDP to oil shock) and the IRF (GDPTOPLUSNOM, GDPTOMINUSNOM) of Elder 2010 model. The trends look similar, but the magnitudes differ (much smaller in SVAR results). Could you explain the differences between the models?
I expected that they look similar.
The SVAR model I use is
B*y_t= A_1 y_{t-1}+ A_2 y_{t-2} +A_3 y_{t-3}+ A_4 y_{t-4} + epsilon
where B is a 2*2 lower triangular matrix with unit diagonal, and the only parameter to estimate is B(2,1)
Thanks.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Mon Aug 05, 2013 9:06 am
by TomDoan
Since the "SVAR" that you're doing is just a Cholesky factor, I'm not sure what you ended up having to estimate, but when I do
impulse(model=basevar,steps=12)
the scales of the responses are almost identical to the GARCH model.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Aug 06, 2013 3:03 am
by miao
Sorry for confusing. I estimate a VAR (with 4 lags) first, and then transform it to an SVAR framework with B, where B is an lower triangular matrix with unit diagonal. In SVAR terminology, the model is an A-model, which means we left-multiply y by matrix A( in this example B, the lower triangular matrix, is the A matrix). I think under this framework, the shock size is the standard deviation of the residual in the oil equation.
In Elder 2010, p. 1146, they indicate that the oil shock equals the annualized unconditional standard deviation of the change in the real oil price. Do you "annualize"? It's probably easier for us to reuse the code for other application without annualization.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Aug 06, 2013 10:44 am
by TomDoan
miao wrote:Sorry for confusing. I estimate a VAR (with 4 lags) first, and then transform it to an SVAR framework with B, where B is an lower triangular matrix with unit diagonal. In SVAR terminology, the model is an A-model, which means we left-multiply y by matrix A( in this example B, the lower triangular matrix, is the A matrix). I think under this framework, the shock size is the standard deviation of the residual in the oil equation.
A and B triangular models create identical orthogonal shocks (B=inv(A) and vice versa) so if you're getting different scales you're doing something wrong.
miao wrote:
In Elder 2010, p. 1146, they indicate that the oil shock equals the annualized unconditional standard deviation of the change in the real oil price. Do you "annualize"? It's probably easier for us to reuse the code for other application without annualization.
Their data are already converted to annualized growth rates. Using raw data, something like:
set oilgrow = 400.0*log(realoil/realoil{1})
set gdpgrow = 400.0*log(gdpmc1/gdpmc1{1})
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Thu Aug 08, 2013 4:02 am
by miao
Thanks for your reply, Tom.
In the the output time series, what do U(1) and U(2) represent? Thanks!
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Thu Aug 08, 2013 10:34 am
by TomDoan
The U's are the non-orthogonalized residuals, the V's are the orthogonalized ones. (This is the opposite of the notation used in the article, but is what is used in our documentation, and is more standard).
Note that this example is covered in (considerable) detail in the RATS
ARCH/GARCH and Volatility Models e-course.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Aug 20, 2013 2:02 am
by miao
Hi Tom,
Could the program be modified to compute the impulse response of GDP to oil price?
I understand the problem " impulse response of GDP to oil price" may make little economic sense, but under a few circumstances we have two variables, one of which is "relatively" exogenous, and I wonder if the program could be modified to compute the impulse response of the "relatively exogenous" variable to the "relatively endogenous" variable.
Thanks!
Miao
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Aug 20, 2013 5:48 am
by TomDoan
miao wrote:Hi Tom,
Could the program be modified to compute the impulse response of GDP to oil price?
I understand the problem " impulse response of GDP to oil price" may make little economic sense, but under a few circumstances we have two variables, one of which is "relatively" exogenous, and I wonder if the program could be modified to compute the impulse response of the "relatively exogenous" variable to the "relatively endogenous" variable.
I assume you mean response of oil to GDP since GDP to oil is what it does. Sure, in
@CalcIRF ||shock,0.0||
that's a shock to the first variable and not the second. Switch that to ||0.0,something|| to get a shock to GDP.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Mon Nov 04, 2013 11:19 pm
by istiak
Dear Tom
In the paper, in table 4, the first coefficient in the first column is -0.021 with t-ratio of 1.73. To get this result I added the following underlined lines in the code:
set d1 = t==1986:1
set d2 = t==1986:2
set d3 = t==1986:3
set d4 = t==1986:4
system(model=basevar)
variables oilgrow gdpgrow
lags 1 to nlags
det constant sqrthoil d1 d2 d3 d4
end(system)
I kept other parts of the code in oilgdpgarch program file same. But I don't get similar output as in the paper. Please suggest me how I can get the result. Thank you so much.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Nov 05, 2013 8:07 am
by TomDoan
It sounds from the text of the article that the dummies are only in the GDP equation, not the oil equation. (Dummying the oil equation zeros out the residuals during 1986, thus making the GARCH variance during 1986:2 to 1987:1 small). The following adds the restrictions on the dummies to the restriction already in the oil equation leaving out the "M" effect:
nonlin(parmset=mrestrict) bvec(1)(meffectpos)=0.0 bvec(1)(meffectpos+1)=0.0 $
bvec(1)(meffectpos+2)=0.0 bvec(1)(meffectpos+3)=0.0 bvec(1)(meffectpos+4)=0.0
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Nov 05, 2013 11:16 am
by istiak
Hi Tom
If I understand correctly, I should add
nonlin(parmset=mrestrict) bvec(1)(meffectpos)=0.0 bvec(1)(meffectpos+1)=0.0 $
bvec(1)(meffectpos+2)=0.0 bvec(1)(meffectpos+3)=0.0 bvec(1)(meffectpos+4)=0.0
along with
set d1 = t==1986:1
set d2 = t==1986:2
set d3 = t==1986:3
set d4 = t==1986:4
system(model=basevar)
variables oilgrow gdpgrow
lags 1 to nlags
det constant sqrthoil d1 d2 d3 d4
end(system)
Am I correct?
Thanks a lot.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Tue Nov 05, 2013 7:06 pm
by TomDoan
Yes.
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Wed Nov 27, 2013 2:00 am
by miao
Hi Tom,
In March 2013 I asked about the correct expansion of the model. However I think this could be wrong. I feel that this is the correct expansion of the model:
BVEC(1)(*)'s correspond to the oil equation, while B(2)(*) correspond to the GDP equation, and
y1=Oil price change
y2=GDP growth
y1(t)=BVEC(1)(9) + BVEC(1)(1)y1(t-1)+BVEC(1)(5)y2(t-1) + BVEC(1)(2)y1(t-2)+BVEC(1)(6)y2(t-2) + BVEC(1)(3)y1(t-3)+BVEC(1)(7)y2(t-3) + BVEC(1)(4)y1(t-4)+BVEC(1)(8)y2(t-4) + 0*H_{1,1} +\epsilon_{t1}
y2(t)=-B*y1(t)+ BVEC(2)(9) + BVEC(2)(1)y1(t-1)+BVEC(2)(5)y2(t-1) + BVEC(2)(2)y1(t-2)+BVEC(2)(6)y2(t-2) + BVEC(2)(3)y1(t-3)+BVEC(2)(7)y2(t-3) + BVEC(2)(4)y1(t-4)+BVEC(2)(8)y2(t-4) +BVEC(2)(10) *H_{1,1}^{1/2} +\epsilon_{t2}
Could you check if this is right?
Thanks
Miao
miao wrote:Hi Tom,
Following your reply that BVEC(2)(10) corresponds to the H_1,1 coefficient on oil volatility in the paper, could you check if my understanding is correct:
The model is
By = C + \Gamma_1 y_{t-1} + \Gamma_2 y_{t-2} +......+ \Gamma_p y_{t-p} + \Lambda(L) H^{1/2}_{t} +\epsilon_t
where y is a 2x1 column vector containing oil price change (1st element) and GDP growth (2nd element).
1.
In the B matrix, B(1,2)=0, B(1,1)=B(2,2)=1, and the only element to estimate is B(2,1), which corresponds to B in the program output.
2.
BVEC(1)(*)'s correspond to the oil equation, while B(2)(*) correspond to the GDP equation, and
y1=Oil price change
y2=GDP growth
y1(t)=BVEC(1)(1) + BVEC(1)(2)y1(t-1)+BVEC(1)(3)y2(t-1) + BVEC(1)(4)y1(t-2)+BVEC(1)(5)y2(t-2) + BVEC(1)(6)y1(t-3)+BVEC(1)(7)y2(t-3) + BVEC(1)(8)y1(t-4)+BVEC(1)(9)y2(t-4) + 0*H_{1,1} +\epsilon_{t1}
y2(t)=-B*y1(t)+ BVEC(2)(1) + BVEC(2)(2)y1(t-1)+BVEC(2)(3)y2(t-1) + BVEC(2)(4)y1(t-2)+BVEC(2)(5)y2(t-2) + BVEC(2)(6)y1(t-3)+BVEC(2)(7)y2(t-3) + BVEC(2)(8)y1(t-4)+BVEC(2)(9)y2(t-4) +BVEC(2)(10) *H_{1,1}^{1/2} +\epsilon_{t2}
3. Replacing real GDP series with Real personal consumption, Real investment, etc, then one can obtain all the other estimates of coefficients on H_{1,1}^{1/2} on Table 3, p1145, which is quoted below:
TABLE 3
COEFFICIENT ESTIMATES ON OIL VOLATILITY
Measure of real output Coefficient on H1,1(t)1/2, oil volatility
Real gross domestic product −0.022∗∗
(2.30)
Real gross domestic product (1967:1–2008:1) −0.011∗∗
West Texas Intermediate (2.47)
Real personal consumption expenditures: durable goods −0.107∗∗
(2.28)
Real gross private investment −0.153∗∗
(2.04)
Real PFI in nonresidential structures: commercial and health care −0.165∗∗
(2.39)
Real PFI in nonresidential structures: manufacturing −0.236
(1.47)
Real PFI in nonresidential structures: power and communication 0.022
(0.36)
Real PFI in nonresidential structures: mining, exploration, shafts −0.462∗∗
and wells (2.26)
Real PFI in nonresidential structures: other −0.183∗∗
(4.02)
Real PFI minus mining, exploration, shafts and wells −0.048
(1.37)
Real PFI nonresidential equipment and software −0.038
(1.00)
Industrial production monthly −0.017∗
(1.88)
NOTES: These are the parameter estimates for the free elements in from the structural VAR with bivariate GARCH given by equations
(1) and (2) with εt ∼ N(0, Ht ). H1,1(t)1/2 denotes the conditional standard deviation of the relevant measure of oil prices. Absolute
asymptotic t-statistics are in parentheses. The measure of the real oil price is based on the refiner’s acquisition cost of crude and the sample
is 1975:02–2008:01, except as indicated.
∗∗Denotes significance at the 5% level.
∗Denotes significance at the 10% level.
Thank you for your patience!
Miao
Re: Elder-Serletis(2010) VAR-GARCH-M
Posted: Wed Nov 27, 2013 2:54 am
by miao
How could we see the estimation results for the corresponding SVAR model without GARCH? Thanks,
Miao