Hi Statalist Members!
I am conducting a research on variation of the average returns on 12 portfolio industries in the American market and I investigate which, among the Capital Asset Pricing (CAPM), Fama-French Three-Factors (FF3), Carhart (MoM), Pástor and Stambaugh (liquidity_model) and the Fama-French Five-Factors model is the best model.
In order to do so, the GRS TEST (analysing IN-SAMPLE and SUB-SAMPLES) is employed as follows:
// GRS TEST //
//IN-SAMPLE//
** CAPM **
grstest2 NoDurrf Durblrf Manfrf Enrgyrf Chemsrf BusEqrf Telcmrf Utilsrf Shopsrf Hlthrf Moneyrf Otherrf , flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf Durblrf Manfrf Enrgyrf Chemsrf BusEqrf Telcmrf Utilsrf Shopsrf Hlthrf Moneyrf Otherrf , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf Durblrf Manfrf Enrgyrf Chemsrf BusEqrf Telcmrf Utilsrf Shopsrf Hlthrf Moneyrf Otherrf , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf Durblrf Manfrf Enrgyrf Chemsrf BusEqrf Telcmrf Utilsrf Shopsrf Hlthrf Moneyrf Otherrf , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf Durblrf Manfrf Enrgyrf Chemsrf BusEqrf Telcmrf Utilsrf Shopsrf Hlthrf Moneyrf Otherrf , flist( mkt_minus_rf smb hml rmw cma) alphas
// SUB-SAMPLES //
** VARIABLES CREATION **v
gen NoDurrf_1= NoDurrf if tin(1970m6, 1978m4)
gen Durblrf_1= Durblrf if tin(1970m6, 1978m4)
gen Manfrf_1= Manfrf if tin(1970m6, 1978m4)
gen Enrgyrf_1= Enrgyrf if tin(1970m6, 1978m4)
gen Chemsrf_1= Chemsrf if tin(1970m6, 1978m4)
gen BusEqrf_1= BusEqrf if tin(1970m6, 1978m4)
gen Telcmrf_1= Telcmrf if tin(1970m6, 1978m4)
gen Utilsrf_1= Utilsrf if tin(1970m6, 1978m4)
gen Shopsrf_1= Shopsrf if tin(1970m6, 1978m4)
gen Hlthrf_1= Hlthrf if tin(1970m6, 1978m4)
gen Moneyrf_1= Moneyrf if tin(1970m6, 1978m4)
gen Otherrf_1= Otherrf if tin(1970m6, 1978m4)
gen NoDurrf_2= NoDurrf if tin(1978m5, 1986m3)
gen Durblrf_2= Durblrf if tin(1978m5, 1986m3)
gen Manfrf_2= Manfrf if tin(1978m5, 1986m3)
gen Enrgyrf_2= Enrgyrf if tin(1978m5, 1986m3)
gen Chemsrf_2= Chemsrf if tin(1978m5, 1986m3)
gen BusEqrf_2= BusEqrf if tin(1978m5, 1986m3)
gen Telcmrf_2= Telcmrf if tin(1978m5, 1986m3)
gen Utilsrf_2= Utilsrf if tin(1978m5, 1986m3)
gen Shopsrf_2= Shopsrf if tin(1978m5, 1986m3)
gen Hlthrf_2= Hlthrf if tin(1978m5, 1986m3)
gen Moneyrf_2= Moneyrf if tin(1978m5, 1986m3)
gen Otherrf_2= Otherrf if tin(1978m5, 1986m3)
gen NoDurrf_3= NoDurrf if tin(1986m4, 1994m2)
gen Durblrf_3= Durblrf if tin(1986m4, 1994m2)
gen Manfrf_3= Manfrf if tin(1986m4, 1994m2)
gen Enrgyrf_3= Enrgyrf if tin(1986m4, 1994m2)
gen Chemsrf_3= Chemsrf if tin(1986m4, 1994m2)
gen BusEqrf_3= BusEqrf if tin(1986m4, 1994m2)
gen Telcmrf_3= Telcmrf if tin(1986m4, 1994m2)
gen Utilsrf_3= Utilsrf if tin(1986m4, 1994m2)
gen Shopsrf_3= Shopsrf if tin(1986m4, 1994m2)
gen Hlthrf_3= Hlthrf if tin(1986m4, 1994m2)
gen Moneyrf_3= Moneyrf if tin(1986m4, 1994m2)
gen Otherrf_3= Otherrf if tin(1986m4, 1994m2)
gen NoDurrf_4= NoDurrf if tin(1994m3, 2002m1)
gen Durblrf_4= Durblrf if tin(1994m3, 2002m1)
gen Manfrf_4= Manfrf if tin(1994m3, 2002m1)
gen Enrgyrf_4= Enrgyrf if tin(1994m3, 2002m1)
gen Chemsrf_4= Chemsrf if tin(1994m3, 2002m1)
gen BusEqrf_4= BusEqrf if tin(1994m3, 2002m1)
gen Telcmrf_4= Telcmrf if tin(1994m3, 2002m1)
gen Utilsrf_4= Utilsrf if tin(1994m3, 2002m1)
gen Shopsrf_4= Shopsrf if tin(1994m3, 2002m1)
gen Hlthrf_4= Hlthrf if tin(1994m3, 2002m1)
gen Moneyrf_4= Moneyrf if tin(1994m3, 2002m1)
gen Otherrf_4= Otherrf if tin(1994m3, 2002m1)
gen NoDurrf_5= NoDurrf if tin(2002m2, 2009m12)
gen Durblrf_5= Durblrf if tin(2002m2, 2009m12)
gen Manfrf_5= Manfrf if tin(2002m2, 2009m12)
gen Enrgyrf_5= Enrgyrf if tin(2002m2, 2009m12)
gen Chemsrf_5= Chemsrf if tin(2002m2, 2009m12)
gen BusEqrf_5= BusEqrf if tin(2002m2, 2009m12)
gen Telcmrf_5= Telcmrf if tin(2002m2, 2009m12)
gen Utilsrf_5= Utilsrf if tin(2002m2, 2009m12)
gen Shopsrf_5= Shopsrf if tin(2002m2, 2009m12)
gen Hlthrf_5= Hlthrf if tin(2002m2, 2009m12)
gen Moneyrf_5= Moneyrf if tin(2002m2, 2009m12)
gen Otherrf_5= Otherrf if tin(2002m2, 2009m12)
gen NoDurrf_6= NoDurrf if tin(2010m1, 2017m12)
gen Durblrf_6= Durblrf if tin(2010m1, 2017m12)
gen Manfrf_6= Manfrf if tin(2010m1, 2017m12)
gen Enrgyrf_6= Enrgyrf if tin(2010m1, 2017m12)
gen Chemsrf_6= Chemsrf if tin(2010m1, 2017m12)
gen BusEqrf_6= BusEqrf if tin(2010m1, 2017m12)
gen Telcmrf_6= Telcmrf if tin(2010m1, 2017m12)
gen Utilsrf_6= Utilsrf if tin(2010m1, 2017m12)
gen Shopsrf_6= Shopsrf if tin(2010m1, 2017m12)
gen Hlthrf_6= Hlthrf if tin(2010m1, 2017m12)
gen Moneyrf_6= Moneyrf if tin(2010m1, 2017m12)
gen Otherrf_6= Otherrf if tin(2010m1, 2017m12)
** CAPM **
grstest2 NoDurrf_1 Durblrf_1 Manfrf_1 Enrgyrf_1 Chemsrf_1 BusEqrf_1 Telcmrf_1 Utilsrf_1 Shopsrf_1 Hlthrf_1 Moneyrf_1 Otherrf_1, flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf_1 Durblrf_1 Manfrf_1 Enrgyrf_1 Chemsrf_1 BusEqrf_1 Telcmrf_1 Utilsrf_1 Shopsrf_1 Hlthrf_1 Moneyrf_1 Otherrf_1 , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf_1 Durblrf_1 Manfrf_1 Enrgyrf_1 Chemsrf_1 BusEqrf_1 Telcmrf_1 Utilsrf_1 Shopsrf_1 Hlthrf_1 Moneyrf_1 Otherrf_1 , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf_1 Durblrf_1 Manfrf_1 Enrgyrf_1 Chemsrf_1 BusEqrf_1 Telcmrf_1 Utilsrf_1 Shopsrf_1 Hlthrf_1 Moneyrf_1 Otherrf_1 , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf_1 Durblrf_1 Manfrf_1 Enrgyrf_1 Chemsrf_1 BusEqrf_1 Telcmrf_1 Utilsrf_1 Shopsrf_1 Hlthrf_1 Moneyrf_1 Otherrf_1 , flist( mkt_minus_rf smb hml rmw cma) alphas
** 1978m5 to 1986m3 **
** CAPM **
grstest2 NoDurrf_2 Durblrf_2 Manfrf_2 Enrgyrf_2 Chemsrf_2 BusEqrf_2 Telcmrf_2 Utilsrf_2 Shopsrf_2 Hlthrf_2 Moneyrf_2 Otherrf_2 , flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf_2 Durblrf_2 Manfrf_2 Enrgyrf_2 Chemsrf_2 BusEqrf_2 Telcmrf_2 Utilsrf_2 Shopsrf_2 Hlthrf_2 Moneyrf_2 Otherrf_2 , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf_2 Durblrf_2 Manfrf_2 Enrgyrf_2 Chemsrf_2 BusEqrf_2 Telcmrf_2 Utilsrf_2 Shopsrf_2 Hlthrf_2 Moneyrf_2 Otherrf_2 , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf_2 Durblrf_2 Manfrf_2 Enrgyrf_2 Chemsrf_2 BusEqrf_2 Telcmrf_2 Utilsrf_2 Shopsrf_2 Hlthrf_2 Moneyrf_2 Otherrf_2 , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf_2 Durblrf_2 Manfrf_2 Enrgyrf_2 Chemsrf_2 BusEqrf_2 Telcmrf_2 Utilsrf_2 Shopsrf_2 Hlthrf_2 Moneyrf_2 Otherrf_2 , flist( mkt_minus_rf smb hml rmw cma) alphas
** 1986m4 to 1994m2 **
** CAPM **
grstest2 NoDurrf_3 Durblrf_3 Manfrf_3 Enrgyrf_3 Chemsrf_3 BusEqrf_3 Telcmrf_3 Utilsrf_3 Shopsrf_3 Hlthrf_3 Moneyrf_3 Otherrf_3, flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf_3 Durblrf_3 Manfrf_3 Enrgyrf_3 Chemsrf_3 BusEqrf_3 Telcmrf_3 Utilsrf_3 Shopsrf_3 Hlthrf_3 Moneyrf_3 Otherrf_3 , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf_3 Durblrf_3 Manfrf_3 Enrgyrf_3 Chemsrf_3 BusEqrf_3 Telcmrf_3 Utilsrf_3 Shopsrf_3 Hlthrf_3 Moneyrf_3 Otherrf_3 , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf_3 Durblrf_3 Manfrf_3 Enrgyrf_3 Chemsrf_3 BusEqrf_3 Telcmrf_3 Utilsrf_3 Shopsrf_3 Hlthrf_3 Moneyrf_3 Otherrf_3 , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf_3 Durblrf_3 Manfrf_3 Enrgyrf_3 Chemsrf_3 BusEqrf_3 Telcmrf_3 Utilsrf_3 Shopsrf_3 Hlthrf_3 Moneyrf_3 Otherrf_3 , flist( mkt_minus_rf smb hml rmw cma) alphas
** 1994m3 to 2002m1**
** CAPM **
grstest2 NoDurrf_4 Durblrf_4 Manfrf_4 Enrgyrf_4 Chemsrf_4 BusEqrf_4 Telcmrf_4 Utilsrf_4 Shopsrf_4 Hlthrf_4 Moneyrf_4 Otherrf_4 , flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf_4 Durblrf_4 Manfrf_4 Enrgyrf_4 Chemsrf_4 BusEqrf_4 Telcmrf_4 Utilsrf_4 Shopsrf_4 Hlthrf_4 Moneyrf_4 Otherrf_4 , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf_4 Durblrf_4 Manfrf_4 Enrgyrf_4 Chemsrf_4 BusEqrf_4 Telcmrf_4 Utilsrf_4 Shopsrf_4 Hlthrf_4 Moneyrf_4 Otherrf_4 , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf_4 Durblrf_4 Manfrf_4 Enrgyrf_4 Chemsrf_4 BusEqrf_4 Telcmrf_4 Utilsrf_4 Shopsrf_4 Hlthrf_4 Moneyrf_4 Otherrf_4 , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf_4 Durblrf_4 Manfrf_4 Enrgyrf_4 Chemsrf_4 BusEqrf_4 Telcmrf_4 Utilsrf_4 Shopsrf_4 Hlthrf_4 Moneyrf_4 Otherrf_4 , flist( mkt_minus_rf smb hml rmw cma) alphas
** 2002m2 to 2009m12 **
** CAPM **
grstest2 NoDurrf_5 Durblrf_5 Manfrf_5 Enrgyrf_5 Chemsrf_5 BusEqrf_5 Telcmrf_5 Utilsrf_5 Shopsrf_5 Hlthrf_5 Moneyrf_5 Otherrf_5 , flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf_5 Durblrf_5 Manfrf_5 Enrgyrf_5 Chemsrf_5 BusEqrf_5 Telcmrf_5 Utilsrf_5 Shopsrf_5 Hlthrf_5 Moneyrf_5 Otherrf_5 , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf_5 Durblrf_5 Manfrf_5 Enrgyrf_5 Chemsrf_5 BusEqrf_5 Telcmrf_5 Utilsrf_5 Shopsrf_5 Hlthrf_5 Moneyrf_5 Otherrf_5 , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf_5 Durblrf_5 Manfrf_5 Enrgyrf_5 Chemsrf_5 BusEqrf_5 Telcmrf_5 Utilsrf_5 Shopsrf_5 Hlthrf_5 Moneyrf_5 Otherrf_5 , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf_5 Durblrf_5 Manfrf_5 Enrgyrf_5 Chemsrf_5 BusEqrf_5 Telcmrf_5 Utilsrf_5 Shopsrf_5 Hlthrf_5 Moneyrf_5 Otherrf_5 , flist( mkt_minus_rf smb hml rmw cma) alphas
** 2010m1 to 2017m12 **
** CAPM **
grstest2 NoDurrf_6 Durblrf_6 Manfrf_6 Enrgyrf_6 Chemsrf_6 BusEqrf_6 Telcmrf_6 Utilsrf_6 Shopsrf_6 Hlthrf_6 Moneyrf_6 Otherrf_6 , flist( mkt_minus_rf) alphas
** FF3 **
grstest2 NoDurrf_6 Durblrf_6 Manfrf_6 Enrgyrf_6 Chemsrf_6 BusEqrf_6 Telcmrf_6 Utilsrf_6 Shopsrf_6 Hlthrf_6 Moneyrf_6 Otherrf_6 , flist( mkt_minus_rf smb hml) alphas
** MoM **
grstest2 NoDurrf_6 Durblrf_6 Manfrf_6 Enrgyrf_6 Chemsrf_6 BusEqrf_6 Telcmrf_6 Utilsrf_6 Shopsrf_6 Hlthrf_6 Moneyrf_6 Otherrf_6 , flist( mkt_minus_rf smb hml mom) alphas
** liquidity model **
grstest2 NoDurrf_6 Durblrf_6 Manfrf_6 Enrgyrf_6 Chemsrf_6 BusEqrf_6 Telcmrf_6 Utilsrf_6 Shopsrf_6 Hlthrf_6 Moneyrf_6 Otherrf_6 , flist( mkt_minus_rf smb hml trad_liq) alphas
** FF5 **
grstest2 NoDurrf_6 Durblrf_6 Manfrf_6 Enrgyrf_6 Chemsrf_6 BusEqrf_6 Telcmrf_6 Utilsrf_6 Shopsrf_6 Hlthrf_6 Moneyrf_6 Otherrf_6 , flist( mkt_minus_rf smb hml rmw cma) alphas
The problem is that checking the obtained results against the ones reported in the early researches, the t-stat is much higher than the one it should be.
Did I skip any step?
Thank you so much for your help!
Related Posts with Grs test
Calculate median collecting observations from different variables in wide formatDear all, my data structure looks like this. good 1 price 1 good 2 price 2 etc. milk 43 egg 4…
Testing and addressing potential attrition bias in panel dataDear all, I am using household panel data across three waves (2011, 2013, and 2015). Although the v…
Expanding Observations on Panel dataI have the following data: Code: * Example generated by -dataex-. To install: ssc install dataex …
Limit replace observations for n yearsDear All, I have the following data: Code: * Example generated by -dataex-. To install: ssc inst…
Problem with generating and replacing variableHi, I have written the following code but I am facing a lot of problems. Code: gen tetns_inj=. …
Subscribe to:
Post Comments (Atom)
0 Response to Grs test
Post a Comment