Dear all,
I use the following loop in order to reconstruct a rolling Fama & MacBeth regression:
However, I get the following error messages
Can anyone explain what exactly is going wrong in the loop? I would like to know how I get the loop to run correctly.
Thank you very much!
I use the following loop in order to reconstruct a rolling Fama & MacBeth regression:
Code:
fvset base 3 dummy_momentum6m dummy_nearness12mhigh
tsset permno time
statsby _b _se, by(permno) : reg h_return24m ln_size_ i.dummy_nearness12mhigh i.dummy_momentum6m, vce(robust)
local window=12
local vars "ln_size_ i.dummy_nearness12mhigh i.dummy_momentum6m"
qui{
sum permno, meanonly
local start=r(min)
local end=`start'+`window'
local fin=r(max)
gen _start=.
gen _end=.
foreach var in `vars' cons {
gen b_`var'=.
gen se_`var'=.
}
local i=1
while `end'<=`fin' {
replace _start=`start' in `i'
replace _end=`end' in `i'
foreach var in `vars' cons {
qui sum _b_`var' if inrange(permno, `start' , `end')
replace b_`var' = r(mean) in `i'
replace se_`var'= (r(sd)/sqrt(r(N))) in `i'
}
local start=`start'+1
local end=`end'+1
local i=`i'+1
}
keep _start _end se_* b_*
drop if _start==.
}
Code:
local vars "ln_size_ i.dummy_nearness12mhigh i.dummy_momentum6m" invalid syntax r(198);
Code:
. foreach var in `vars' cons {
. gen b_`var'=.
. gen se_`var'=.
. }
{ required
{
local i=1
Code:
. keep _start _end se_* b_* . drop if _start==. . } r(100);
Thank you very much!

Comment