Chapter 22. GMM estimation
200
These will become our moment conditions; substituting the finite sample analogues of the theoret-
ical moments we have
¯
X
ˆp
ˆ
(22.7)
Vx
i
 
ˆp
ˆ
2
(22.8)
Of course, the two equations above are easy to solve analytically, giving
ˆ

ˆ
V
¯
X
and ˆp 
¯
X
ˆ
,(
ˆ
V being
the sample variance of x
i
), but it’s instructive to see how the gmm command will solve this system
of equations numerically.
We feed gretl the necessary ingredients for GMM estimation in a commandblock, starting with gmm
and ending with end gmm. Three elements are compulsory within a gmm block:
1. one or more orthog statements
2. one weights statement
3. one params statement
The three elements should be given in the stated order.
The orthog statements are used to specify the orthogonality conditions. They must follow the
syntax
orthog x ; Z
where x may be a series, matrix or list of series and Z may also be a series, matrix or list. Note the
structure of the orthogonality condition: it is assumed that the term to the left of the semicolon
represents a quantity that depends on the estimated parameters (and so must be updated in the
process of iterative estimation), while the term on the right is a constant function ofthe data.
The weights statement is used to specify the initial weighting matrix and its syntax is straightfor-
ward.
The params statement specifies the parameters with respect to which the GMM criterion should be
minimized; it follows the same logic andrules as in the mle and nls commands.
The minimum is found through numerical minimization via BFGS (see chapters31 and21). The
progress of the optimization procedure can be observed by appending the --verbose switch to
the end gmm line.
Equations22.7 and22.8 are not yet in the “moment condition” form required by the gmm command.
We need to transform them and arrive at something looking like Ee
j;i
z
j;i
 0, with j  1:::2.
Therefore, we need two corresponding observable variables e
1
and e
2
with corresponding instru-
ments z
1
and z
2
and tell gretl that
ˆ
Ee
j
z
j
 0 must be satisfied (where we used the
ˆ
E notation
to indicate sample moments).
If we define the instrument as a series of ones, and set e
1;i
x
i
p, then we can re-write the first
moment condition as
ˆ
Ex
i
p 1  0:
Thisis in the form requiredby the gmm command: in the required input statement “orthog e ; z”,
e will be the variable on the left (defined as a series) and z will the variable to the right of the
semicolon. Since z
1;i
1 for all i, we can use the built-in series const for that.
For the second moment condition we have, analogously,
ˆ
E
nh
x
i
¯
X
2
p
2
i
1
o
0;
How to convert pdf to ppt online - control SDK system:C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF in C#.net, ASP.NET MVC, WinForms, WPF
Online C# Tutorial for Creating PDF from Microsoft PowerPoint Presentation
www.rasteredge.com
How to convert pdf to ppt online - control SDK system:VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to PDF in vb.net, ASP.NET MVC, WinForms, WPF
VB.NET Tutorial for Export PDF file from Microsoft Office PowerPoint
www.rasteredge.com
Chapter 22. GMM estimation
201
so that by setting e
2;i
x
i
¯
X
2
p
2
and z
2
z
1
we can re-write the second moment condition
as
ˆ
Ee
2;i
1 0.
The weighting matrix, which is required by the gmm command, can be set to any 2  2 positive
definite matrix, since under exact identification the choice does not matter and its dimension is
determined by the number of orthogonality conditions. Therefore, we’ll use the identity matrix.
Example code follows:
# create an empty data set
nulldata 200
# fix a random seed
set seed 2207092
#generate a gamma random variable with, say, shape p = 3 and scale theta = 2
series x = randgen(G, 3, 2)
#declare and set some initial value for parameters p and theta
scalar p = 1
scalar theta =1
#create the weight matrix as the identity matrix
matrix W = I(2)
#declare the series to be used in the orthogonality conditions
series e1 = 0
series e2 = 0
gmm
scalar m = mean(x)
series e1 = x - p*theta
series e2 = (x - m)^2 - p*theta^2
orthog e1 ; const
orthog e2 ; const
weights W
params p theta
end gmm
The corresponding output is
Model 1: 1-step GMM, using observations 1-200
estimate
std. error
z
p-value
---------------------------------------------------
p
3.09165
0.346565
8.921
4.63e-19 ***
theta
1.89983
0.224418
8.466
2.55e-17 ***
GMM criterion: Q = 4.97341e-28 (TQ = 9.94682e-26)
If we want to use the unbiased estimator for the sample variance, we’d have to adjust the second
moment condition by substituting
series e2 = (x - m)^2 - p*theta^2
with
control SDK system:Online Convert PowerPoint to PDF file. Best free online export
Online Powerpoint to PDF Converter. Download Free Trial. Convert a PPTX/PPT File to PDF. Just upload your file by clicking on the blue
www.rasteredge.com
control SDK system:How to C#: Convert PDF, Excel, PPT to Word
How to C#: Convert PDF, Excel, PPT to Word. Online C# Tutorial for Converting PDF, MS-Excel, MS-PPT to Word. PDF, MS-Excel, MS-PPT to Word Conversion Overview.
www.rasteredge.com
Chapter 22. GMM estimation
202
scalar adj = $nobs / ($nobs - 1)
series e2 = adj * (x - m)^2 - p*theta^2
with the corresponding slight change in the output:
Model 1: 1-step GMM, using observations 1-200
estimate
std. error
z
p-value
---------------------------------------------------
p
3.07619
0.344832
8.921
4.63e-19 ***
theta
1.90937
0.225546
8.466
2.55e-17 ***
GMM criterion: Q = 2.80713e-28 (TQ = 5.61426e-26)
One can observe tiny improvements in the point estimates, since both moved a tad closer to the
true values. This, however, is just a small-sample effect and not something you should expect in
larger samples.
22.3 OLS as GMM
Let us now move to an example that is closer to econometrics proper: the linear model y
t
x
t
 u
