I am reading a paper to do with reversal signals in finance. (Apologies I am not allowed to share the actual paper.)

In the paper it says it does monthly cross sectional regressions and collects the time series of the regression coefficients over time, and finally conducts statistical tests on the time series of regression coefficients.

The regression is

$$ r_{i,t} = b_{0,t} + b_{1,t}reversal_{i,t} + e_{i,t} $$

where $r_{i,t}$ is the return of stock $i$ at time $t$, $reversal_{i,t}$ is the past one month return of stock $i$ at time $t$, and $e_{i,t}$ is the residual.

There are approx. 1000 stocks at each time interval. The time interval is monthly, the data spans 1990 to 2010 (240 months).

Then a table is shown like below (I've rounded the numbers etc.)

                  estimate      std. error      t value      
intercept         0.02          0.003           3.2
reversal         -0.01          0.005          -2.7


  1. Am I right to believe they run all the monthly cross sectional regressions and then take the mean of the coefficients, or is there more to it than this?
  2. I would like to know how they got to these numbers. Did they simply take the average on the 240 estimate and standard errors they had for each regression?
  • $\begingroup$ Welcome user8170. Can you elaborate and give additional details about your question (including a link to the paper, ideally a non-paywalled version)? A few different things could be going on based on your description, but it is hard to answer your question precisely without more information. $\endgroup$ – Antoine Vernet Jul 19 '16 at 9:37
  • $\begingroup$ hi @AntoineVernet thanks for your reply. I've updated my post hopefully that will help, if not let me know, thanks $\endgroup$ – user8170 Jul 19 '16 at 10:03
  • $\begingroup$ It does make it much more likely to get an answer. For formatting, you can use Latex to display math, see help. Subscript is done with an underscore. $\endgroup$ – Antoine Vernet Jul 19 '16 at 10:08
  • $\begingroup$ Is anyone able to help? $\endgroup$ – user8170 Jul 20 '16 at 11:10
  • 1
    $\begingroup$ Why can't you share the paper? Also, how come you do not understand what the authors did? If they are not explicit about it, hardly anyone here could help you; you would need to contact the authors directly. If, on the other hand, the authors are explicit, you should probably be able to understand by yourself. Or is there something I am missing? In any case, it is very difficult to help you without having the actual paper. $\endgroup$ – Richard Hardy Jul 22 '16 at 17:28

There is a procedure called Fama-Macbeth regression where something similar is done. Basically you have information for companies trough time and you want to make inference on some indicators that use some sample period to be computed. As this is done usually with overlapping windows some auto correlation is inserted in the constructed indicators. The procedure aims to take (correct) this into account.

See this answer and the OP for more information.

| cite | improve this answer | |
  • $\begingroup$ OP's procedure doesn't sound like Fama regression to me $\endgroup$ – Aksakal Jul 22 '16 at 19:20
  • $\begingroup$ @Aksakal "[author] collects the time series of the regression coefficients over time, and finally conducts statistical tests on the time series of regression coefficients." Sounds rather Fama-Macbethy to me. Fama-Macbeth in essence is regressing IID time series data (which happen to be cross-sectional regression coefficients) on a constant. Of course, as your answer states, you can regress on more complicated stuff as well.. $\endgroup$ – Matthew Gunn Jul 22 '16 at 19:22
  • 1
    $\begingroup$ @Aksakal In Fama-Macbeth procedure, they run cross-sectional regressions each time-period then take the time-series average of the regression coefficients. They care about the cross-sectional relationship, but they want to estimate standard errors that are robust to cross-sectional correlation. $\endgroup$ – Matthew Gunn Jul 22 '16 at 19:40
  • 1
    $\begingroup$ @Aksakal What you might be thinking about is in that particular Fama-Macbeth (1973) paper, they regressed portfolio returns on the market first to get their market betas (kinda a step 0... not part of Fama-Macbeth procedure). Then they wanted to see if the market betas are associated with higher average returns. You want to regress average returns on the beta, but simply doing that, your standard errors won't be robust to cross-sectional correlation, so they invented Fama-Macbeth procedure. jstor.org.proxy.uchicago.edu/stable/… $\endgroup$ – Matthew Gunn Jul 22 '16 at 19:46
  • 1
    $\begingroup$ @MatthewGunn Your link is through school site :) Here's the open one: jstor.org/stable/1831028 $\endgroup$ – Aksakal Jul 22 '16 at 19:52

