118
Empirical Asset Pricing Seppo Pynn¨ onen Department of Mathematics and Statistics, University of Vaasa, Finland Texas A&M University, May – June, 2013 As of June 12, 2013 Seppo Pynn¨ onen Empirical Asset Pricing

Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Embed Size (px)

Citation preview

Page 1: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Empirical Asset Pricing

Seppo Pynnonen

Department of Mathematics and Statistics, University of Vaasa, Finland

Texas A&M University, May – June, 2013

As of June 12, 2013Seppo Pynnonen Empirical Asset Pricing

Page 2: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Part V

Testing Asset Pricing Models

Seppo Pynnonen Empirical Asset Pricing

Page 3: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 4: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Introduction1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 5: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Introduction

Time series (day-to-day) variation in asset returns?Due to information arrival.

Average return (cross-sectional) variation?Asset pricing theories and models needed for understanding.CAPM-APT paradigms have set forth the basesFor the moment more than fifty variables identified in theliterature that are used to predict cross-section stock returns(e.g. Subrahmanyam 2010).

Informal wisdom (e.g. size, value, tax effect, momentum, etc.)motivated factorsTheoretically motivated variables based on risk-return modelvariants (beta decomposition ”bad-good beta”, state variablesin ICAPM, macro factors, consumption (CCAPPM), etc)Behavioral motivated variables (overreaction/underreaction)Friction (illiquidity, arbitrage constraints, ownershipconcentration, etc.) motivated variables

As a consequence research seems to be segmentedAcceptable theory yet to be discovered

For discussion, see Nagel (2012), Subrahmanyam (2010).

Seppo Pynnonen Empirical Asset Pricing

Page 6: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Testing Methodology1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 7: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Testing Methodology

Testing Methodology

Seppo Pynnonen Empirical Asset Pricing

Page 8: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Testing Methodology

Main approaches for testing asset pricing models are:

Time-series regressions (TSR), CLM (1997, Ch 5& 6), Goyal(2012)Cross-sectional regressions (CSR), Cochrane (2005, Part II),Goyal (2012), Shanken and Zhou (2007).Combination of TSR and CSR, utilizing generalized method ofmoments (GMM), Cochrane (2005, Part II), Goyal (2012),Shanken and Zhou (2007).

TSR relies typically on multivariate regression with (Gibbons,Ross, Shanken 1989) GRS-test of joint pricing errors.

Cross-sectional regressions

Two-pass regression.Fama-Macbeth rolling estimation procedure.

GMM, essentially a two-pass regression, better robustness,however.

Seppo Pynnonen Empirical Asset Pricing

Page 9: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 10: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Time Series Regression testing

Seppo Pynnonen Empirical Asset Pricing

Page 11: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Standard TSR testing setup:

rt = (r e1t , . . . , rNt)′: N × 1 vector of asset returns,

ft = (f1t , . . . , fKt)′: K × 1 vector of common factor returns,

t = 1, . . . ,T .

Unconstrained times series regression

rt = α + Bft + ut , (24)

ut = (u1t , . . . , uNt)′ ∼ i.i.d(0,Σu) zero-mean noise vector with

Σu: N × N positive definite (p.d.) error covariance matrix.Furthermore,Σf : K × K denote the factor covariance matrix (p.d.)

OLS estimators; α, B, Σu, Σf .

Seppo Pynnonen Empirical Asset Pricing

Page 12: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

(a) Factors are portfolios of traded assets

a.1) Riskfree asset exists

Asset returns and factor returns are excess returnsNull hypothesis:

H0 : α = 0 (25)

Test statistic:

F =T − N − K

N

[1 + µf Σ

−1

f µf

]−1

α′Σ−1

u α, (26)

where µf the K -vector of sample means of the factors.Null distribution: F ∼ F (N,T − N − K ) (normalityassumption)GRS (1979): α′Σuα = sr2

q − sr2f , where srq is the Sharpe

ratio of the (ex post) tangency portfolio spanned by the Nassets and the K factors and srf is the Sharpe ratio of the (expost) tangency portfolio spanned by the K factors.

Seppo Pynnonen Empirical Asset Pricing

Page 13: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

a.2) No riskfree asset

γ0: zero-beta portfolio returnNull hypothesis

H0 : α = (ι− Bι)γ0 (27)

ι represents a conforming vector of ones (N in the first and Kin the second).Test statistics (likelihood ratio):

χ2 = (T − 1

2N − K − 1)

(log∣∣∣Σ∗u∣∣∣− log

∣∣∣Σu

∣∣∣) , (28)

where Σ∗u is the ML estimator of the Σu under the restriction

of H0 (more details: CLM, Sec. 6.2.2).Null distribution of χ2 ∼ χ2

N−1 (asymptotically).

Seppo Pynnonen Empirical Asset Pricing

Page 14: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

(b) Factors are macroeconomic variables

γ0 zero-beta return, γ1 a vector related to factor risk premia

Null hypothesisH0 : α = γ0ι + Bγ1 (29)

Test statistics is again of the form (28) with degrees offreedom N − K − 1 (more details: CLM Sec 6.2.3).

Seppo Pynnonen Empirical Asset Pricing

Page 15: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 16: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Fama-French market equity decile portfolios

ME decile portfolios from Kenneth French’s data library

http://mba.tuck.dartmouth.edu/pages/faculty/ken.french/ftp/Portfolios Formed on ME.zip

File: Portfolios_Formed_on_ME.txt

This file was created by CMPT_ME_RETS using the 201212 CRSP database. It contains

value- and equal-weighted returns for size portfolios. Each record contains returns for:

Negative (not used) 30% 40% 30% 5 Quintiles 10 Deciles

The portfolios are constructed at the end of Jun. The annual returns are from January

to December.

Missing data are indicated by -99.99 or -999.

Value Weighted Returns -- Monthly

<= 0 Lo 30 Med 40 Hi 30 Lo 20 Qnt 2 Qnt 3 Qnt 4 Hi 20 Lo 10 Dec 2 ..

192607 -99.99 0.19 1.42 3.07 -0.75 1.87 1.29 1.79 3.19 0.15 -1.04 ..

192608 -99.99 3.07 2.82 2.81 2.00 3.75 3.71 1.32 3.01 1.98 2.01 ..

192609 -99.99 -1.66 -0.81 0.80 -0.53 -1.67 0.26 0.14 0.75 0.08 -0.74 ..

.

.

Seppo Pynnonen Empirical Asset Pricing

Page 17: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Fama-French 3-factor model with riskfree assets.

Test assets: ME decile portfolios from Kenneth French’s data library.

(ff_size.do)

// Get first Fama-French factors from Kenneth French’s data library

// File: unzipped from

// http://mba.tuck.dartmouth.edu/pages/faculty/ken.french/ftp/F-F_Research_Data_Factors.zip

local first = 5 // indicates the first data line to be read

local last = 1044 - ‘first’ + 1 // number of observations to be read from the text file

infix ‘first’ firstline yrm 1-6 mmrf 7-14 smb 15-22 hml 23-30 rf 31-38 in 1 / ‘last’ ///

using "../data/ffdata/F-F_Research_Data_Factors.txt", clear

save _junk // save FF-factors to a temporary Stata file

// Get size porfolios from Keneeth French’s data library

// http://mba.tuck.dartmouth.edu/pages/faculty/ken.french/ftp/Portfolios_Formed_on_ME.zip

// Value weighted portfolios

local first = 14 // first data line

local last = 1051 - ‘first’ + 1 // number of data lines

infix ‘first’ firstline yrm 1-6 negbe 7-14 mel30 15-22 mem40 23-30 meh30 31-38 ///

qntl1 39-46 qntl2 47-54 qntl3 55-62 qntl4 63-70 qntl5 71-78 ///

dcl1 79-86 dcl2 87-94 dcl3 95-102 dcl4 103-110 dcl5 111-118 ///

dcl6 119-126 dcl7 127-134 dcl8 135-142 dcl9 143-150 dcl10 151-158 ///

in 1 / ‘last’ ///

using "../data/ffdata/Portfolios_Formed_on_ME.txt", clear

merge 1:1 yrm using _junk // merge FF-factors from the temporary file

rm _junk.dta // clean up

mvdecode _all, mv(-99.99 -999) // decode -99.99 and -999 as missing

keep if _merge == 3

drop _merge

replace yrm = ym(trunc(.01*yrm), yrm - 100*trunc(.01*yrm)) // month to year month format

format %tm yrm

Seppo Pynnonen Empirical Asset Pricing

Page 18: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Use data starting from January 1950.

Generate first a table of portfolio means standard deviations and factor betas:

// Decile portfolio excess returns

forvalues i = 1(1)10 {

gen dcl‘i’e = dcl‘i’ - rf

}

// using sample period from Jan 1950 forwards generate some descriptive statistics

// by computing means standard deviatons and factor regression coefficients collected

// to a matrix (tbl)

matrix tbl = J(10, 6, 0) // collect results to a matrix

matrix colnames tbl = Mean Std Aplha Beta SMB HML // name the column of the matrix

matrix rownames tbl = "Small = 1" 2 3 4 5 6 7 8 9 "Big = 10" // name the rows

forvalues i = 1(1)10 { // compute summary statistic for the decile portfolios

quietly summ dcl‘i’e if yrm >= ym(1950, 1)

matrix tbl[‘i’, 1] = round(r(mean), .001) // an excellent summarizing web-page

// for how to access these kinds of information is

// http://www.ats.ucla.edu/stat/stata/faq/returned_results.htm

// we round th enumbers to three decimal places, which is

// not necessary if you collect results to a spreadsheet.

matrix tbl[‘i’, 2] = round(r(sd), .01)

quietly reg dcl‘i’e mmrf smb hml if yrm > ym(1949, 12)

matrix tbl[‘i’, 3] = round(_b[_cons], .001)

matrix tbl[‘i’, 4] = round(_b[mmrf], .01)

matrix tbl[‘i’, 5] = round(_b[smb], .001)

matrix tbl[‘i’, 6] = round(_b[hml], .001)

}

matrix list tbl // print the results

Seppo Pynnonen Empirical Asset Pricing

Page 19: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

We get

. matrix list tbl // prin out the results

tbl[10,6]

Mean Std Aplha Beta SMB HML

Small = 1 .813 6.09 -.071 .92 1.232 .32

2 .79 6.02 -.09 1.01 1.1 .225

3 .84 5.75 -.024 1.04 .93 .221

4 .787 5.53 -.035 1.02 .835 .182

5 .807 5.36 .009 1.03 .702 .164

6 .755 5.05 -.001 1.03 .512 .155

7 .753 4.95 .025 1.04 .391 .114

8 .714 4.84 .001 1.05 .279 .12

9 .663 4.46 .018 1 .089 .094

Big = 10 .541 4.15 .032 .98 -.28 -.058

i.e.,

Seppo Pynnonen Empirical Asset Pricing

Page 20: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

The FF three factor model for monthly data from Jan 1950through December 2012 (N = 756 months).Size sorted portfolio excess return means, standard deviations, andfactor coefficient for the size portfolios are summarized in thebelow table (ff size bm.do).

Portfolio Mean Std Aplha Beta SMB HML

