Cross-Sectional Pricing Tests

Methodology

We evaluate each factor parameter configuration using the Gibbons et al. (1989) test (GRS), which tests whether all intercepts (alphas) from time-series regressions of test portfolio returns on the factor model are jointly zero.

\[F_{\text{GRS}} = \frac{T - N - K}{N} \cdot \frac{\hat{\alpha}' \hat{\Sigma}^{-1} \hat{\alpha}}{1 + \hat{\mu}_f' \hat{\Sigma}_f^{-1} \hat{\mu}_f} \sim F(N, T - N - K)\]

A higher GRS p-value indicates the factor model better prices the cross-section (we fail to reject \(H_0\): all \(\alpha_i = 0\)).

Test Assets

Following Liu, Tsyvinski & Wu (2022, Tables III–VI), we form quintile (5-way) value-weighted portfolios sorted on 8 characteristics, yielding 40 test assets:

Characteristic Label Liu Table Description
Market capitalisation MCAP III Prior-week market cap
Price level PRC III Prior-week closing price
Dollar volume PRCVOL V Prior-week mean daily volume
1-week return \(r_{1,0}\) IV Return over prior 1 week
2-week return \(r_{2,0}\) IV Return over prior 2 weeks
3-week return \(r_{3,0}\) IV Return over prior 3 weeks (baseline)
4-week return \(r_{4,0}\) IV Return over prior 4 weeks
Skip-week return \(r_{4,1}\) IV Return over 3 weeks, skipping most recent

All sort variables are lagged by one week relative to the portfolio return period to avoid look-ahead bias. Test portfolios are always value-weighted quintile sorts regardless of the factor model’s weighting scheme.

Factor Configurations Tested

Each factor model is characterised by 6 parameters. We test all 288 combinations:

Parameter Values tested
Exclusions All (stables + wrapped + derivs), Stablecoins only, None
Calendar Sharp year (Liu et al., 2022), Monday–Monday
Weighting Equal-weighted, Value-weighted
Size breakpoints Median (2), Tercile (3), Quintile (5), Decile (10)
Momentum lookback 2, 3, 4 weeks
Delisting returns Off, On (-100%)

The test portfolios (LHS) share the same exclusion, calendar, and delisting settings as the factor model (RHS) to ensure a consistent universe.

Results

Note

Results are generated by scripts/test_factor_pricing_liu.R and will be updated after each pipeline run. The table below shows the most recent results.

Top 20 Configurations

Rank Exclusion Calendar Delist Weight Size N Mom LB GRS F GRS p Mean |α| Avg R²
1 none mon On VW 5 4 1.72 0.0045 0.00782 0.607
2 nostable mon On VW 5 4 1.80 0.0021 0.00782 0.612
3 none mon On VW 5 3 1.83 0.0016 0.00781 0.611
4 none mon On VW 2 4 1.84 0.0015 0.00712 0.664
5 none mon On VW 3 3 1.85 0.0015 0.00727 0.644
6 nostable mon Off VW 10 4 1.86 0.0014 0.00711 0.531
7 none mon On VW 3 4 1.86 0.0013 0.00743 0.643
8 nostable mon Off EW 10 4 1.87 0.0012 0.00693 0.581
9 none mon On VW 2 3 1.89 0.0010 0.00713 0.666
10 none mon On VW 10 4 1.90 0.0009 0.00738 0.516
11 none mon On VW 3 2 1.91 0.0008 0.00706 0.648
12 nostable mon On VW 5 3 1.91 0.0008 0.00778 0.617
13 all mon On VW 5 4 1.91 0.0008 0.00793 0.612
14 nostable mon On VW 3 3 1.92 0.0008 0.00722 0.648
15 none mon Off VW 10 4 1.92 0.0007 0.00716 0.522
16 none mon Off EW 10 4 1.93 0.0007 0.00709 0.574
17 nostable mon On VW 2 4 1.94 0.0006 0.00706 0.668
18 all mon Off VW 10 4 1.95 0.0006 0.00732 0.532
19 nostable mon On VW 2 3 1.95 0.0005 0.00707 0.670
20 all mon Off EW 10 4 1.96 0.0005 0.00726 0.583

Marginal Effects by Parameter Dimension

Exclusion

Exclusion Mean GRS p Median GRS p Mean |α| Mean R² n
none 0.000175 0.000010 0.00743 0.645 96
nostable 0.000118 0.000015 0.00729 0.649 96
all 0.000046 0.000004 0.00746 0.653 96

Calendar

Calendar Mean GRS p Median GRS p Mean |α| Mean R² n
mon 0.000214 0.000037 0.00772 0.641 144
sharp 0.000012 0.000000 0.00707 0.657 144

Delist Return

Delist Return Mean GRS p Median GRS p Mean |α| Mean R² n
TRUE 0.000160 0.000001 0.00738 0.666 144
FALSE 0.000066 0.000016 0.00741 0.633 144

Weighting

Weighting Mean GRS p Median GRS p Mean |α| Mean R² n
vw 0.000184 0.000008 0.00750 0.637 144
ew 0.000042 0.000008 0.00729 0.662 144

Size Breakpoints

Size Breakpoints Mean GRS p Median GRS p Mean |α| Mean R² n
5 0.000157 0.000007 0.00764 0.643 72
10 0.000125 0.000027 0.00715 0.602 72
3 0.000100 0.000008 0.00746 0.671 72
2 0.000071 0.000002 0.00732 0.681 72

Mom Lookback

Mom Lookback Mean GRS p Median GRS p Mean |α| Mean R² n
4 0.000217 0.000020 0.00732 0.641 96
3 0.000089 0.000008 0.00737 0.648 96
2 0.000034 0.000002 0.00749 0.659 96

Best Configuration per Exclusion Level

Exclusion Calendar Delist Weight Size N Mom LB GRS F GRS p Mean |α| Avg R²
all mon On VW 5 4 1.91 0.000782 0.00793 0.612
none mon On VW 5 4 1.72 0.004464 0.00782 0.607
nostable mon On VW 5 4 1.80 0.002143 0.00782 0.612

Interpretation

The GRS test evaluates whether a given three-factor model (CMKT, CSMB, CMOM) can fully explain the cross-sectional return variation across the 40 test portfolios. Key metrics:

  • GRS F-statistic: lower is better (smaller unexplained alpha)
  • GRS p-value: higher is better (fail to reject H₀ that all alphas = 0)
  • Mean |α|: average absolute pricing error across test assets (lower is better)
  • Avg R²: average time-series explanatory power (higher is better)

References

Gibbons, M. R., Ross, S. A., & Shanken, J. (1989). A test of the efficiency of a given portfolio. Econometrica, 57(5), 1121–1152. https://doi.org/10.2307/1913625
Liu, Y., Tsyvinski, A., & Wu, X. (2022). Common risk factors in cryptocurrency. The Journal of Finance, 77(2), 1133–1177. https://doi.org/10.1111/jofi.13119