numeraire_dataset.load_ff_factors#

numeraire_dataset.load_ff_factors(*, freq: Literal['monthly', 'daily'] = 'monthly', start_date: str = '1926-07-01', end_date: str = '2023-12-31') DataFrame[source]#

Fama-French 3-factor tidy frame (date, mkt_excess, smb, hml, risk_free), in decimals.

mkt_excess is the excess market return, risk_free the 1-month T-bill — the canonical academic market/risk-free pair. Monthly source period labels are moved from month-start to month-end, when the returns are realized. start_date and end_date are then applied inclusively to those canonical timestamps (not to the backend’s month-start labels). The strict schema rejects missing or non-finite factor values and attaches inspectable requested/backend/ selected bounds plus tidyfinance version/recipe provenance; it does not pretend to have a raw-byte digest that the backend does not expose.