Small = 1 0.813 6.09 -0.071 0.92 1.232 0.3202 0.790 6.02 -0.090 1.01 1.100 0.2253 0.840 5.75 -0.024 1.04 0.930 0.2214 0.787 5.53 -0.035 1.02 0.835 0.1825 0.807 5.36 0.009 1.03 0.702 0.1646 0.755 5.05 -0.001 1.03 0.512 0.1557 0.753 4.95 0.025 1.04 0.391 0.1148 0.714 4.84 0.001 1.05 0.279 0.1209 0.663 4.46 0.018 1.00 0.089 0.094

Big = 10 0.541 4.15 0.032 0.98 -0.280 -0.058

Seppo Pynnonen Empirical Asset Pricing

Page 21: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

We have the case a.1) in which the question is whether theestimated alphas are jointly statistically zero:

sureg (dcl1e - dcl10e = mmrf smb hml)

Estimates the regressions and postestimation command test givesthe test result

test _cons

( 1) [dcl1e]_cons = 0

.

.

(10) [dcl10e]_cons = 0

chi2( 10) = 20.94

Prob > chi2 = 0.0215

The null hypothesis H0 : α = 0 is rejected at the 5% level.

Seppo Pynnonen Empirical Asset Pricing

Page 22: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Otherwise, the results show also that there is not much relationbetween cross-sectional returns and betas.

I.e., beta is quite flat across different values of mean excess returns.

// To plot mean returns and beta convert tbl to Stata data

clear

svmat tbl, names(col) // use col names as variable names

scatter Mean Beta, ytitle(Mean return) xtitle(Beta) xscale(range(0.8 1.2)) xlabel(0.8(0.1)1.2)

Seppo Pynnonen Empirical Asset Pricing

Page 23: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 24: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Example: Zero-Beta

The zero-beta implies the non-linear hypothesis in (27). Maximumlikelihood (ML) estimation procedure based on normal distribution isdiscussed e.g. in CLM Sec 6.2.2.

The zero-beta null hypothesis in (27) implies that in each regressionequation

rit = αi + β′i ft + uit (30)

in (24) the intercept isαi = (1− β′iι)γ0, (31)

where β′i is the ith row of B, i = 1, . . .N. Thus, the restricted regressioncan be written as

rit = γ0 + βi (ft − γ0ι) + uit (32)

= γ0 + β1,i (f1,t − γ0) + · · ·+ βK ,i (fK ,t − γ0) + uit (33)

Seppo Pynnonen Empirical Asset Pricing

Page 25: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Stata has non-linear SUR command nlsur to estimate non-linearsystem of equations (see help nlsur).

To compute the chi-square statistic in (28) we first estimate bysureg the unrestricted model and use scalar definition tocompute |Σ|. Next we do the same for the restricted model usingnlsur.

sureg (dcl1 - dcl10 = rm smb hml) if yrm >= ym(1950, 1) // unrestricted SUR

(output omitted)

ereturn list // see the ereturns e() produced by sureg

(much of output omitted)

matrices:

e(b) : 1 x 40

e(V) : 40 x 40

e(Sigma) : 10 x 10

scalar detU = det(e(Sigma)) // determinant of the unrestricted model

scalar list detU

detU = .01653918

Seppo Pynnonen Empirical Asset Pricing

Page 26: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

Restricted model: Note that the estimated parameters are in curlybrackets ({ }) and that we need to spell out every equation.

nlsur (dcl1 = {gamma0} + {b1}*(rm - {gamma0}) + {s1}*(smb - {gamma0}) + {h1}*(hml - {gamma0})) ///

(dcl2 = {gamma0} + {b2}*(rm - {gamma0}) + {s2}*(smb - {gamma0}) + {h2}*(hml - {gamma0})) ///

(dcl3 = {gamma0} + {b3}*(rm - {gamma0}) + {s3}*(smb - {gamma0}) + {h3}*(hml - {gamma0})) ///

(dcl4 = {gamma0} + {b4}*(rm - {gamma0}) + {s4}*(smb - {gamma0}) + {h4}*(hml - {gamma0})) ///

(dcl5 = {gamma0} + {b5}*(rm - {gamma0}) + {s5}*(smb - {gamma0}) + {h5}*(hml - {gamma0})) ///

(dcl6 = {gamma0} + {b6}*(rm - {gamma0}) + {s6}*(smb - {gamma0}) + {h6}*(hml - {gamma0})) ///

(dcl7 = {gamma0} + {b7}*(rm - {gamma0}) + {s7}*(smb - {gamma0}) + {h7}*(hml - {gamma0})) ///

(dcl8 = {gamma0} + {b8}*(rm - {gamma0}) + {s8}*(smb - {gamma0}) + {h8}*(hml - {gamma0})) ///

(dcl9 = {gamma0} + {b9}*(rm - {gamma0}) + {s9}*(smb - {gamma0}) + {h9}*(hml - {gamma0})) ///

(dcl10 = {gamma0} + {b10}*(rm - {gamma0}) + {s10}*(smb - {gamma0}) + {h10}*(hml - {gamma0})) ///

if yrm >= ym(1950,1) // non-liner sur estimation

------------------------------------------------------------------------------

| Coef. Std. Err. z P>|z| [95% Conf. Interval]

-------------+----------------------------------------------------------------

/gamma0 | .0492573 .0160963 3.06 0.002 .0177091 .0808055

(rest of the output omitted)

scalar detR = det(e(Sigma)) // determinant of the resticted model Sigma

scalar list detR // show the value

detR = .01688797

scalar chi2 = (e(N) - 0.5*e(k_eq) - 3 - 1)*(log(detR) - log(detU)) // chi-square statistic

scalar list chi2

chi2 = 15.589184

displ 1 - chi2(9, chi2) // p-value (see help chi2)

.07597212

Seppo Pynnonen Empirical Asset Pricing

Page 27: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

The zero-beta return estimates to γ0 = 0.049% per monthcompared to the average risk-free rate of rf = 0.34% per month onthe sample period.

The likelihood ration test gives χ2 = 15.6 with 9 degrees offreedom yielding the p-value 0.076, which does not reject H0 atthe 5% level.

Seppo Pynnonen Empirical Asset Pricing

Page 28: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Time Series Regression testing

An alternative to test the zero-beta restrictions in (27) is to useGMM.

We’ll return to this later.

Seppo Pynnonen Empirical Asset Pricing

Page 29: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 30: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Cross-Sectional Regression

Seppo Pynnonen Empirical Asset Pricing

Page 31: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Factor model of excess returns Rit − Rf ,t

Reit = αi + β′i ft + uit (34)

E[Reit ] = λ′f βi + αi (35)

i = 1, . . . ,N, λf = E[ft ]: K -vector of expected factor risk premia(factors are assumed to be here portfolios traded assets).

E.g., CAPM: ft = Rmt − Rf ,t , αi = 0 and λ > 0

Seppo Pynnonen Empirical Asset Pricing

Page 32: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 33: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Cross-sectional regression testing:

Two-pass regression:

(1) Estimate βi from the market model (34)

(2) Estimate λf and λ0 from the (cross-section) regression

Rei = λ0 + λ′f βi + ai (36)

where

Rei =

1

T

T∑t=1

Reit

is the mean return of asset i over sample period andai = αi − λ0 is a zero mean error term.

Seppo Pynnonen Empirical Asset Pricing

Page 34: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Denote

λ =

(λ0

λf

)OLS:

λOLS = (X′X)−1X′Re (37)

where X = (ι, B) : N × (K + 1) matrix with β′i in the ith row of B

and Re = (Re1 , . . . , R

eN)′.

GLS:λGLS = (X′Σ−1

a X)−1X′Σ−1a Re (38)

where Σa = 1T Σu.

Seppo Pynnonen Empirical Asset Pricing

Page 35: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Because of the cross-sectional correlation of residuals:

var[λOLS

]= (X′X)−1X′ΣaX(X′X)−1 (39)

(instead of usual of zero error correlation: (X′X)−1σ2a with

σ2a = σ2

u/T )

var[λGLS

]=(X′Σ−1

a X)−1

(40)

In Σa = 1T Σu, Σu is estimated by the sample covariance matrix of

residuals ut = Ret − XλOLS, where Re

t = (Re1t , . . . ,R

eNt)′.

Remark: Because XλOLS is constant over time, the estimate Σu of Σu

becomes simply the sample covariance matrix S of the excess returns Ret ,

i.e., Σu = S = 1T−1

∑Tt=1(Re

t − Re)(Ret − Re)′, and hence Σa = 1

T S, no

matter how many factors there are in your model! This may feel a bit

counter intuitive.

Seppo Pynnonen Empirical Asset Pricing

Page 36: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Recall, the standard errors of the components of λOLS and λGLS arethe square roots of the main diagonal elements of the

variance(-covariance) matrices var[λOLS

]and var

[λGLS

],

respectively.

Seppo Pynnonen Empirical Asset Pricing

Page 37: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Remark: An alternative for the second pass is to run the cross-sectionregression (36) monthly, i.e.,

Reit = λ0,t + λ′f ,t βi + ait , t = 1, . . . ,T

to obtains monthly OLS estimates λ0,t and λf ,t , then because βi s are

not time varying, it turns out that in λOLS of formula (37), thecomponents λ0 and λf are equal to the sample averages of the monthlyOLS estimates λ0,t and λf ,t , i.e.,

λ0 =1

T

T∑t=1

λ0,t

and

λf =1

T

T∑t=1

λf ,t .

This is called in the literature the Fama-MacBeth (FM) approach (Fama

and MacBeth, 1973).

Seppo Pynnonen Empirical Asset Pricing

Page 38: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The advantage of this approach is that estimates for the standard errorsof OLS lambdas, i.e., the square roots of the respective diagonal

elements of var[λOLS

], are simply the square roots of the sample

variances of λ0,t and (components of) λf ,t (see Cochrane, 2005, Sec12.3 and the example below).

Thus, the FM-approach as such accounts for the cross-sectional

correlation adjustments in the standard errors, that need to be dealt with

explicitly in the second pass regression in equation (36) of the mean

excess return on betas.

Seppo Pynnonen Empirical Asset Pricing

Page 39: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Remark: It should be emphasized that the two OLS basedapproaches are identical only in the case when βi s from the firstpass regressions are time invariant, i.e., are not allowed to varyover time.

In the more general case where the first pass betas are allowed tobe time varying, these approaches lead to different results (seeCochrane, 2005, sec 12.3).

With time varying betas the FM-approach seems to be thestandard.

Seppo Pynnonen Empirical Asset Pricing

Page 40: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Errors in variables (EIV):

Explanatory variables βi have estimation error vi = βi − β suchthat βi = βi + vi .

This introduces additional noise to λ-estimates, which is notaccounted in OLS standard errors.

Seppo Pynnonen Empirical Asset Pricing

Page 41: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Shanken (1992, RFS) derives correction terms such that the OLS(or GLS) standard errors should be the square roots of the relevantdiagonal elements of

var[λOLS

]= (X′X)−1X′ΣaX(X′X)−1(1 + c) + Σf /T (41)

for the OLS and

var[λGLS

]=(X′Σ−1

a X)−1

(1 + c) + Σf /T (42)

for the GLS, where c = λ′Σ−1f λ with Σf = cov[f] and Σf :

(K + 1)× (K + 1) matrix, augment from Σf with zeroes in thefirst row and the first column and Σf in the lower right block.(See also Cohcrane 2005, Sec 12.2)