t
. Although most of us are used to read it as the sum of a hazily defined “systematic
part” plus an equally hazy “disturbance”, a more rigorous interpretation of this familiar expression
comes from the hypothesis that the conditional mean Ey
t
jx
t
is linear and the definition of u
t
as
y
t
Ey
t
jx
t
.
From the definition of u
t
,it follows that Eu
t
jx
t
 0. The following orthogonality condition is
therefore available:
Ef  0;
(22.9)
where f  y
t
x
t
x
t
.The definitions given in section22.1 therefore specialize here to:
  is ;
 the instrument is x
t
;
 f
i;j;t
 isy
t
x
t
x
t
u
t
x
t
;the orthogonality condition isinterpretable asthe requirement
that the regressors should be uncorrelated with the disturbances;
 W can be any symmetric positive definite matrix, since the number of parameters equals the
number of orthogonality conditions. Let’s say we choose I.
 The function F;W is in this case
F;W 
2
4
1
T
XT
t1
ˆ
u
t
x
t
3
5
2
and it is easy to see why OLS and GMM coincide here: the GMM objective function has the
same minimizer as the objective function of OLS, the residual sum ofsquares. Note, however,
that the two functions are not equal to one another: at the minimum, F;W  0 while the
minimized sum of squared residuals is zero only in the special case of a perfect linear fit.
The code snippet contained in Example22.1 uses gretl’s gmm command to make the above opera-
tional. In example22.1, the series e holds the “residuals” and the series x holds the regressor. If x
had been a list (a matrix), the orthog statement would have generatedone orthogonality condition
for each element (column) of x.
control SDK system:How to C#: Convert Word, Excel and PPT to PDF
How to C#: Convert Word, Excel and PPT to PDF. Online C# Tutorial for Converting MS Office Word, Excel and PowerPoint to PDF. MS Office
www.rasteredge.com
control SDK system:C# PDF Convert: How to Convert MS PPT to Adobe PDF Document
C# PDF Convert: How to Convert MS PPT to Adobe PDF Document. Provide Free Demo Code for PDF Conversion from Microsoft PowerPoint in C# Program.
www.rasteredge.com
Chapter 22. GMM estimation
203
Example 22.1: OLS viaGMM
/* initialize stuff */
series e = 0
scalar beta = 0
matrix W = I(1)
/* proceed with estimation */
gmm
series e = y - x*beta
orthog e ; x
weights W
params beta
end gmm
22.4 TSLS as GMM
Moving closer to the proper domain of GMM, we now consider two-stage least squares (TSLS) as a
case of GMM.
TSLS isemployed in thecase where one wishesto estimate a linear model ofthe form y
t
X
t
u
t
,
but where one ormore ofthe variables in thematrixX are potentially endogenous—correlated with
the error term, u. We proceed by identifying a set of instruments, Z
t
, which are explanatory for
the endogenous variables in X but which are plausibly uncorrelated with u. The classic two-stage
procedure is (1) regress the endogenous elements of X on Z; then (2) estimate the equation of
interest, with the endogenous elements of X replaced by their fitted values from (1).
An alternative perspective is given by GMM. We define the residual ˆu
t
as y
t
X
t
ˆ
, as usual. But
instead of relying on EujX 0 as in OLS, we base estimation on the condition EujZ  0. In this
case it is natural to base the initial weighting matrix on the covariance matrix of the instruments.
Example22.2 presents a model from Stock andWatson’s Introduction to Econometrics. The demand
for cigarettes is modeled as a linear function of the logs of price and income; income is treated as
exogenous while price is taken to be endogenousand two measures of taxare used asinstruments.
Since we have two instruments and one endogenous variable the model is over-identified.
In the GMM context, thishappens when you have more orthogonality conditionsthan parameters to
estimate. Ifso, asymptotic efficiency gains can be expected by iterating the procedure once ormore.
This is accomplished ny specifying, after the end gmm statement, two mutually exclusive options:
--two-step or --iterate, whose meaning shouldbe obvious. Notethat, when the problem is over-
identified, the weights matrix will influence the solution you get from the 1- and 2- stepprocedure.
+
In cases other than one-step estimation the specified weights matrix will be overwritten with the final
weights on completion of the gmm command. If you wish to execute more than one GMM block with a
common starting-point it is therefore necessary to reinitialize the weights matrix betweenruns.
Partial output from this script is shown in 22.3. The estimated standard errors from GMM are
robust by default;if we supply the --robust option to the tsls commandwe get identical results.2
After the end gmm statement two mutually exclusive options can be specified: --two-step or
--iterate, whose meaning should be obvious.
2
The data file used in this example is available in the Stock and Watson package for gretl. See http://gretl.
sourceforge.net/gretl_data.html.
control SDK system:C# TIFF: Learn to Convert MS Word, Excel, and PPT to TIFF Image
PPTXDocument doc = new PPTXDocument(@"demo.pptx"); if (null == doc) throw new Exception("Fail to load PowerPoint Document"); // Convert PPT to Tiff.
www.rasteredge.com
control SDK system:VB.NET PowerPoint: Process & Manipulate PPT (.pptx) Slide(s)
This VB.NET online tutorial page can help you processing control add-on can do PPT creating, loading powerful & profession imaging controls, PDF document, image
www.rasteredge.com
Chapter 22. GMM estimation
204
Example 22.2: TSLSvia GMM
open cig_ch10.gdt
# real avg price including sales tax
genr ravgprs = avgprs / cpi
# real avg cig-specific tax
genr rtax = tax / cpi
# real average total tax
genr rtaxs = taxs / cpi
# real average sales tax
genr rtaxso = rtaxs - rtax
# logs of consumption, price, income
genr lpackpc = log(packpc)
genr lravgprs = log(ravgprs)
genr perinc = income / (pop*cpi)
genr lperinc = log(perinc)
# restrict sample to 1995 observations
smpl --restrict year=1995
# Equation (10.16) by tsls
list xlist = const lravgprs lperinc
list zlist = const rtaxso rtax lperinc
tsls lpackpc xlist ; zlist --robust
# setup for gmm
matrix Z = { zlist }
matrix W = inv(Z’Z)
series e = 0
scalar b0 = 1
scalar b1 = 1
scalar b2 = 1
gmm e = lpackpc - b0 - b1*lravgprs - b2*lperinc
orthog e ; Z
weights W
params b0 b1 b2
end gmm
control SDK system:VB.NET PowerPoint: Convert & Render PPT into PDF Document
VB.NET PowerPoint - Render PPT to PDF in VB.NET. How to Convert PowerPoint Slide to PDF Using VB.NET Code in .NET. Visual C#. VB.NET. Home > .NET Imaging SDK >
www.rasteredge.com
control SDK system:VB.NET PowerPoint: Read & Scan Barcode Image from PPT Slide
VB.NET PPT PDF-417 barcode scanning SDK to detect PDF-417 barcode image from PowerPoint slide. VB.NET APIs to detect and decode
www.rasteredge.com
Chapter 22. GMM estimation
205
Example 22.3: TSLSvia GMM:partial output
Model 1: TSLS estimates using the 48 observations 1-48
Dependent variable: lpackpc
Instruments: rtaxso rtax
Heteroskedasticity-robust standard errors, variant HC0
VARIABLE
COEFFICIENT
STDERROR
T STAT
P-VALUE
const
9.89496
0.928758
10.654
<0.00001 ***
lravgprs
-1.27742
0.241684
-5.286
<0.00001 ***
lperinc
0.280405
0.245828
1.141
0.25401
Model 2: 1-step GMM estimates using the 48 observations 1-48
e = lpackpc - b0 - b1*lravgprs - b2*lperinc
PARAMETER
ESTIMATE
STDERROR
T STAT
P-VALUE
b0
9.89496
0.928758
10.654
<0.00001 ***
b1
-1.27742
0.241684
-5.286
<0.00001 ***
b2
0.280405
0.245828
1.141
0.25401
GMM criterion = 0.0110046
22.5 Covariance matrix options
The covariance matrixof the estimated parameters depends on the choice of W through
ˆ
Ö J
0
WJ
1
J
0
WÚWJJ
0
WJ
1
(22.10)
where J is a Jacobian term
J
ij
@
¯
f
i
@
j
and Ú is the long-run covariance matrixof the orthogonality conditions.
Gretl computes J by numeric differentiation (there is no provision for specifying a user-supplied
analytical expression for J at the moment). As for Ú, a consistent estimate is needed. The simplest
choice is the sample covariance matrix of the f
t
s:
ˆ
Ú
0
 