Your precise questions:

Assuming they did standard stuff:

  1. Yes, their overall estimate would be the time series average of regression coefficients estimates for each time period.
  2. The standard error of this estimate is not the time series average of the regression standard errors, you don't use them at all! Instead, read my full answer to see how you compute standard errors for the Fama-Macbeth procedure.


Two stylized facts about stock market returns:

  1. There's huge cross-sectional correlation. If Home Depot goes up, probably so does Lowes. In fact, probably so do seemingly unrelated stocks like Intel. Control for industry, region etc... and residuals are still cross-sectionally correlated.
  2. There's little autocorrelation (i.e. there's little correlation in returns over time).

Implications for analyzing Panel Data:

When running some panel regression:

$$ r_{i,t} = {\mathbf{x}}_{i,t} \cdot {\bf{b}} + \epsilon_{i,t}$$

The $\epsilon_{i,t}$ are generally assumed to be independent across time (and that's pretty much OK), but if you don't take into account cross-sectional correlation within a time period ($E[\epsilon_{i,t} \epsilon_{j,t}] \neq 0$), your standard errors will be horribly wrong!

Two general approaches to account for cross-sectional correlation:

  1. Cluster standard errors by time.
  2. Fama-Macbeth procedure (at first seems odd but once you think about it, it's incredibly intuitive).

To do Fama Macbeth, you first run a cross-sectional regression each time period, producing a time series of estimates $\{\hat{\bf{b}}_t\}$.

If each time period is independent, then we can then use the extremely basic techniques we all learned in Statistics 1: use the sample mean as an estimator.

Sample mean: $$\hat{b} = \frac{1}{T} \sum_t \hat{b}_t$$ Sample standard deviation: $$\sigma = \sqrt{\frac{1}{T-1} \sum_t \left( \hat{b}_t - \hat{b}\right)^2 }$$

Standard Error of sample mean: $$ SE = \frac{1}{\sqrt{T}} \sigma $$

| cite | improve this answer | |
  • $\begingroup$ "There's little autocorrelation" - I bet that OP's reading a paper on technical analysis. You can't tell them there's no autocorrelation because that's the whole idea of TA: that you can somehow forecast returns based on historicals. $\endgroup$ – Aksakal Jul 22 '16 at 19:38
  • $\begingroup$ @Aksakal Yeah, I'm a little hand-wavy there. There's all sorts of time-series forecastability stuff that's fairly mainstream in academia, eg. Jegadeesh-Titman (93) momentum, Schiller, Cochrane D/P stuff etc... I didn't want to say zero. I was just trying to express that when you read papers, when people do their stats, they generally assume each time period is an IID draw and that it's not a horribly wrong assumption with stock returns. On the other hand, zero cross-sectional correlation would be an entirely indefensible, horribly wrong assumption. $\endgroup$ – Matthew Gunn Jul 22 '16 at 19:59

Imagine you have a matrix, where each row represents a month, and each column represents a stock return.

So, you first run a regression on each row of data. That's your cross sectional regression. You obtain coefficients. These coefficients correspond to a month of the row.

For instance, you have a column of intercepts: each intercept belongs to a certain month (row). You can now run time series regression of the intercepts.

Intuitively, I see it as a reduction of a matrix into a scalar: you reduce rows into scalars first, which will leave you with one column, then you reduce this column into a scalar.

The procedure which you described sounds like a pooled regression. Since your data set spans 20 years, you probably do not have each stock's return in each time period because new firms get listed, some are delisted, corporate actions like mergers happen etc. Hence, the population of stocks (columns) in each month (row) is different.

| cite | improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.