Seppo Pynnonen Empirical Asset Pricing

Page 42: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

For example, in CAPM an estimator of the correction factor isc = (λ1/sm)2, where λ1 is the cross-section OLS estimator of therisk premium and Σf = s2

m = 1T−1

∑Tt=1(Re

m,t − Rem)2 is the

sample variance of the market excess returns over the sampleperiod. In particular, if CAPM holds, such that λ1 ≈ Re

m, c is thesquared Sharpe ratio.

Note that above corrections correspond the case k2 = 0 inShanken (1992, RFS), such that restriction (8) in his paper is notimposed here.

Seppo Pynnonen Empirical Asset Pricing

Page 43: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Example: Two-pass Regression Test on FF ME Decile Portfolios

Consider the earlier 10 FF size portfolios.

// ff_size_cross_section.do (as of July 27, 2017)

// Size porfolios are from Kenneth French’s data library

// File unzipped from:

// http://mba.tuck.dartmouth.edu/pages/faculty/ken.french/ftp/Portfolios_Formed_on_ME.zip

// Value weighted portfolios

// Sample period: Jan 1950 to Dec 2012

// you can download this .do file (at least for a while :)) from:

// http://lipas.uwasa.fi/~sjp/temp/eap/stata/ff_size_cross_section.do

// the do-file includes also Fama-French 3-factor results

//

matrix ffmat = J(10, 5, .) // matrix to

store mean portfolio excess returns, CAPM beta

// FF3 market beta, smb coef, and hml coef

matrix colnames ffmat = "rmrf" "beta" "ffbeta" "smb" "hml"

// rmrf = r - rf is portfolio’s excess retturn, beta is CAPM beta, and ffbeta is FF3 loading

// on the market factor, in the data set mmrf = Mkt-Rf, smb = SMB, and hml = HML

forvalues i = 1 / 10 { // generate betas and factor slope coefficients and store into ffmat

replace dcl‘i’ = dcl‘i’ - rf // transform returns to excess return

quietly summ dcl‘i’ // summary statistics

matrix ffmat[‘i’, 1] = r(mean) // mean cross-section excess return of

// portfolio i saved in the first column

quietly reg dcl‘i’ mmrf // portfolio CAPM beta (firs pass regresion)

matrix ffmat[‘i’, 2] = _b[mmrf] // save CAPM beta into the second column

quietly reg dcl‘i’ mmrf smb hml // FF3 coefficients

matrix ffmat[‘i’, 3] = _b[mmrf] // FF3 market factor beta

matrix ffmat[‘i’, 4] = _b[smb] // FF3 smb coeff

matrix ffmat[‘i’, 5] = _b[hml] // FF3 hml coeff

} // forvalues i

Seppo Pynnonen Empirical Asset Pricing

Page 44: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

matrix list ffmat // content of ffmat

ffmat[10,5]

rmrf beta ffbeta smb hml

r1 .81329366 1.0943983 .92365736 1.2324996 .31950147

r2 .79017195 1.1765461 1.0146186 1.1004915 .22513431

r3 .84039682 1.1745045 1.0425262 .92988174 .2209941

r4 .7873148 1.1450016 1.0238419 .83500845 .18164329

r5 .80695766 1.1350846 1.0349418 .70233115 .16398983

r6 .75478836 1.0925025 1.0250332 .5121679 .154878

r7 .75292328 1.0922082 1.0400764 .39051469 .1137214

r8 .7139947 1.0763998 1.0452311 .27910394 .11994263

r9 .66269841 1.0041549 1.0029915 .08917638 .09416092

r10 .5410582 .93866292 .97978884 -.28029296 -.05808212

save _tmp, replace // save current data into a temporary file

Seppo Pynnonen Empirical Asset Pricing

Page 45: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

clear // clear the existing data from memory and transform ffmat to Stata data

svmat ffmat, names(col) // make columns of ffmat Stata data file variables

drop ffbeta smb hml // we need only portfolio average excess returns (rmrf) and CAPM beta

reg rmrf beta // second pass CAPM cross-section regression (see e.g. Cochrane 2005, p 249)

Source | SS df MS Number of obs = 10

-------------+------------------------------ F( 1, 8) = 55.99

Model | .062037961 1 .062037961 Prob > F = 0.0001

Residual | .008863663 8 .001107958 R-squared = 0.8750

-------------+------------------------------ Adj R-squared = 0.8594

Total | .070901624 9 .007877958 Root MSE = .03329

------------------------------------------------------------------------------

rmrf | Coef. Std. Err. t P>|t| [95% Conf. Interval]

-------------+----------------------------------------------------------------

beta | 1.113 0.149 7.48 0.000 0.770 1.456

_cons | -0.470 0.163 -2.89 0.020 -0.846 -0.094

------------------------------------------------------------------------------

// thus estimated lambda = 1.113 and lambda0 = -0.470 (rounded to three decimal places).

// notice the high t-value, which however is badly inflated due to the under estimated

// standard error because of cross-sectional correlation of the returns.

// the following presents computations for cross-correlation corrected standard errors

// which are square roots of the main diagonal elements of

// var[lambda_OLS] = inv(X’X) X’ Sigma_a X inv(X’X), see eq (39)

// for the purpose save CAPM lambda0 and lambda estimates

scalar lambda0 = _b[_cons] // CAPM intercept (pricing error "alpha")

scalar lambda = _b[beta] // CAPM lambda (market price of risk)

scalar list lambda0 lambda // show the saved coefficients

lambda0 = -.46997263

lambda = 1.1128931

Seppo Pynnonen Empirical Asset Pricing

Page 46: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// compute next residuals for the Sigma_a matrix

use _tmp, clear // retain original data

rm _tmp.dta // clean up

quiet cor dcl1-dcl10, cov // residual covariances, which here is the

// same as the covariance matrix of the excess returns!

// See the remark below eq (40) above.

scalar nobs = _N // number of months

matrix Sigma_a = r(C) / nobs // Sigma_a estimate (10 x 10 matrix)

symmetric Sigma_a[10,10]

dcl1 dcl2 dcl3 dcl4 dcl5 dcl6 dcl7 dcl8 dcl9 dcl10

dcl1 0.049

dcl2 0.046 0.048

dcl3 0.043 0.045 0.044

dcl4 0.041 0.042 0.041 0.040

dcl5 0.038 0.041 0.040 0.038 0.038

dcl6 0.035 0.037 0.037 0.036 0.035 0.034

dcl7 0.034 0.036 0.036 0.035 0.034 0.032 0.032

dcl8 0.032 0.034 0.034 0.033 0.033 0.031 0.031 0.031

dcl9 0.028 0.030 0.030 0.029 0.029 0.028 0.028 0.028 0.026

dcl10 0.022 0.024 0.025 0.024 0.024 0.024 0.024 0.024 0.023 0.023

Seppo Pynnonen Empirical Asset Pricing

Page 47: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

matrix X = J(rowsof(ffmat), 1, 1), ffmat[1..., 2] // X-matrix to compute OLS std errors

matrix list X // show X (columns are constant for the intercept and beta)

X[10,2]

c1 beta

r1 1 1.0943983

r2 1 1.1765461

r3 1 1.1745045

r4 1 1.1450016

r5 1 1.1350846

r6 1 1.0925025

r7 1 1.0922082

r8 1 1.0763998

r9 1 1.0041549

r10 1 .93866292

matrix varb = invsym(X’*X)*X’*Sigma_a*X*invsym(X’*X) // variance covariance matrix (39) in the notes

matrix list varb // cov(hat lambda) accounting cross-correlation

c1 beta

c1 .30329502

beta -.30683427 .33533236

matrix list e(V) // cov(hat lambda) produced by reg,

//note the heavily underestimated varinaces on the main diagonal!

beta _cons

beta .02211936

_cons -.02417528 .02653307

Seppo Pynnonen Empirical Asset Pricing

Page 48: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

scalar t_lambda = lambda / sqrt(varb[2,2]) // cross-correlation corrected t-stat

scalar t_lambda0 = lambda0 / sqrt(varb[1, 1]) // cross-correlation lambda0 t-stat

scalar list lambda t_lambda lambda0 t_lambda0 // print lambda and its t-value

lambda = 1.1128931

t_lambda = 1.9218332

lambda0 = -.46997263

t_lambda0 = -.85337503

// p-value of lambda approximated by normal distribution

displ "lambda p-val: " 2 * (1 - normal(abs(t_lambda)))

lambda p-val: .05462674

// p-value of lambda0 approximated by normal distribution

displ "lambda0 p-val: " 2 * (1 - normal(abs(t_lambda0)))

lambda0 p-val: .39345136

Seppo Pynnonen Empirical Asset Pricing

Page 49: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// Next we will show that t_lambda (and t_lambda0) is exactly the same as that produced by

// FM-rolling method (discussed in more detail later) of estimating lambda when first

// pass betas are estimated from full sample time series, i.e., when betas do not change

// in the second pass cross-section regressions, see e.g. Cochrane (2005, Sec 12.3)

save _tmp, replace // save current data into a temporary file

forvalues i = 1/10 { // replace portfolio returns by corresponding excess returns

replace dcl‘i’ = dcl‘i’ - rf // excess returns

} // forvalues

keep dcl1-dcl10 // keep only portfolio excess returns

list in 1/5, clean // first few lines

dcl1 dcl2 dcl3 dcl4 dcl5 dcl6 dcl7 dcl8 dcl9 dcl10

1. 5.63 6.34 4.33 4.25 5.33 3.76 2.42 2.21 2.1 1

2. 2.29 2.53 2.49 1.66 -.01 1.24 1.53 1.47 1.96 1.25

3. -.59 .1 -1.32 .12 -1.18 .1 -.38 1.11 .22 1.77

4. 5.86 6.49 5.39 6.3 5.78 5.47 3.79 3.25 3.6 3.96

5. 3.79 1.55 2.1 3.49 2.37 2.11 4.23 3.03 3.98 4.79

list in -5/l, clean // last few lines

dcl1 dcl2 dcl3 dcl4 dcl5 dcl6 dcl7 dcl8 dcl9 dcl10

752. 2.53 2.98 3.35 2.13 5.02 3.56 4.27 3.58 2.94 2.11

753. 4.72 4.22 5.28 3.26 2.35 3.04 1.87 2.53 2.07 2.8

754. -3 -3.78 -2.64 -2.98 .33 -1.78 -.85 .04 -1.55 -1.97

755. -.82 1.48 .95 .19 1.49 2.88 2.3 1.45 1.24 .35

756. 1.88 4.94 3.82 3.35 3.1 2.87 1.75 2.89 2.04 .39

Seppo Pynnonen Empirical Asset Pricing

Page 50: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// in order to run cross-sectional regressions, i.e., row wise, we need to transpose

// the data set, which transforms rows to variablels and columns to observations.

// this means that we will have 756 variables, labeled as v1, v2, ..., v756.

// the number of observations will be 10, i.e., the number of portfolios

xpose, clear // transpose columns to rows for FM cross-sectional regressions

describe, short // factors (10) are now observations, months (756) are now variables

Contains data

obs: 10

vars: 756

size: 30,240

list v1-v5, clean // 5 first months (columns) of the 10 in portfolios (rows)

v1 v2 v3 v4 v5

1. 5.63 2.29 -.59 5.86 3.79

