gen t=0 if nkcode== 3105 &data_date<= 19960114 &data_date[_n+1]> 19960114
replace t=0 if nkcode== 4185 &data_date<= 19960216 &data_date[_n+1]> 19960216
replace t=0 if nkcode== 7012 &data_date<= 19960921 &data_date[_n+1]> 19960921
replace t=t[_n-1]+1 if nkcode==nkcode[_n-1] & t[_n-1]!=.
gsort nkcode -data_date
replace t=t[_n-1]-1 if nkcode==nkcode[_n-1] &t[_n-1]!=.
sort nkcode data_date
egen fcode=group(nkcode)
gen ratehat=.
gen ssse=.
gen alpha=.
gen beta=.
local i=1
while `i'<=3{
reg ror r_market if t>=-270 & t<=-21 & fcode==`i'
predict rorhat`i' if fcode==`i'
replace ratehat =rorhat`i' if fcode=`i'
replace ssse=e(rmse) if fcode==`i'
matrix B=e(b)
replace alpha=el(B,1,2) if fcode==`i'
replace beta= el(B,1,1) if fcode==`i'
matrix drop b
drop rorhat `i'
local i=`i'+1
}
这是我用STATA做的命令,,,可供参考一下
|