1
T
XT
t1
f
t
f
t

0
(22.11)
This estimator is robust with respect to heteroskedasticity, but not with respect to autocorrela-
tion. A heteroskedasticity- and autocorrelation-consistent (HAC) variant can be obtained using
the Bartlett kernel or similar. A univariate version of this is used in the context of the lrvar()
function—see equation (9.1). The multivariate version is set out in equation (22.12).
ˆ
Ú
k
 
1
T
TX k
tk
2
4
Xk
i k
w
i
f
t
f
t i

0
3
5
;
(22.12)
Gretl computes the HAC covariance matrix by default when a GMM model is estimated on time
series data. You can control the kernel and the bandwidth (that is, the value of k in22.12) using
the set command. See chapter17 for further discussion of HAC estimation. You can also ask gretl
not to use the HAC version by saying
set force_hc on
Chapter 22. GMM estimation
206
22.6 A real example: the Consumption Based Asset Pricing Model
To illustrate gretl’s implementation of GMM, we will replicate the example given in chapter 3 of
Hall(2005). ThemodeltoestimateisaclassicapplicationofGMM,andprovidesanexampleofa
case when orthogonality conditions do not stem from statistical considerations, but rather from
economic theory.
A rational individual who must allocate his income between consumption and investment in a
financial asset must in fact choose the consumption path of his whole lifetime, since investment
translates into future consumption. It can be shown that an optimal consumption path should
satisfy the following condition:
pU
0
c
t
 