2. 6.34 2.53 .1 6.49 1.55

3. 4.33 2.49 -1.32 5.39 2.1

4. 4.25 1.66 .12 6.3 3.49

5. 5.33 -.01 -1.18 5.78 2.37

6. 3.76 1.24 .1 5.47 2.11

7. 2.42 1.53 -.38 3.79 4.23

8. 2.21 1.47 1.11 3.25 3.03

9. 2.1 1.96 .22 3.6 3.98

10. 1 1.25 1.77 3.96 4.79

Seppo Pynnonen Empirical Asset Pricing

Page 51: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// for the second pass regressions we need to append also CAPM betas of the

// portfolios into the data set. the betas are in the second column of

// matrix ffmat created above.

matrix list ffmat // factor loadings computed above

svmat ffmat, names(col) // append factor betas into the current Stata data

drop rmrf ffbeta smb hml // mean portfolio excess returns and FF3 loadings are not needed

// monthly cross-sectinal regressions

// now we are ready to start computing the monthly cross-section regressions

// R_t^e = lambda0_t + lambda_t beta

// collect lambda0_t and lambda_t into vectors

// for the purpose we need to expand the default matsize (default is typically 400)

set matsize 800 // need to expand maximum matrix size to hold 756 monthly lambdas

matrix lambda_vec = J(nobs, 1, .) // monthly lambdas (CAPM market prices of risk estimates)

matrix lambda0_vec = J(nobs, 1, .) // monthly intercepts (pricing errors)

displ nobs // 756 months

forvalues i = 1 / 756 { // cross-section regressrions

quiet reg v‘i’ beta

matrix lambda_vec[‘i’, 1] = _b[beta]

matrix lambda0_vec[‘i’, 1] = _b[_cons]

}

// to compute t-values (using Stata ttest) we need to turn

// lambda_vec and lambda0_vec into Stata data

clear // remove existing data

svmat lambda_vec // turn (load) lambda vector to Stata data

svmat lambda0_vec // add lambda0

scalar list lambda t_lambda lambda0 t_lambda0 // recall values from the mean regression

lambda = 1.1128931, t_lambda = 1.9218332

lambda0 = -.46997263, t_lambda0 = -.85337503

Seppo Pynnonen Empirical Asset Pricing

Page 52: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// FM cross-section t-tests

//

ttest lambda_vec == 0 // FM t-test for lambda (mean indicates the lambda estimate)

One-sample t test

------------------------------------------------------------------------------

Variable | Obs Mean Std. Err. Std. Dev. [95% Conf. Interval]

---------+--------------------------------------------------------------------

l~a_vec1 | 756 1.112893 .5790791 15.92204 -.0239036 2.249689

------------------------------------------------------------------------------

mean = mean(lambda_vec1) t = 1.9218

Ho: mean = 0 degrees of freedom = 755

Ha: mean < 0 Ha: mean != 0 Ha: mean > 0

Pr(T < t) = 0.9725 Pr(|T| > |t|) = 0.0550 Pr(T > t) = 0.0275

ttest lambda0_vec == 0 // FM t-test for lambda0

One-sample t test

------------------------------------------------------------------------------

Variable | Obs Mean Std. Err. Std. Dev. [95% Conf. Interval]

---------+--------------------------------------------------------------------

l~0_vec1 | 756 -.4699725 .5507225 15.14236 -1.551102 .6111568

------------------------------------------------------------------------------

mean = mean(lambda0_vec1) t = -0.8534

Ho: mean = 0 degrees of freedom = 755

Ha: mean < 0 Ha: mean != 0 Ha: mean > 0

Pr(T < t) = 0.1969 Pr(|T| > |t|) = 0.3937 Pr(T > t) = 0.8031

Seppo Pynnonen Empirical Asset Pricing

Page 53: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Thus, the mean cross-section regression lambda andFama-MacBeth (FM) average lambda results from the monthlyregressions are here exactly identical as discussed in Cochrane(2005, Sec 12.3).

The advantage of the FM monthly cross-sectional procedure isthat it automatically adjusts the standard errors of lambdaestimates for the cross-sectional correlation.

Next we impose Shanken correction to adjust standard errors forthe errors-in-variables, i.e., the correction in eq. (41) in the notes.

Seppo Pynnonen Empirical Asset Pricing

Page 54: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// Proceed next to the Shanken correction for errors-in-variables, eq (41) in the notes

// (Shanken) correct t-staistic for lambdas

use _tmp, clear // load back the return data

rm _tmp.dta // clean up

// market return is the only factor in CAPM, the variance of which is needed

summ mmrf // use summarize to get standard deviation of the market factor

Variable | Obs Mean Std. Dev. Min Max

-------------+---------------------------------------------------------

mmrf | 756 .5919709 4.322473 -23.24 16.1

scalar sdmkt = r(sd) // save market excess return standard deviation into scalar sdmkt

displ sdmkt // show the saved value

4.3224732

scalar c = (lambda / sdmkt)^2 // correction factor for (1 + c)*var[hat lambda]

scalar list c // correction factor

c = .06628912

// Shanken corrections for t-lambda

scalar t_lambda_s = lambda / sqrt(varb[1,1] * (1 + c))

scalar t_lambda_s = lambda / (sqrt(varb[2,2]*(1+c) + sdmkt^2/nobs))

displ "t-lambda: " t_lambda ", Shanken corrected t-lambda: " t_lambda_s

t-lambda: 1.9218332, Shanken corrected t-lambda: 1.7999704

display "p(t-lambda): " 2*(1 - normal(abs(t_lambda))) /// line continuation

", p(t-lambda-shanken) " 2*(1 - normal(abs(t_lambda_s)))

p(t-lambda): .05462674, p(t-lambda-shanken) .07186532

// Shanken corrections for t-lambda0

scalar t_lambda0_s = lambda0 / sqrt(varb[1,1] * (1 + c))

displ "t-lambda0: " t_lambda0 ", Shanken corrected t-lambda0: " t_lambda0_s

t-lambda0: -.85337503, Shanken corrected t-lambda0: -.82642309

display "p(t-lambda0): " 2*(1 - normal(abs(t_lambda0))) ///

", p(t-lambda0-shanken) " 2*(1 - normal(abs(t_lambda0_s)))

p(t-lambda0): .39345136, p(t-lambda0-shanken) .40856413

Seppo Pynnonen Empirical Asset Pricing

Page 55: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The bottom line is that the cross-sectional correction is materialwhile the errors-in-variables correction (Shanken correction) isfairly mild (in particular for t-lambda0).

FF3 or other factor models can be tested analogously. Again usingFM procedure adjusts for the cross-correlation.

Also it seems that people often adjust for serial correlation usingNewey-West (Newey and West, 1987, Econometrica) correctionwhich is available in most statistical software packages.The correction is implemented in most (time series) econometricpackages and can be utilized by regressing the monthly lambdas onthe constant term (i.e., estimating regression yt = α + errort)and selecting Newey-West option.In Stata this can be accomplished using newey (time series)regression procedure.

Seppo Pynnonen Empirical Asset Pricing

Page 56: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// .... continues

// Newey-West (Newey and West (1987), Econometrica) heteroscedastic

// and autocorrelation corrected standard errors and t-values in FM-procedure

// this can be accomplished using Stata time regression ’newey’

// newey requires that data is time series

clear // remove existing data and turn again FM lambda_vec and lambda0_vec

// to Stata data

svmat lambda_vec // turn lambda vector to stata data

svmat lambda0_vec // add lambda0s

// generate time variable

gen time = _n // (dummy) time variable needed by tsset

tsset time // newey requires time series data

rename lambda_vec lambda_nw // rename for convenience

rename lambda0_vec lambda0_nw // rename for convenience

list in 1/5, clean

lambda_nw lambda0~w time

1. 19.09379 -17.13149 1

2. 2.216294 -.7812905 2

3. -9.071203 9.909338 3

4. 11.4307 -7.504146 4

5. -11.15408 15.33481 5

Seppo Pynnonen Empirical Asset Pricing

Page 57: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

// Newey-West for market price of risk (lambda)

newey lambda, lag(6) // 6 lags (typical in financial applications) for Newey-West adjustment

Regression with Newey-West standard errors Number of obs = 756

maximum lag: 6 F( 0, 755) = .

Prob > F = .

------------------------------------------------------------------------------

| Newey-West

lambda_nw | Coef. Std. Err. t P>|t| [95% Conf. Interval]

-------------+----------------------------------------------------------------

_cons | 1.112893 .6039609 1.84 0.066 -.0727494 2.298535

------------------------------------------------------------------------------

// the t-value of 1.84 is slightly smaller

// than that of FM t-value t_lambda = 1.92 (rounded from 1.9218332, see above)

// that is, autocorrelation is fairly marginal (as usual for stock returns)

//

// similar results are obtained for the pricing error (lambda0)

// Newey-West for CAPM pricing error (lambda0)

newey lambda0, lag(6)

Regression with Newey-West standard errors Number of obs = 756

maximum lag: 6 F( 0, 755) = .

Prob > F = .

------------------------------------------------------------------------------

| Newey-West

lambda0_nw | Coef. Std. Err. t P>|t| [95% Conf. Interval]

-------------+----------------------------------------------------------------

_cons | -.4699725 .5682066 -0.83 0.408 -1.585425 .6454802

------------------------------------------------------------------------------

// FM t_lambda0 = -0.85

Seppo Pynnonen Empirical Asset Pricing

Page 58: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

In all, it is crucial that the testing method accounts for thecross-sectional correlation. After that one can check whether theShanken correction and/or Newey-West heteroskedasticity andautocorrelation corrections are material.

Seppo Pynnonen Empirical Asset Pricing

Page 59: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 60: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Fama, E.F. and J.D. MacBeth (1973) Risk, return and equilibrium:Empirical tests, Journal of Political Economy 81(3), 607–636.

Recap of the approach:

Test for the CAPM implications of the generalized model inequation (7) in their paper, or

Rit = γ0t + γ1tβi + γ2tβ2i + γ3tsi + ηit (43)

where the tilde ( ) indicates that the variable is a random variable,si is some measure of risk not (deterministically) related to βi , ηitis the disturbance term with zero mean and not correlated with theregressors in (43).

Seppo Pynnonen Empirical Asset Pricing

Page 61: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

CAPM implies:

E[γ1t ] = E[Rit − Rft

]> 0

E[γ2t ] = E[γ3t ] = 0.

E[γ0] = Rft , or E[Rit − Rft

]= 0, where Rft is the risk-free

rate.

