Skip to main content

Overview

This server provides replicated Fama-French factors and estimates loadings and alpha against them. The factors are rebuilt from Massive market and fundamental data using the methodology of the original Fama-French papers — the three-factor model of 1993 and its five-factor extension of 2015 — which is the same construction behind the official series. What differs is timing. The official Kenneth French library is published with roughly a two-month lag, while these proxy factors are published at the end of each trading day, so you can regress against recent windows. They are still a replication rather than the official data: cite them as proxy factors, and expect small differences from the published library. The daily factors are Mkt-RF, SMB, HML, RMW, and CMA. The risk-free series RF is separate, not a sixth explanatory factor.

Connection

MCP URL: https://quantx-api.limex.pro/mcps/fama-french-replicate Select Fama-French Replicate in the QuantX marketplace. Use its gateway connection and QuantX authorization as described in Client Setup. No market-data provider key is required — the server sources the underlying Massive data itself. Cursor configuration (.cursor/mcp.json):
Set the referenced environment variables before starting Cursor. For Claude Code or Python, use the client-specific format in Client Setup.

Tools

See Shared MCP Tools for result and artifact handling.

Examples

Retrieve Proxy Factors

Call get-proxy-ff-factors:
Resolve a stored response before reading the pair. Call get-proxy-ff-factors-last with {"request": {}} to inspect the latest available date.

Regress Against the Proxy Factors

Call get-loadings-and-alpha with a date-keyed return series. The values below are synthetic:
With factors: null, the server loads the matching proxy factor window. This example requires that window to exist; use a substantially longer, well-conditioned sample for research.

Supply Your Own Factors

For explicit factor tables, use a {"columns": [...], "rows": [...]} object with exactly one case-insensitive Date or index column and numeric factor columns. Supply rf as a date-keyed mapping or a date/value table when needed.
  • Values are decimal returns: 0.01 means 1%, not 1.
  • With raw returns, keep rets_are_excess: false. An embedded RF column is used when no explicit rf override is supplied.
  • With already excess returns, use rets_are_excess: true; do not subtract RF twice.
  • Align dates and frequency. Do not pass the entire [factors, rf] pair as the factor table.

Results and Limitations

The regression payload contains loadings, alpha, n_obs, factors, from_date_used, to_date_used, and diagnostics. Keep rank, df_resid, cond_number, n_obs_input, n_dropped_nonfinite, nonfinite_values, and warnings with the report. A reduced sample or ill-conditioned fit is not equivalent to the original input sample. The factor history is a replicated proxy series, not a download from the Kenneth French library. A new row appears once a trading day has closed, so the latest available date can still trail today — call get-proxy-ff-factors-last to see where the series ends instead of assuming. A requested window with no trading days fails; move or widen the dates. Text values such as "NaN" or "inf" are rejected. Numeric nonfinite observations are filtered and counted in diagnostics. Inspect scale warnings rather than silently changing units.