k
E
r
tk
U
0
c
tk
jF
t
;
(22.13)
where p is the asset price, U is the individual’s utility function,  is the individual’s subjective
discount rate and r
tk
is the asset’s rate of return between time t and time t k. F
t
is the infor-
mation set at time t; equation (22.13) says that the utility “lost” at time t by purchasing the asset
instead of consumption goods must be matched by a corresponding increase in the (discounted)
future utility of the consumption financed by the asset’s return. Since the future is uncertain, the
individual considers his expectation, conditional on what is known at the time when the choice is
made.
We have saidnothing about the nature ofthe asset, so equation (22.13) should hold whatever asset
we consider; hence, it is possible to build a system of equations like (22.13) for each asset whose
price we observe.
If we are willing to believe that
 the economy as a whole can be represented as a single gigantic and immortal representative
individual, and
 the function Ux 
x 1
is a faithful representation ofthe individual’s preferences,
then, setting k 1, equation (22.13) implies the following for any asset j:
E
"
r
j;t1
p
j;t
C
t1
C
t
 1
F
t
#
1;
(22.14)
where C
t
is aggregate consumption and  and  are the risk aversion and discount rate of the
representative individual. In this case, it is easy to see that the “deep” parameters  and  can be
estimated via GMM by using
e
t

r
j;t1
p
j;t
C
t1
C
t
 1
