Rsquared in Fama Macbeth using rolling window

I am trying to do Fama Macbeth regression on some tradable factors using 5-year rolling window updated monthly. However, I am a little bit confused when calculating the final R-squared of the model. I am thinking about two ways to deal with it:

For each rolling window, I have one R-squared. To calculate the final R-squared of the model, I just take the average of all R-squared in each rolling window (just like the way we do with lambda) >> I get pretty good R-squared (around 70%-80%)

After extracting the final lambda for each factor, I use R-squared formula to calculate the final R-squared >> I get very bad R-squared (negative). In this case, I use dependent variables are average return of each portfolio, independent variables are obviously the betas, corresponding with factors and portfolios.

So how usually the final R-squared is calculated ?

It really depends whether you are making time-series or cross-sectional tests. It seems that you are trying to do 2-step Fama-Macbeth regressions. So at this second stage rolling windows no longer matter (those are time-series regressions - the first stage). After you have the beta estimates from the first stage you run the second stage (details here).

For each time-period $t$ you will have a cross-sectional regression. You can average safely the $R^2$ of each regression to get an average $R^2$. This has been done in the literature, for example: Lewellen (2015).

Take a look at table 2 from that paper and the description of the table:

Table 2 reports average slopes, R2s, and sample sizes for 596 monthly cross --sectional regressions, 1964:05 to 2013:12.

An alternative way is to make a single cross-sectional regression on the second stage. This is the approach of Lettau and Ludvigson (2001). In this case you will have a single R2. Take a look at their table 1:

• First, thank you for your prompt response. However, I think in the second stage, we still need the rolling window because for each rolling window we have a specific matrix of betas (for factors and portfolios) and they are different across rolling windows. And those betas are regressed as independent variables against a subsequent period. More precisely, for the first rolling window (t1 >> t60), I extract betas (time-series regression ) and I use excess return at t61 to regress against those betas (cross-sectional regression) to get lambda and Rsquared for the first rolling window. Mar 23 '18 at 16:31
• Do you think whether it is reasonable to regress in the second stage like the way that I just described ? Thanks. Mar 23 '18 at 16:45
• You have a vector and not a matrix of betas. Then the second window should be t2 >> t61 and the third t3 >> t62 and so on and so forth. Mar 23 '18 at 16:50
• In the case of Lettau and Ludvigson (2001), I don't think I can replicate their way because they have constant betas for all period. Not like in the rolling-window case, when we have different betas for different rolling windows ? Mar 23 '18 at 17:15
• Correct. But you can also run a single time-series regression instead of rolling windows. Mar 23 '18 at 17:48