Skip to contents

Value-weighted monthly excess returns (industry return minus the one-month risk-free rate) on Kenneth French's 12 industry portfolios, January 1964 to December 2023. This is the universe used for the worked examples in the package vignettes; it is included so that the vignettes build reproducibly and without a network connection.

Usage

ff12

Format

A data frame with 720 rows and 13 columns:

date

Month, as a Date at the first of the month.

NoDur

Consumer non-durables, excess return.

Durbl

Consumer durables.

Manuf

Manufacturing.

Enrgy

Energy.

Chems

Chemicals.

BusEq

Business equipment.

Telcm

Telecoms.

Utils

Utilities.

Shops

Wholesale and retail.

Hlth

Healthcare.

Money

Finance.

Other

Other.

Details

Dates are stored at month start as a labelling convention; each row is the return over that calendar month. Returns are simple (not log), expressed as decimals rather than percentages, and are excess of the one-month risk-free rate – verified identical to industry - RF from the Fama-French research factors over all 720 months. They can therefore be used directly in Sharpe-ratio and tangency-portfolio calculations.

Examples

data(ff12)
R <- as.matrix(ff12[, -1])
dim(R)
#> [1] 720  12
round(colMeans(R) * 12, 3)   # annualised mean returns
#> NoDur Durbl Manuf Enrgy Chems BusEq Telcm Utils Shops  Hlth Money Other 
#> 0.078 0.075 0.077 0.080 0.063 0.084 0.051 0.054 0.083 0.082 0.075 0.058