1
as the moment condition, while any variable known at time t may serve as an instrument.
In the example code given in22.4, we replicate selected portions of table 3.7 inHall(2005). The
variable consrat is defined as the ratio of monthly consecutive real per capita consumption (ser-
vices and nondurables) for the US, and ewr is the return–price ratio of a fictitious asset constructed
by averaging all the stocks in the NYSE. The instrument set contains the constant and two lags of
each variable.
The commandset force_hc onon thesecondline ofthescript has thesole purposeofreplicating
the given example: as mentioned above, it forces gretl to compute the long-run variance of the
orthogonality conditions according to equation (22.11) rather than (22.12).
We run gmm four times: one-step estimation for each of two initial weights matrices, then iterative
estimation starting from each set of initial weights. Since the number of orthogonality conditions
(5) is greater than the number of estimated parameters (2), the choice of initial weights should
make a difference, and indeed we see fairly substantial differences between the one-step estimates
Chapter 22. GMM estimation
207
Example 22.4: Estimation of the Consumption Based Asset Pricing Model
open hall.gdt
set force_hc on
scalar alpha = 0.5
scalar delta = 0.5
series e = 0
list inst = const consrat(-1) consrat(-2) ewr(-1) ewr(-2)
matrix V0 = 100000*I(nelem(inst))
matrix Z = { inst }
matrix V1 = $nobs*inv(Z’Z)
gmm e = delta*ewr*consrat^(alpha-1) - 1
orthog e ; inst
weights V0
params alpha delta
end gmm
gmm e = delta*ewr*consrat^(alpha-1) - 1
orthog e ; inst
weights V1
params alpha delta
end gmm
gmm e = delta*ewr*consrat^(alpha-1) - 1
orthog e ; inst
weights V0
params alpha delta
end gmm --iterate
gmm e = delta*ewr*consrat^(alpha-1) - 1
orthog e ; inst
weights V1
params alpha delta
end gmm --iterate
Chapter 22. GMM estimation
208
Example 22.5: Estimation of theConsumptionBased Asset Pricing Model — output
Model 1: 1-step GMM estimates using the 465 observations 1959:04-1997:12
e = d*ewr*consrat^(alpha-1) - 1
PARAMETER
ESTIMATE
STDERROR
T STAT
P-VALUE
alpha
-3.14475
6.84439
-0.459
0.64590
d
0.999215
0.0121044
82.549
<0.00001 ***
GMM criterion = 2778.08
Model 2: 1-step GMM estimates using the 465 observations 1959:04-1997:12
e = d*ewr*consrat^(alpha-1) - 1
PARAMETER
ESTIMATE
STDERROR
T STAT
P-VALUE
alpha
0.398194
2.26359
0.176
0.86036
d
0.993180
0.00439367
226.048
<0.00001 ***
GMM criterion = 14.247
Model 3: Iterated GMM estimates using the 465 observations 1959:04-1997:12
e = d*ewr*consrat^(alpha-1) - 1
PARAMETER
ESTIMATE
STDERROR
T STAT
P-VALUE
alpha
-0.344325
2.21458
-0.155
0.87644
d
0.991566
0.00423620
234.070
<0.00001 ***
GMM criterion = 5491.78
J test: Chi-square(3) = 11.8103 (p-value 0.0081)
Model 4: Iterated GMM estimates using the 465 observations 1959:04-1997:12
e = d*ewr*consrat^(alpha-1) - 1
PARAMETER
ESTIMATE
STDERROR
T STAT
P-VALUE
alpha
-0.344315
2.21359
-0.156
0.87639
d
0.991566
0.00423469
234.153
<0.00001 ***
GMM criterion = 5491.78
J test: Chi-square(3) = 11.8103 (p-value 0.0081)
Chapter 22. GMM estimation
209
(Models 1 and 2). On the other hand, iteration reduces these differences almost to the vanishing
point (Models 3 and 4).
Part of the output is given in22.5. It should be noted that the J test leads to a rejection of the
hypothesis of correct specification. This is perhaps not surprising given the heroic assumptions
required to move from the microeconomic principle in equation (22.13) to the aggregate system
that is actually estimated.
22.7 Caveats
Afew words of warning are in order: despite its ingenuity, GMM is possibly the most fragile esti-
mation method in econometrics. The number of non-obvious choices one has to make when using
GMM is high, and in finite samples each of these can have dramatic consequences on the eventual
output. Some of the factors that may affect the results are:
1. Orthogonality conditions can be written in more than one way: for example, if Ex
t
 0,
then Ex
t
=  1  0 holds too. It is possible that a different specification of the moment
conditions leads to different results.
2. As with all other numerical optimization algorithms, weird things may happen when the ob-
jective function is nearly flat in some directions or has multiple minima. BFGS is usually quite
good, but there is no guarantee that it always delivers a sensible solution, if one at all.
3. The 1-step and, to a lesser extent, the 2-step estimators may be sensitive to apparently trivial
details, like the re-scaling of the instruments. Different choices for the initial weights matrix
can also have noticeable consequences.
4. With time-series data, there is no hard rule on the appropriate number of lags to use when
computing the long-run covariance matrix (see section22.5). Our advice is to go by trial and
error, since results may be greatly influenced by a poor choice. Future versions of gretl will
include more options on covariance matrix estimation.
One of the consequences of this state of things is that replicating various well-known published
studiesmay be extremely difficult. Any non-trivial result is virtually impossible to reproduce unless
all details of the estimation procedure are carefully recorded.
Documents you may be interested
Documents you may be interested