Hello everyone,
I’m working on a project which aims to use a cross-sectional model based approach to forecast earnings for years t+1, t+2 and t+3. The model is based on Hou et al. (2012) and looks like this:
Ei,t+τ=α0+α1Ai,t+α2Di,t+α3DDi,t+α4Ei,t+α5NegEi,t+α6ACi,t+εi,t+τ
The actual forecasting is a two-step process:
for estimating future earnings for year 2011 (year t + 1). Similarly, data from 2004 to 2008
are used to calculate the coefficient estimates that will be used to calculate the forecast for year
2012 (year t + 2). Finally, the estimates of the cross-sectional regression for the years 2003 to
2007 are used to forecast earnings for the year 2013 (year t + 3).
Example derived from Azevedo and Gerhart (2016).
The earnings forecast for up to three years into the future are calculated by multiplying the independent variables as of year t with the coefficients from the pooled regressions estimated using the previous five years of data.
I have a large cross section of data with many companie (identified by id) for each year. Sometimes companies drop out of the sample due to bankruptcy etc.
I first tried to use -rollreg- (user written command) but had no success since my data has gaps.
In my latest approach, I tried:
qui rolling _b, window(5) saving(coeff.dta, replace): reg F1.E_w A_w D_w DD E_w NegE AC_w
It would be great if someone could comment on this since I’m not sure if my approach even is headed into the right direction!
Thanks!
I’m working on a project which aims to use a cross-sectional model based approach to forecast earnings for years t+1, t+2 and t+3. The model is based on Hou et al. (2012) and looks like this:
Ei,t+τ=α0+α1Ai,t+α2Di,t+α3DDi,t+α4Ei,t+α5NegEi,t+α6ACi,t+εi,t+τ
- Ei,t+τ = earnings of firm i in year t+τ (τ = 1 to3)
- Ai,t = total assets
- Di,t = dividend payment
- DDi,t = dummy variable that equals 1 for dividend payers and 0 otherwise
- NegEi,t = Dummy variable that equals 0 for firms with negative earnings and 1 otherwise
- ACi,t = Accruals
The actual forecasting is a two-step process:
- For each year, starting in 2007, the model above should estimate the pooled cross-sectional regressions using the previous 5 years of data.
- In the next step the coefficients are being used to forecast earnings for years t+1 ,t+2 and t+3.
for estimating future earnings for year 2011 (year t + 1). Similarly, data from 2004 to 2008
are used to calculate the coefficient estimates that will be used to calculate the forecast for year
2012 (year t + 2). Finally, the estimates of the cross-sectional regression for the years 2003 to
2007 are used to forecast earnings for the year 2013 (year t + 3).
Example derived from Azevedo and Gerhart (2016).
The earnings forecast for up to three years into the future are calculated by multiplying the independent variables as of year t with the coefficients from the pooled regressions estimated using the previous five years of data.
I have a large cross section of data with many companie (identified by id) for each year. Sometimes companies drop out of the sample due to bankruptcy etc.
I first tried to use -rollreg- (user written command) but had no success since my data has gaps.
In my latest approach, I tried:
qui rolling _b, window(5) saving(coeff.dta, replace): reg F1.E_w A_w D_w DD E_w NegE AC_w
It would be great if someone could comment on this since I’m not sure if my approach even is headed into the right direction!
Thanks!
Comment