ASSESSED WORK FINANCIAL ECONOMETRICS

The references are to Greene, Econometric Analysis, Fifth Edition.

1.  The following is a panel of data investment (y) and profit (x) for n=3 firms over t=10 periods.

i=1 i=2 i=3

y x y x y x

t

1 13.32 12.85 20.30 22.93 8.85 8.65

2 26.30 25.69 17.47 17.96 19.60 16.55

3 2.62 5.48 9.31 9.16 3.87 1.47

4 14.94 13.79 18.01 18.73 24.19 24.91

5 15.80 15.41 7.63 11.31 3.99 5.01

6 12.20 12.59 19.84 21.15 5.73 8.34

7 14.93 16.64 13.76 16.13 26.68 22.70

8 29.82 26.45 10.00 11.61 11.49 8.36

9 20.32 19.64 19.51 19.55 18.49 15.44

10 4.77 5.43 18.32 17.06 20.84 17.87

ADD OBSERVATIONS [FOR ONE MORE FIRM] OF YOUR OWN TO THIS DATA SET. Note the chances of you adding the same pattern of observations as someone else is limited. With this new enlarged data set you should then:

a.  Pool the data and compute the least squares regression coefficients of the model y=a+βxit + εit

b.  Estimate the fixed effects model of (13.2, Greene)

c.  Estimate the random effects model

d.  Carry out Hauseman’s spectification test for random versus fixed effects.

2.  EITHER: (i) Do the analysis as indicated below reading in the data from ..\data\grunfeld or (ii) Type out the following code and insert into EVIEWS and run the program. It does random and fixed effects information for the Grunfeld investment data. (see Greene pages 329 & 950). You should interpret the program. Add to the program so that the results for random and fixed effects are printed out and interpret the results. In either case you may add any additional features you wish to the model/analysis, i.e. print out graphs etc. The results from running the program as it stands should look like:

Hausman test for fixed versus random effects
chi-sqr(2) = / 0.115567
p-value = / 0.943854

' revised for version 5.0 (5/25/2004)

'change path to program path

%path = @runpath

cd %path

' load workfile

load ..\data\grunfeld

' set sample

smpl @first 1947

' estimate fixed effects and store results

pool1.ls(cx=f) log(inv?) log(val?) log(cap?)

vector beta = pool1.@coefs

matrix covar = pool1.@cov

' keep only slope coefficients

vector b_fixed = @subextract(beta,1,1,2,1)

matrix cov_fixed = @subextract(covar,1,1,2,2)

' estimate random effects and store results

pool1.ls(cx=r) log(inv?) log(val?) log(cap?)

beta = pool1.@coefs

covar = pool1.@cov

' keep only slope coefficients

vector b_gls = @subextract(beta,2,1,3,1)

matrix cov_gls = @subextract(covar,2,2,3,3)

' compute Hausman test stat

matrix b_diff = b_fixed - b_gls

matrix var_diff = cov_fixed - cov_gls

matrix qform = @transpose(b_diff)*@inverse(var_diff)*b_diff

if qform(1,1)>=0 then

' set table to store results

table(4,2) result

setcolwidth(result,1,20)

setcell(result,1,1,"Hausman test for fixed versus random effects")

setline(result,2)

!df = @rows(b_diff)

setcell(result,3,1,"chi-sqr(" + @str(!df) + ") = ")

setcell(result,3,2,qform(1,1))

setcell(result,4,1,"p-value = ")

setcell(result,4,2,1-@cchisq(qform(1,1),!df))

setline(result,5)

show result

else

statusline "Quadratic form is negative"

endif

3.  The following hypothetical data give the participation rates in a particular type of recycling program and the number of trucks purchased for collection by 10 towns in a small EU country.

Town 1 2 3 4 5 6 7 8 9 10

Trucks 160 250 170 365 210 206 203 305 270 340

Particip- 11 74 8 87 62 83 48 84 71 79

ation %

ADD FOUR OBSERVATIONS OF YOUR OWN TO THIS DATA SET. Note the chances of you adding the same pattern of observations as someone else is limited.

a.  How many trucks would the town expect to have to purchase in order to achieve their goal? (HINT see Section 21.4.6, Greene). Note that you will have to use ni=1

b.  If trucks cost $20,000 each, then is a goal of 90% reachable within a budget of $6.5 million? That is should they expect to reach their goal?

c.  According to your model what is the marginal value of the 301st truck in terms of the increase of the percentage participation?

The following program is designed to answer these questions. You should interpret the program, then run the program and use it to answer the above questions. You should run the program with both the original ten observations, change the program to add the additional four observations and run it again.

' GPROBIT1.PRG (1.0 - 6/29/98)

' example program for EViews LogL object

' checked for version 5.0 (3/26/2004)

' grouped (proportions) data probit

'

' Problem 6, page 947 of Greene, William H. (1997) Econometric Analysis,

' 3rd edition, Prentice-Hall

' create workfile

wfcreate gprobit u 10

' fill data

series trucks

trucks.fill 160,250,170,365,210,206,203,305,270,340

series prate

prate.fill 11,74,8,87,62,83,48,84,71,79

prate = prate/100

' set up likelihood for probit

logl ll1

ll1.append @logl logl1

ll1.append xb = c(1)+c(2)*trucks

ll1.append logl1 = prate*log(@cnorm(xb)) + (1-prate)*log(1-@cnorm(xb))

' analytic derivatives

ll1.append @deriv c(1) grad1 c(2) grad2

ll1.append mills1 = @dnorm(xb)/@cnorm(xb)

ll1.append mills2 = -@dnorm(xb)/(1-@cnorm(xb))

ll1.append grad1 = prate*mills1+(1-prate)*mills2

ll1.append grad2 = prate*mills1*trucks+(1-prate)*mills2*trucks

' set OLS starting values

equation eq1.ls prate c trucks

' do MLE

ll1.ml(showopts, m=1000, c=1e-5)

show ll1.output

' create table for answer to problems

table(3,2) ans

setcolwidth(ans,1,30)

' problem 6(a)

setcell(ans,1,1, "answer to 6(a)","l")

scalar ans_a = ( @qnorm(.95)-ll1.c(1) )/ll1.c(2)

ans(1,2) = ans_a

' problem 6(b)

' ans_b is the expected participation rate if budget 6.5 million

setcell(ans,2,1,"expected participation rate","l")

scalar ans_b = @cnorm( ll1.c(1)+ll1.c(2)*650/2 )

ans(2,2) = ans_b

' problem 6(c)

setcell(ans,3,1,"marginal participation rate at 301","l")

scalar ans_c = ll1.c(2)*@dnorm( ll1.c(1)+ll1.c(2)*301 )

ans(3,2) = ans_c

show ans