We demonstrate the F-M approach by using monthly CRSPreturns on NYSE (exchange code 1) common stocks (share codes10 and 11) in the period from Jan 1970 through Dec 1983. Therisk-free rate is obtained from Kenneth French’s data library(http://mba.tuck.dartmouth.edu/pages/faculty/ken.french/index.html)

Seppo Pynnonen Empirical Asset Pricing

Page 62: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The procedure:

20 portfolios are formed on the basis of ranked OLS estimatedindividual security betas (βi ) using 5 year estimation period ofmonthly data (1970–1974).

The following 5 years (1975–1979) are used to recompute βi sand these are averaged to obtain 20 initial portfolio betas βptfor the risk-return tests. The subscript t indicates the relevantmonth of the following four years (1980–1983). This approachaccounts for delistings in βpts.

Seppo Pynnonen Empirical Asset Pricing

Page 63: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

To be included to the portfolio, a security available in the firstmonth of the testing period must have data for all 5 years ofthe preceding estimation period and at least 4 years of theportfolio formation period.

Component βi are updated yearly, that is, they are recomputedform monthly returns for 1974 through 1980, 1981, or 1982.

OLS standard deviation si of the market model regressionRit = ai + βi Rmt + εit is used as the non-beta risk.

Seppo Pynnonen Empirical Asset Pricing

Page 64: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The resulting regression is

Rept = γ0t + γ1t βp,t−1 + γ2t β

2p,t−1 + γ3t sp,t−1 + ηpt , (44)

p = 1, . . . , 20, where Rept = Rpt − Rft is the excess return, βp,t−1 is

the average of βi for securities in portfolio p, β2p,t−1 is the average

of squared these βi , and sp,t−1 is average of si for securities inportfolio p, where si are computed for the same period as βi .

The month-by-month OLS estimates of γit , i = 0, 1, 2, 3 for the4-year period 1979–1982 are the inputs for testing the CAPMagainst the enhanced model in (43).

Seppo Pynnonen Empirical Asset Pricing

Page 65: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 66: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

CRSP NYSE data (Jan 1970 through Dec 1982) with risk-free ratefrom French’s data base.

. use ../data/nyse, clear

(NYSE (exchcd = 1) common stocks (shrcd == 10 or 11) monthly observations)

replace ret = 100*ret // percent returns

// NYSE Monthly rebalanced equally weighted index returns

sort yrm

by yrm : egen rm = mean(ret) // monthly rebalanced equally weighted index

sort permno yrm

. list yrm permno ret rm rf in 1/5 , clean

yrm permno ret rm rf

1. 1970m1 10006 -5.35714291 -5.632958 .6

2. 1970m2 10006 5.06738536 5.282691 .62

3. 1970m3 10006 2.33766232 -.9540051 .57

4. 1970m4 10006 -7.61421323 -13.07426 .5

5. 1970m5 10006 -14.0659347 -8.885833 .53

keep if yrm <= ym(1983, 12) // keep only data to the end of test period

gen re = ret - rf // excess returns

gen rme = rm - rf // equally weighted portfolio excess return

keep yrm permno ret re rm rme // keep only what is needed

order yrm permno ret rm re rme // order for convenience

save _nyse // temporary work file to be erased

Seppo Pynnonen Empirical Asset Pricing

Page 67: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Produce number of stocks statistics equivalent of Table 1 inFama-MacBeth

. use _nyse, clear

. sort permno yrm

. duplicates drop permno, force

Duplicates in terms of permno

(216182 observations deleted)

. displ "Number of securities available: " _N

Number of securities available: 1985

Seppo Pynnonen Empirical Asset Pricing

Page 68: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

. // compute number of observations fulfilling data requirement: a security

. // available in the first month of a testing period must have data for all

. // 5 years of the preceding estimation period and for at least

. // 4 years of the portfolio formation period, i.e. at least 9*12 + 1 = 109 months

. use _nyse, clear

(NYSE (exchcd = 1) common stocks (shrcd == 10 or 11) monthly observations)

. keep if yrm <= ym(1980, 12) // end of the first testing period year

(50611 observations deleted)

. drop if missing(re)

(677 observations deleted)

. save _tmp, replace

. keep if yrm >= ym(1975, 1) & yrm <= ym(1980, 1) // estimation period and first test period month

(96382 observations deleted)

. by permno : egen cnt = count(permno)

. drop if cnt < 61 // keep only series that have no missing observations in estimation period

(15907 observations deleted)

. gen testmok = 1

. keep permno testmok

. duplicates drop

Duplicates in terms of all variables

. keep if (_merge == 3) & (testmok == 1) // valid estimation period data

(35826 observations deleted)

. drop _merge

. order yrm // for convenience

. sort permno yrm

. // check data for porfolio formation period

. by permno : egen cnt = count(permno) if yrm < ym(1980, 1)

(13798 missing values generated)

. drop if cnt <= 9*12 // for portfolio formation there must be also available

(16861 observations deleted)

. // at least 4 years data for the portfolio formation period

. drop cnt

Seppo Pynnonen Empirical Asset Pricing

Page 69: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

. by permno : egen cnt = count(permno) // do the rest of dropping too short series

. drop if cnt <= 12

(2230 observations deleted)

. drop cnt

. save _tmp, replace // temporary work file

. duplicates drop permno, force

Duplicates in terms of permno

(127582 observations deleted)

. displ "Number of securities meeting data requirement: " _N

Number of securities meeting data requirement: 977

Seppo Pynnonen Empirical Asset Pricing

Page 70: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Table: Portfolio formation, estimation, and testing period

Period

Portfolio formation 1970–1974Initial estimation 1975–1979Testing period 1980–1983

No. of securities available 1985No. of securities meeting

data requirement 977

Seppo Pynnonen Empirical Asset Pricing

Page 71: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Estimate market model betas for the portfolio formation period.

Stata statsby is useful here (see help statsby).

Note: statsb replaces data in memory by the statistics. Thus,Stata requires that the current data is saved first.

// STEP1: estimate betas for the porfolio formation

// (1.a) generate beta coefficients from the portfolio formation period 1970--1973

. use _tmp, clear

(NYSE (exchcd = 1) common stocks (shrcd == 10 or 11) monthly observations)

. statsby _b , by(permno) : reg re rme if yrm <= ym(1974, 12)

. list in 1/5, clean

permno _b_rme _b_cons

1. 10006 .7603728 .4764629

2. 10057 .8903054 -.619877

3. 10137 .5925678 .1209494

4. 10145 .8275435 1.354215

5. 10153 .958145 -.8215175

Seppo Pynnonen Empirical Asset Pricing

Page 72: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

sort _b_rme

gen pf20 = int(20*(_n - 1) / _N) + 1 // indicators of beta size portfolios

keep permno pf20

save _sizepf70_74 // temporary file with permno and size indicators of the stock

list in 1/3, clean noobs

permno pf20

12319 1

25478 1

11690 1

list in -3/l, clean noobs

permno pf20

29663 20

45233 20

51086 20

Seppo Pynnonen Empirical Asset Pricing

Page 73: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Estimation period betas and residual standard deviations and theirannual updates.

// (1.b) estimate betas and residual standard errors for the estimation

// periods 1975--1979, 1975--1980, 1975--1981, 1975--1982

// Note: we estimate the statistics for all series whether or not they satisfy the data

// requirements. We later drop those out that do not.

forvalues y = 1979(1)1982 {

use _nyse, clear

statsby _b se = e(rmse), by(permno) : ///

reg re rme if yrm >= ym(1975, 1) & yrm <= ym(‘y’, 12)

rename (_b_rme _eq2_se) (bm‘y’ se‘y’)

drop _b_con*

if(‘y’ == 1979) {

save _betas, replace // temporary file to save betas

}

else {

merge 1:1 permno using _betas

drop _merge

save _betas, replace

}

}

list in 1/5, clean

list in -5/L, clean

Seppo Pynnonen Empirical Asset Pricing

Page 74: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Here are the generated betas and residual standard deviations

. list in 1/5, clean

permno bm1982 se1982 bm1981 se1981 bm1980 se1980 bm1979 se1979

1. 10006 .8795421 5.324085 .9019373 5.241346 .9237699 5.028825 .8614 4.524191

2. 10014 1.459297 13.04361 1.459297 13.04361 1.459297 13.04361 1.459297 13.04361

3. 10057 .9608358 8.011134 1.002822 8.050616 .9948581 8.347406 .9362952 7.564348

4. 10102 1.047189 7.346765 1.047189 7.346765 1.047189 7.346765 1.047189 7.346765

5. 10137 .5421037 5.403534 .5602105 5.468787 .584545 5.647153 .6474323 5.553326

. list in -5/L, clean

permno bm1982 se1982 bm1981 se1981 bm1980 se1980 bm1979 se1979

1801. 64573 . . . . . . . .

1802. 64581 . . . . . . . .

1803. 64610 . . . . . . . .

1804. 68195 1.4253 8.474117 1.408874 8.091972 1.497947 7.933659 1.58615 7.499249

1805. 68523 2.849449 16.47941 2.849449 16.47941 2.849449 16.47941 2.849449 16.47941

There are some missing data which will be handled later.

Seppo Pynnonen Empirical Asset Pricing

Page 75: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Attach the portfolio indicator to each stock and drop stocks thatdo not meet the data requirement, i.e., are not assigned to anyportfolio.

merge 1:1 permno using _sizepf70_74 // merge portfolio indicators into beta file

keep if _merge == 3 // keep only secutities meeting the initial data requirement

drop _merge

sort pf20

list in 1/5, clean

list in -5/L, clean

save _betas, replace

list in 1/5, clean

permno bm1982 se1982 bm1981 se1981 bm1980 se1980 bm1979 se1979 pf20

1. 21821 .6127205 5.90254 .6307797 5.64254 .6611778 5.602359 .6148231 5.142656 1

2. 27254 .6301314 6.845308 .5643887 6.997822 .5079333 6.812625 .4116281 5.813202 1

3. 34323 .3590286 4.419133 .3590286 4.419133 .3590286 4.419133 .3628268 4.041737 1

4. 11850 .4913562 4.50945 .4808856 4.573926 .4844347 4.407802 .4196905 3.802679 1

5. 22859 .4873369 5.020874 .5171595 4.929908 .5538918 4.895496 .6125267 4.852383 1

list in -5/L, clean

permno bm1982 se1982 bm1981 se1981 bm1980 se1980 bm1979 se1979 pf20

973. 44783 1.747275 9.331849 1.713582 9.304095 1.683159 9.375896 1.748576 9.580799 20

974. 27879 1.577752 12.75185 1.504913 13.0873 1.656519 12.32928 1.770306 13.06201 20

975. 10874 1.053696 9.706055 1.111093 7.830503 1.110862 7.502835 1.166138 7.211953 20

976. 41486 2.078249 11.52846 2.184388 11.80164 2.230703 12.30852 2.372094 12.81486 20

977. 41072 1.585226 10.16582 1.569643 10.70366 1.611185 11.35095 1.649102 11.65866 20

Seppo Pynnonen Empirical Asset Pricing

Page 76: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The next step is to merge the betas, residual standard deviations,and portfolio indicators to the return data.

// merge betas and residual standard deviations to the

// to the original stock return data in _nyse.dta that covers portffolio formation period,

// estimation period, and test period returns

merge 1:m permno using _nyse

keep if _merge == 3

drop _merge

order yrm permno pf20 re rme bm1979 bm1980 bm1981 bm1982 se1979 se1980 se1981 se1982

sort permno yrm pf20

save _nyseb, replace // save the file for convenience in a new temporary file

list yrm permno pf20 re rme bm1979 se1979 bm1980 se1980 in 1/5, clean

yrm permno pf20 re rme bm1979 se1979 bm1980 se1980

1. 1970m1 10006 7 -5.957143 -6.232958 .8614 4.524191 .9237699 5.028825

2. 1970m2 10006 7 4.447385 4.662691 .8614 4.524191 .9237699 5.028825

3. 1970m3 10006 7 1.767662 -1.524005 .8614 4.524191 .9237699 5.028825

4. 1970m4 10006 7 -8.114213 -13.57426 .8614 4.524191 .9237699 5.028825

5. 1970m5 10006 7 -14.59593 -9.415833 .8614 4.524191 .9237699 5.028825

Seppo Pynnonen Empirical Asset Pricing

Page 77: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Produce sample statistics equivalent to Table 2 in Fama MacBethfor the first estimation period.

(a) Portfolio-wise average betas, their standard deviations, andaverage market model residual standard deviations: βp,t−1,s(βp,t−1), and sp,t−1(εi ), p = 1, . . . , 20.

use _nyseb, clear

drop if yrm < ym(1974, 1) | yrm > ym(1979, 12) // keep only the initial estimation period data

sort pf20 yrm

by pf20 yrm : egen rpe = mean(re) // rebalanced equally weighted portfolio (excess)

// returns

keep permno yrm pf20 rpe rme bm1979 se1979 pf20 // keep only relevant data for the sample stats

save _tmp, replace // save to a temporary file

by pf20 : egen bm79 = mean(bm1979) // portfolio wise mean betas

by pf20 : egen sb79 = sd(bm1979) // standard deviations of portfolio betas

by pf20 : egen bar_se79 = mean(se1979)

keep pf20 bm79 sb79 bar_se79 // keep only the portfolio-wise sample staistics

duplicates drop

save _stat, replace // save results to temporary _stat file

list in 1/3, clean noobs

pf20 bm79 sb79 barse79

1 .538303 .1591162 5.156752

2 .5576272 .1618077 5.019789

3 .6401169 .1985746 5.687965

Seppo Pynnonen Empirical Asset Pricing

Page 78: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

(b) r(Rp,Rm)2 and residual standard errors, s(εp), of the marketmodels of the portfolio returns Rp = αp + βpRm + εp,p = 1, . . . , 20.

use _tmp, clear

drop bm1979 se1979 // not needed any more in sample stat computations

duplicates drop pf20 yrm, force

save _tmp, replace

statsby r2 = e(r2) sep = e(rmse) , by(pf20) : reg rpe rme

// squared corr(Rp,Rm) and residual standard

// error of regression Rp = a + b Rm + ep

merge 1:1 pf20 using _stat // merge to the stat file

drop _merge

save _stat, replace

list in 1/3, clean noobs

pf20 r2 sep bm79 sb79 barse79

1 .7379692 2.167871 .538303 .1591162 5.156752

2 .787424 1.980086 .5576272 .1618077 5.019789

3 .8571319 1.781868 .6401169 .1985746 5.687965

Seppo Pynnonen Empirical Asset Pricing

Page 79: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

(c) Standard deviations s(Rp) of the portfolio returns Rp,p = 1, . . . , 20.

use _tmp, clear

statsby sdrpe = r(sd) , by(pf20) clear : summ rpe

// generate next standard deviations of portfolio returns

merge 1:1 pf20 using _stat // merge to _stat

drop _merge

gen sep_per_barse79 = sep / barse79

order pf20 bm79 sb79 r2 sdrpe sep barse79 sep_per_barse79 // match the ordering of the table

save _stat, replace

list in 1/3, clean noobs

pf20 bm79 sb79 r2 sdrpe sep barse79 sep_p~79

1 .538303 .1591162 .7379692 4.205107 2.167871 5.156752 .4203947

2 .5576272 .1618077 .787424 4.264291 1.980086 5.019789 .3944561

3 .6401169 .1985746 .8571319 4.680882 1.781868 5.687965 .3132698

Seppo Pynnonen Empirical Asset Pricing

Page 80: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The table below summarizes the results from steps (a) to (c) of the Stata

results for the estimation period 1975–1979.

Portfolio sample statistics for the estimation period 1975–1979

PortfolioStat 1 2 3 4 5 6 7 8 9 10

βp,t−1 0.54 0.56 0.64 0.62 0.70 0.77 0.72 0.79 0.87 0.83

s(βp,t−1) 0.16 0.16 0.20 0.23 0.27 0.27 0.26 0.25 0.32 0.21

r(Rp , Rm)2 0.74 0.79 0.86 0.86 0.89 0.94 0.87 0.91 0.93 0.94s(Rp) 4.21 4.26 4.68 4.73 4.97 5.37 5.30 5.58 5.95 5.70s(εp) 2.17 1.98 1.78 1.81 1.66 1.37 1.91 1.72 1.58 1.39sp,t−1(εi ) 5.16 5.02 5.69 6.59 6.72 7.02 6.52 6.33 7.34 7.02s(εp)/sp,t−1(εi ) 0.42 0.39 0.31 0.28 0.25 0.19 0.29 0.27 0.21 0.20

PortfolioStat 11 12 13 14 15 16 17 18 19 20

βp,t−1 0.90 0.95 1.02 0.97 1.03 1.03 1.19 1.25 1.33 1.67

s(βp,t−1) 0.25 0.30 0.27 0.35 0.33 0.35 0.36 0.37 0.37 0.46

r(Rp , Rm)2 0.96 0.96 0.97 0.97 0.95 0.95 0.97 0.96 0.96 0.94s(Rp) 6.04 6.41 6.89 6.46 7.05 7.08 8.01 8.41 9.06 11.31s(εp) 1.26 1.36 1.24 1.09 1.57 1.62 1.30 1.70 1.79 2.89sp,t−1(εi ) 7.27 8.06 7.58 7.96 8.65 8.45 9.36 9.88 10.19 11.28s(εp)/sp,t−1(εi ) 0.17 0.17 0.16 0.14 0.18 0.19 0.14 0.17 0.18 0.26

Seppo Pynnonen Empirical Asset Pricing

Page 81: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

STEP 2: Fama-MacBeth cross-sectional regressions// STEP 2: Second stage regressions

use _nyseb, clear

drop if yrm < ym(1980, 1) | yrm > ym(1983, 12) // the four year test period

// drop smb hml mmrf // these are not needed any more

save _tmp, replace

// generate portfolios

sort pf20 yrm

by pf20 yrm : egen rpe = mean(re)

by pf20 yrm : egen retp = mean(ret)

by pf20 yrm : egen bm79 = mean(bm1979) // betas in the 1979 regressions

by pf20 yrm : egen bm80 = mean(bm1980) // updated betas in the 1980 regressions

by pf20 yrm : egen bm81 = mean(bm1981) // updated betas in the 1981 regressions

by pf20 yrm : egen bm82 = mean(bm1982) // updated betas in the 1982 regressions

by pf20 yrm : egen bm79sq = mean(bm1979^2) // average squared betas

by pf20 yrm : egen bm80sq = mean(bm1980^2)

by pf20 yrm : egen bm81sq = mean(bm1981^2)

by pf20 yrm : egen bm82sq = mean(bm1982^2)

by pf20 yrm : egen se79 = mean(se1979) // std(res) in the 1979 regressions

by pf20 yrm : egen se80 = mean(se1980)

by pf20 yrm : egen se81 = mean(se1981)

by pf20 yrm : egen se82 = mean(se1982)

Seppo Pynnonen Empirical Asset Pricing

Page 82: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

STEP 2: Fama-MacBeth cross-sectional regressions (continues)

// generate beta, beta squared, and se series to facilitate regressions

gen beta = (yrm <= ym(1980, 12))*bm79 + (yrm >= ym(1981, 1) & yrm <=ym(1981, 12))*bm80 ///

+ (yrm >= ym(1982, 1) & yrm <=ym(1982, 12))*bm81 ///

+ (yrm >= ym(1983, 1) & yrm <=ym(1983, 12))*bm82

gen beta2 = (yrm <= ym(1980, 12))*bm79sq + (yrm >= ym(1981, 1) & yrm <=ym(1981, 12))*bm80sq ///

+ (yrm >= ym(1982, 1) & yrm <=ym(1982, 12))*bm81sq ///

+ (yrm >= ym(1983, 1) & yrm <=ym(1983, 12))*bm82sq

gen se = (yrm <= ym(1980, 12))*se79 + (yrm >= ym(1981, 1) & yrm <=ym(1981, 12))*se80 ///

+ (yrm >= ym(1982, 1) & yrm <=ym(1982, 12))*se81 ///

+ (yrm >= ym(1983, 1) & yrm <=ym(1983, 12))*se82

keep yrm pf20 rpe retp beta* se

duplicates drop

sort yrm pf20

save _tmp , replace

Seppo Pynnonen Empirical Asset Pricing

Page 83: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

STEP 2: Fama-MacBeth cross-sectional regressions (continues)

// estimate monthly factor risk-premia

statsby _b _se s = e(rmse) r2 = e(r2), by(yrm) : reg retp beta beta2 se

format %tm yrm

sort yrm

// rename and label variables to improve readability of the reported results

rename _b_cons gamma0

rename _b_beta gamma1

rename _b_beta2 gamma2

rename _b_se gamma3

label var gamma0 "Intercept term"

label var gamma1 "Market beta"

label var gamma2 "Market beta squared"

label var gamma3 "Residual standard deviation"

label var yrm "Month"

rename _se_cons se_gamma0

rename _se_beta se_gamma1

rename _se_beta2 se_gamma2

rename _se_se se_gamma3

label var se_gamma0 "se(gamma0)"

label var se_gamma1 "se(gamma1)"

label var se_gamma2 "se(gamma2)"

label var se_gamma3 "se(gamma3)"

rename _eq2_s s_res

label var s_res "s(residual)"

rename _eq2_r2 rsq

label var rsq "R-square"

Seppo Pynnonen Empirical Asset Pricing

Page 84: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

STEP 2: Fama-MacBeth cross-sectional regressions (continues)

order yrm gamma0 gamma1 gamma2 gamma3 se_gamma0

sort yrm

label data "CAPM estimates Rp-Rf = gamma0 + gamma1 beta + gamma2 beta^2 + gamma3 std(uhat)"

save ../data/ffbetas1980excess, replace // save the results

// clean up

rm _betas.dta

rm _nyseb.dta

rm _nyse.dta

rm _sizepf70_74.dta

rm _stat.dta

rm _tmp.dta

// print results

tabstat gamma0 gamma1 gamma2 gamma3 rsq, statistics( mean sd semean min max ) format(%9.3f)

stats | gamma0 gamma1 gamma2 gamma3 rsq

---------+--------------------------------------------------

mean | 1.153 2.431 -0.537 -0.118 0.482

sd | 8.001 17.385 6.086 0.792 0.264

se(mean) | 1.155 2.509 0.878 0.114 0.038

min | -20.212 -35.863 -13.576 -1.949 0.041

max | 26.711 46.272 14.445 2.218 0.862

------------------------------------------------------------

There is a huge variation in γ1 with range (−35.9, 46.3)!

Seppo Pynnonen Empirical Asset Pricing

Page 85: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

Panel A summarizes the above results and Panel B summarizes rolling

estimation results for 1980–2009 (details discussed in class room).

Results for regression Rp − Rf = γ0t + γ1t βp + γ2t β2p + γ3t sp + ηpt

Stat γ0 γ1 γ2 γ3 R2

Panel A: Test 1980–1983 (48 mths). Estimation 1975–1979.

mean 1.153 2.431 -0.537 -0.118 0.482sd 8.001 17.385 6.086 0.792 0.264se(mean) 1.155 2.509 0.878 0.114 0.038t(mean) 0.998 0.969 -0.612 -1.035 . . .min -20.212 -35.863 -13.576 -1.949 0.041max 26.711 46.272 14.445 2.218 0.862

Panel B: Test 1980–2009 (360 mths). Rolling estimation per.

mean 0.310 0.882 -0.262 -0.016 0.470sd 8.989 15.505 7.344 0.961 0.224se(mean) 0.474 0.817 0.387 0.051 0.012t(mean) 0.654 1.080 -0.677 -0.314 . . .min -41.852 -66.663 -34.480 -3.739 0.002max 27.768 62.564 38.151 4.040 0.974

Seppo Pynnonen Empirical Asset Pricing

Page 86: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 87: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Cross-sectional regression

The rolling estimation period method methodology is:

Form 20 βit ranked portfolios using the first 60 months fromthe 120 months up to month t − 1

Obtain OLS βits using 60 months up to month t − 1 andcompute portfolio betas βpt

Run the regression (44)

Compute the sample means ¯γk , k = 0, 1, 2, 3 over the months.

For a Stata implementation, see fm rolling capm.do

Results are given in Panel B in

Seppo Pynnonen Empirical Asset Pricing

Page 88: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 89: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

GMM approach

Seppo Pynnonen Empirical Asset Pricing

Page 90: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Modern asset empirical asset pricing relies on generalized methodof moments (GMM).

The advantage of this approach over the FM-method andMaximum Likelihood (not dealt with here) is that GMM allows forconditional heteroscedasticity, serial correlation, and non-normaldistribution.

The general form of GMM is the following. Let ht(θ) be a (vectorvalued) function such that

E[ht(θ)] = 0 (45)

gives the moment conditions of the model we are interested in,where θ includes the parameters of the model.

In finance ht(θ) derives typically from an asset pricing model andcan often be interpreted as pricing errors.

Seppo Pynnonen Empirical Asset Pricing

Page 91: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

For example, the simple regression model yt = β0 + β1xt + ut ,t = 1, . . . ,T , involves in particular the conditions E[ut ] = 0 andcov[ut , xt ] = 0.

Thus setting θ = (β0, β1)′ and noting thatcov[ut , xt ] = E[(yt − β0 − β1xt)xt ], we can define

ht(θ) =

(yt − β0 − β1xt

(yt − β0 − β1xt)xt

)= ut(θ)zt (46)

where ut(θ) = yt − β0 − β1xt , zt = (1, xt)′. Generally variables in

zt are called instruments and define the orthogonality conditions orrestrictions of the model.

Seppo Pynnonen Empirical Asset Pricing

Page 92: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

The empirical moments are

gT (θ) =1

T

T∑t=1

ht(θ). (47)

The objective is to choose θ such that the empirical moments areas close as possible to zero. If there are equally many parametersas equations in (47) then (called exactly identified) θ can besolved from the system.

If there are more equations (i.e., moment conditions) thanparameters, we say that the model is over identified and we try tofind a solution that satisfies all the moment conditions as closely aspossible.

Seppo Pynnonen Empirical Asset Pricing

Page 93: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

This amounts to selecting the GMM estimator θ of θ such that

θ = arg minθ

gT (θ)′WTgT (θ), (48)

where WT is a positive definite weighting matrix. Theoretically theoptimal weighting matrix is the inverse of the covariance matrix

S =∞∑

j=−∞E[ht(θ)ht−j(θ)′

], (49)

which must be estimated in a suitable manner in practice. S iscalled the long run covariance matrix of the moment conditions.

If there are more parameters than moment conditions the problemis under identified and no unique solution exists.

Seppo Pynnonen Empirical Asset Pricing

Page 94: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

The appeal of GMM derives from the fact that under fairly generalconditions θ → θ (in probability) and the asymptotic distributionof θ is normal.

That is, under fairly general conditions, θ is a consistent estimatorof θ and its sampling distribution is asymptotically normal.

Also√ThT (θ) ∼ N(0,S) asymptotically, which implies that

TgT (θ)′S−1gT (θ) ∼ χ2r asymptotically, where r is the degrees of

freedom equalling number of rows (moment conditions) in thevector hT (θ).

Seppo Pynnonen Empirical Asset Pricing

Page 95: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Replacing θ and S by their estimators we have in theover-identified case we have the J-statistic

J = TgT (θ)′WgT (θ) ∼ χ2r−k (asymptotically), (50)

where k < r is the number of estimated parameters and W = S−1.

The J-statistic can be used as a goodness-of-fit measure to testwhether the estimated model satisfies the imposed momentconditions.

Many software packages, including Stata, allows for testing alsoindividual moment conditions to identify which restrictions are notsupported by the data.

Seppo Pynnonen Empirical Asset Pricing

Page 96: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Continuing the simple regression example, given T observations,the empirical moment conditions are

gT (β0, β1) =1

T

T∑t=1

(yt − β0 − β1xt

(yt − β0 − β1xt)xt

)(51)

or

gT (β0, β1) =

(y − β0 − β1x

sxy − β0x − β1sxx

)(52)

where y and x are the sample means and

sxy =1

T

T∑t=1

xtyt and sxx =1

T

T∑t=1

x2t .

Seppo Pynnonen Empirical Asset Pricing

Page 97: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Setting (52) to zero, yields two (linear) equations and twounknown parameters, i.e., we have the exactly identified case witha solution that is the same as the OLS.

An excellent reference of GMM estimation in finance is Cochrane(1985) [(1981)].

Seppo Pynnonen Empirical Asset Pricing

Page 98: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

In order to illustrate the approach, consider the single parameterCAPM (Shanken and Zhou 2007, 84(1) 40–48 JFE).

E[Rit ] = γ0 + γ1E[(Ri − µi )(Rm − µm)]

σ2m

, (53)

where µi = E[Ri ], µm = E[Rm], and σ2m = E

[(Rm − µm)2

],

i = 1, . . . , n.

Seppo Pynnonen Empirical Asset Pricing

Page 99: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

These imply the following 2(n + 1) moment conditions

E

Rit − µiRmt − µm(Rmt − µm)2 − σ2

m

Rit − γ0 − γ1(Rit−µi )(Rmt−µm)

σ2m

= 0. (54)

i = 1, . . . , n

Seppo Pynnonen Empirical Asset Pricing

Page 100: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

The empirical moments are

gT (µi ) =1

T

T∑t=1

(Rit − µi ) (55)

gT (µm) =1

T

T∑t=1

(Rmt − µm) (56)

gT (µm, σ2m) =

1

T

T∑t=1

((Rmt − µm)2 − σ2

m

)(57)

gT (θ1,i ,θ2) =1

T

T∑t=1

(Rit − γ0 − γ1

(Rit − µi )(Rmt − µm)

σ2m

)(58)

where θ1,i = (µi , µm, σ2m) and θ2 = (γ0, γ1).

Seppo Pynnonen Empirical Asset Pricing

Page 101: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Setting the empirical moments equal to zero for the first n + 2moments in (55), (56), and (57), there are n + 2 unknownparameters that can be solved to give

µi = Ri =1

T

T∑t=1

Rit (59)

µm = Rm =1

T

T∑t=1

Rmt (60)

σ2m =

1

T

T∑t=1

(Rmt − µm)2, (61)

i = 1, . . . , n.

Seppo Pynnonen Empirical Asset Pricing

Page 102: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

In the second step we plug these estimates into θi ,1 to get

θi ,1 = (Ri , Rm, σ2m) and given θi ,1 estimate γ0 and γ1 using the n

moment conditions given in equation (58) (Shanken and Zhou2007 call this approach GMM2, see also Goyal (2012)).

In spite of this we will use all moment conditions in the followingStata implementation.

It is notable that we have 2(n + 1) moment conditions and n + 4unknown parameter, such that the problem is over identified.

Before going to the estimation, let us look the general Statasyntax.

Seppo Pynnonen Empirical Asset Pricing

Page 103: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Stata has very general GMM estimation options including paneldata (see Stata manual [R]).

The general syntax is

gmm ([eqname1 :] <mexp1 >) ([eqname2 :] <mexp2 >). . .[if] [in] [weight] [, options]

Seppo Pynnonen Empirical Asset Pricing

Page 104: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Example: Consumption CAPM

Consider the following SDF model

E[β(1 + rt+1) (ct+1/ct)

−γ] = 1 (62)

where ct is consumption and rt return on an asset.The implied moment condition is

ut(β, γ) = 1− β{

(1 + rt+1)(ct+1/ct)−γ} (63)

Using time series data (tsset), the Stata command would be forthe moment condition

gmm ( 1 - {beta}*((1 + F.r)*(F.c/c)^(-1*{gamma})) ) · · ·

Estimated parameters are enclosed in braces (e.g., {beta}).

Seppo Pynnonen Empirical Asset Pricing

Page 105: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

In this example we generate 20 monthly balanced equally weightedbeta portfolios as in the FM rolling example. I.e., betas areestimated from 60 months period ending at t − 1, firms areclassified to 20 size beta portfolios and month t portfolio returnsare the averages of the associated stocks.

// fm_gmm_capm.do

// GMM analysis of CAPM (data as in Fama-MacBeth 20 beta portfolio example

// Rolling updates of estimated beta portfolios

// (a) estimation period of betas consists of months t - 60 to t - 1

// (b) monthly balanced equally weighted portfolio for period from t to t + hldng - 1

// Data must be available for all of the estimation period months and at least minobs months

// in the beta estimation period.

Seppo Pynnonen Empirical Asset Pricing

Page 106: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

global estpl = 60 // estimation period

global betaupd = 12 // beta updating frequency

global minobs = 41

global fmnth = ym(1980, 1)

global lmnth = ym(2009, 12) - $betaupd + 1

// compute 20 rolling beta portfolios by estimating betas from the period of

// 60 months ending to month t-1 and sort securities into 20 portfolios in month t

forvalues lmm = $fmnth ($betaupd) $lmnth {

global mm = ‘lmm’

displ "Coefficients for " $estpl " months in period: " %tm $mm-$estpl " -- " %tm $mm-1

// compute number of observations fulfilling data requirement: a security

// available for month t and at leas $minobs years in the period ending month t

// i.e., $minobs*12 + 1 months

qui use _nyse, clear

qui drop if missing(re)

quietly keep if yrm >= ($mm - $estpl) & yrm <= $mm + $betaupd - 1 // sample period ending

// at the test month

quietly save _tmp, replace

qui keep if yrm <= $mm

by permno : egen cnt = count(permno)

qui drop if cnt < $minobs // keep only those that have potentially

// the minimum number of observations

qui keep if yrm == $mm

gen testm = 1

quietly keep permno testm

qui merge 1:m permno using _tmp // mark those series that are available for the test month

qui keep if _merge == 3 & (testm == 1) // remove series that are not available for the test month

// or have missing observations on the estimation period

Seppo Pynnonen Empirical Asset Pricing

Page 107: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

sort pf20 yrm

save _pfretfile

keep if pf20 == 1

rename rpe r1 // for easy reference, rename

keep yrm rme r1

save _ff, replace

forvalues i = 2/20 {

use if pf20 == ‘i’ using _pfretfile, clear

keep yrm rpe

rename rpe r‘i’

sort yrm

merge 1:1 yrm using _ff

drop _merge

save _ff, replace

}

Seppo Pynnonen Empirical Asset Pricing

Page 108: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

drop testm _merge

sort permno yrm

quietly save _tmp, replace // temporary work file

qui statsby _b , by(permno) : reg re rme if yrm < $mm

sort _b_rme // sort by beta to define 20 portfolios

gen pf20 = int(20*(_n - 1) / _N) + 1 // indicators of the 20 beta size portfolios

keep permno pf20

qui quietly save _sizepf, replace // temporary file with permno and size indicators of the stock

qui quietly merge 1:m permno using _tmp // merge portfolio indicators into beta file

drop if yrm < $mm

drop _merge

sort pf20 yrm

by pf20 yrm : egen rpe = mean(re)

by pf20 yrm : egen rp = mean(ret)

keep yrm pf20 rpe rp rme rm

qui duplicates drop

keep pf20 yrm rpe rme

order yrm

if $mm > $fmnth {

append using _pfretfile

}

save _pfretfile, replace

}

Seppo Pynnonen Empirical Asset Pricing

Page 109: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

use _ff, clear

gmm (r1 - {m1}) (r2 - {m2}) (r3 - {m3}) (r4 - {m4}) (r5 - {m5}) /// Stock mean equations

(r6 - {m6}) (r7 - {m7}) (r8 - {m8}) (r9 - {m9}) (r10 - {m10}) ///

(r11 - {m11}) (r12 - {m12}) (r13 - {m13}) (r14 - {m14}) (r15 - {m15}) ///

(r16 - {m16}) (r17 - {m17}) (r18 - {m18}) (r19 - {m19}) (r20 - {m20}) ///

(rme - {me}) /// Market mean

((rme - {me})^2 - {sigma2m = 1}) /// Market variance

(r1 - {gam0} - {gam1} * (r1 - {m1})*(rme - {me}) / {sigma2m}) /// Beta equations

(r2 - {gam0} - {gam1} * (r2 - {m2})*(rme - {me}) / {sigma2m}) ///

(r3 - {gam0} - {gam1} * (r3 - {m3})*(rme - {me}) / {sigma2m}) ///

(r4 - {gam0} - {gam1} * (r4 - {m4})*(rme - {me}) / {sigma2m}) ///

(r5 - {gam0} - {gam1} * (r5 - {m5})*(rme - {me}) / {sigma2m}) ///

(r6 - {gam0} - {gam1} * (r6 - {m6})*(rme - {me}) / {sigma2m}) ///

(r7 - {gam0} - {gam1} * (r7 - {m7})*(rme - {me}) / {sigma2m}) ///

(r8 - {gam0} - {gam1} * (r8 - {m8})*(rme - {me}) / {sigma2m}) ///

(r9 - {gam0} - {gam1} * (r9 - {m9})*(rme - {me}) / {sigma2m}) ///

(r10 - {gam0} - {gam1} * (r10 - {m10})*(rme - {me}) / {sigma2m}) ///

(r11 - {gam0} - {gam1} * (r11 - {m11})*(rme - {me}) / {sigma2m}) ///

(r12 - {gam0} - {gam1} * (r12 - {m12})*(rme - {me}) / {sigma2m}) ///

(r13 - {gam0} - {gam1} * (r13 - {m13})*(rme - {me}) / {sigma2m}) ///

(r14 - {gam0} - {gam1} * (r14 - {m14})*(rme - {me}) / {sigma2m}) ///

(r15 - {gam0} - {gam1} * (r15 - {m15})*(rme - {me}) / {sigma2m}) ///

(r16 - {gam0} - {gam1} * (r16 - {m16})*(rme - {me}) / {sigma2m}) ///

(r17 - {gam0} - {gam1} * (r17 - {m17})*(rme - {me}) / {sigma2m}) ///

(r18 - {gam0} - {gam1} * (r18 - {m18})*(rme - {me}) / {sigma2m}) ///

(r19 - {gam0} - {gam1} * (r19 - {m19})*(rme - {me}) / {sigma2m}) ///

(r20 - {gam0} - {gam1} * (r20 - {m20})*(rme - {me}) / {sigma2m}) , ///

winit(identity)

Seppo Pynnonen Empirical Asset Pricing

Page 110: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Estimates of the market risk premium (γ1) and pricing error (γ0).Only the estimate of the pricing error is statistically significant!Thus, in the light of this analysis, beta does not seem to do its job.

Number of obs = 360

-----------------------------------------------------

| Robust

| Coef. Std. Err. z P>|z|

-------------+---------------------------------------

/me | 0.737 0.279 2.64 0.008

/sigma2m | 28.692 3.457 8.30 0.000

/gam0 | 0.452 0.185 2.44 0.015

/gam1 | 0.316 0.335 0.94 0.346

-----------------------------------------------------

For comparison, below are also results of the two-stage regression

Number of obs = 20

------------------------------------------------------

mean | Coef. Std. Err.* t P>|t|

-------------+----------------------------------------

_cons | 0.520 0.206 2.52 0.036

beta | 0.278 0.349 0.79 0.450

------------------------------------------------------

* adjusted standard errors

Seppo Pynnonen Empirical Asset Pricing

Page 111: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Numerical results differ, but qualitatively the results are consistent.The bottom line is that GMM adjusts the standard errors, whilecross-sectional regressions they must be explicitly adjusted.

Seppo Pynnonen Empirical Asset Pricing

Page 112: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

To close this GMM part, let us return back to the time seriestesting, i.e., testing the zero-beta hypothesis in (27), which impliesthe non-linear restrictions in (31) on the intercept term inregression (30).

GMM, which ’only’ assumes the existence of relevant moments.

The zero-beta hypothesis in (27) implies that to each regressionequation the following moment conditions

E[rit − γ0 − β′i (ft − ιγ0)

]= 0 (64)

E[(rit − γ0 − β′i (ft − ιγ0)

)ft]

= 0, (65)

where β′i is the ith row of B, i = 1, . . . ,N.

The first condition is due to the zero-beta hypothesis and thesecond one is due to the technical modeling condition that theerror term uit = rit − γ0 − β′i (ft − ιγ0) does not correlate with theexplanatory variable.

Seppo Pynnonen Empirical Asset Pricing

Page 113: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

We may note that the GMM moment conditions for regression(24) are (’OLS moment conditions’)

E[(rit − αi − β′i ft)ft

]= 0, (66)

i = 1, . . . ,N.Thus the zero-beta hypothesis implies N − 1 restrictions on theseOLS conditions, such that we have in the GMM testing N − 1degrees of freedom.

Seppo Pynnonen Empirical Asset Pricing

Page 114: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Using Stata gmm, we explicitly define the moment conditions, forexample as follows: As in the non-linear least squares, parametersto be estimated are in braces ({ }).

gen rm = mmrf + rf // market return

// gmm moment conditions for the zero beta model

gmm (dcl1 - {gamma0} - {b1}*(rm - {gamma0}) - {s1}*(smb - {gamma0}) - {h1}*(hml - {gamma0})) ///

(dcl2 - {gamma0} - {b2}*(rm - {gamma0}) - {s2}*(smb - {gamma0}) - {h2}*(hml - {gamma0})) ///

(dcl3 - {gamma0} - {b3}*(rm - {gamma0}) - {s3}*(smb - {gamma0}) - {h3}*(hml - {gamma0})) ///

(dcl4 - {gamma0} - {b4}*(rm - {gamma0}) - {s4}*(smb - {gamma0}) - {h4}*(hml - {gamma0})) ///

(dcl5 - {gamma0} - {b5}*(rm - {gamma0}) - {s5}*(smb - {gamma0}) - {h5}*(hml - {gamma0})) ///

(dcl6 - {gamma0} - {b6}*(rm - {gamma0}) - {s6}*(smb - {gamma0}) - {h6}*(hml - {gamma0})) ///

(dcl7 - {gamma0} - {b7}*(rm - {gamma0}) - {s7}*(smb - {gamma0}) - {h7}*(hml - {gamma0})) ///

(dcl8 - {gamma0} - {b8}*(rm - {gamma0}) - {s8}*(smb - {gamma0}) - {h8}*(hml - {gamma0})) ///

(dcl9 - {gamma0} - {b9}*(rm - {gamma0}) - {s9}*(smb - {gamma0}) - {h9}*(hml - {gamma0})) ///

(dcl10 - {gamma0} - {b10}*(rm - {gamma0}) - {s10}*(smb - {gamma0}) - {h10}*(hml - {gamma0})) ///

if yrm >= ym(1950,1), inst(rm smb hml) winit(identity) // two step GMM

Seppo Pynnonen Empirical Asset Pricing

Page 115: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

Clip of the results

GMM estimation

Number of parameters = 31

Number of moments = 40

Initial weight matrix: Identity Number of obs = 792

GMM weight matrix: Robust

------------------------------------------------------------------------------

| Robust

| Coef. Std. Err. z P>|z| [95% Conf. Interval]

-------------+----------------------------------------------------------------

/gamma0 | 0.051 0.015 3.29 0.001 0.021 0.081

/b1 | 0.929 0.016 56.94 0.000 0.897 0.961

/s1 | 1.222 0.031 39.58 0.000 1.161 1.282

/h1 | 0.339 0.032 10.46 0.000 0.276 0.403

/b2 | 1.011 0.009 106.91 0.000 0.992 1.029

/s2 | 1.107 0.017 65.36 0.000 1.074 1.140

/h2 | 0.213 0.021 10.36 0.000 0.173 0.254

(etc)

/b10 | 0.980 0.004 234.88 0.000 0.971 0.988

/s10 | -0.278 0.007 -38.77 0.000 -0.292 -0.264

/h10 | -0.058 0.007 -8.14 0.000 -0.072 -0.044

------------------------------------------------------------------------------

Instruments for equation 1: rm smb hml _cons

Instruments for equation 2: rm smb hml _cons

(etc)

Instruments for equation 10: rm smb hml _cons

Seppo Pynnonen Empirical Asset Pricing

Page 116: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

GMM approach

The zero-beta portfolio return estimates to γ0 = 0.051% permonth compared to the average risk free rate of rf = 0.34% permonth on the sample period.

Test results for the null hypothesis (27), or H0 : α = (ι + Bι)γ0

can be obtained by the postestimation command estat overid,which gives

. estat overid // test for Zero-beta hypothesis

Test of overidentifying restriction:

Hansen’s J chi2(9) = 13.2326 (p = 0.1524)

that does not reject the null hypothesis.

Seppo Pynnonen Empirical Asset Pricing

Page 117: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Thanks!1 Testing Asset Pricing Models

Introduction

Testing Methodology

Time Series Regression testing

Example: Time Series Regression testing for FF ME decile portfolioswith risk-free asset exists

Example: Time Series Regression testing for FF ME decile portfolios:Zero-beta

Cross-sectional regression

Two-pass regression

Fama-MacBeth Rolling method

Fama-MacBeth Stata implementation

Monthly Rolling Fama-MacBeth

GMM approach

Thanks!Seppo Pynnonen Empirical Asset Pricing

Page 118: Empirical Asset Pricing - Vaasan yliopistolipas.uwasa.fi/~sjp/Teaching/eaptx/lectures/p5.pdf · Fama-MacBeth Stata implementation Monthly Rolling Fama-MacBeth GMM approach Thanks!

Testing Asset Pricing Models

Thanks!

Thanks!

Seppo Pynnonen Empirical Asset Pricing