Market Expectations in the Cross-Section of Present Values#
Last updated: Mar 6, 2026, 12:01:12β―AM
Table of Contents#
Pipeline Charts π
Pipeline Dataframes π
- Dataframe:
P01:ccm_link- CRSP-Compustat Link Table - Dataframe:
P01:compustat- Compustat Fundamentals - Dataframe:
P01:crsp_market_returns- CRSP Market Returns - Dataframe:
P01:crsp_monthly_stock- CRSP Monthly Stock Data - Dataframe:
P01:ken_french_25_portfolios- 25 Portfolios (5x5 Size x BM) - Dataframe:
P01:ken_french_ff_factors- Fama-French Research Factors
Pipeline Specs#
Pipeline Name |
Market Expectations in the Cross-Section of Present Values |
|---|---|
Pipeline ID |
|
Lead Pipeline Developer |
Zara and Dylan |
Contributors |
Zara, Dylan |
Git Repo URL |
|
Pipeline Web Page |
|
Date of Last Code Update |
2026-03-05 23:55:41 |
OS Compatibility |
|
Linked Dataframes |
P01:crsp_monthly_stock |
Replication of Table 1 from:
Kelly, B. and Pruitt, S. (2013), βMarket Expectations in the Cross-Section of Present Values.β The Journal of Finance, 68: 1721-1756. https://doi.org/10.1111/jofi.12060
Overview#
This paper demonstrates that returns and cash flow growth for the aggregate US stock market are highly predictable using a single factor extracted from the cross-section of book-to-market ratios. The key methodology is partial least squares (PLS) / three-pass regression filter (3PRF).
Data Sources#
Source |
Description |
Access |
|---|---|---|
CRSP |
Monthly stock returns, prices, market cap |
WRDS |
Compustat |
Annual accounting data (book equity) |
WRDS |
CRSP-Compustat Link |
Crosswalk between CRSP and Compustat |
WRDS |
Project Structure#
p01_kelly_pruitt_2013/
Γ’βΕΓ’ββ¬Γ’ββ¬ src/
Γ’ββ Γ’βΕΓ’ββ¬Γ’ββ¬ settings.py # Project configuration
Γ’ββ Γ’βΕΓ’ββ¬Γ’ββ¬ pull_CRSP_stock.py # Pull CRSP stock data
Γ’ββ Γ’βΕΓ’ββ¬Γ’ββ¬ pull_CRSP_Compustat.py # Pull Compustat data
Γ’ββ Γ’ββΓ’ββ¬Γ’ββ¬ generate_exploratory_charts.py
Γ’βΕΓ’ββ¬Γ’ββ¬ _data/ # Downloaded data (gitignored)
Γ’βΕΓ’ββ¬Γ’ββ¬ _output/ # Generated outputs
Γ’βΕΓ’ββ¬Γ’ββ¬ docs/ # Chartbook site
Γ’βΕΓ’ββ¬Γ’ββ¬ dodo.py # PyDoit task runner
Γ’βΕΓ’ββ¬Γ’ββ¬ chartbook.toml # Chartbook configuration
Γ’βΕΓ’ββ¬Γ’ββ¬ consultation.md # Consultation meeting agenda
Γ’ββΓ’ββ¬Γ’ββ¬ README.md
Setup#
Create environment:
conda create -n kelly_pruitt python=3.11 conda activate kelly_pruitt pip install -r requirements.txt
Configure WRDS credentials:
cp .env.example .env # Edit .env with your WRDS username
Run the pipeline:
doit
Tasks#
Task |
Description |
|---|---|
|
Pull CRSP monthly stock data and market returns |
|
Pull Compustat fundamentals and CCM link table |
|
Generate exploratory charts |
|
Build the chartbook documentation site |
Team#
Zara: Data pipeline, CRSP data, chartbook setup, LaTeX report
Dylan: Book equity calculation, PLS implementation, statistics report