OFR Hedge Fund Monitor API
Free, open REST API from the U.S. Office of Financial Research (OFR) providing aggregated hedge fund time series data. No API key or registration required.
Base URL: https://data.financialresearch.gov/hf/v1
Quick Start
import requests
import pandas as pd
BASE = "https://data.financialresearch.gov/hf/v1"
# List all available datasets
resp = requests.get(f"{BASE}/series/dataset")
datasets = resp.json()
# Returns: {"ficc": {...}, "fpf": {...}, "scoos": {...}, "tff": {...}}
# Search for series by keyword
resp = requests.get(f"{BASE}/metadata/search", params={"query": "*leverage*"})
results = resp.json()
# Each result: {mnemonic, dataset, field, value, type}
# Fetch a single time series
resp = requests.get(f"{BASE}/series/timeseries", params={
"mnemonic": "FPF-STRATEGY_EQUITY_LEVERAGERATIO_GAVWMEAN",
"start_date": "2015-01-01"
})
series = resp.json() # [[date, value], ...]
df = pd.DataFrame(series, columns=["date", "value"])
df["date"] = pd.to_datetime(df["date"])
Mnemonics are exact — guessing fails. The API rejects unknown identifiers with a plain
Invalid mnemonic string (HTTP 200, not JSON). Always discover real mnemonics via
/metadata/search or /metadata/mnemonics before requesting data. Note in particular that
there is no FPF-ALLQHF_LEVERAGERATIO_* series: aggregate leverage is published per
gross-asset cohort (see below), while the GAVWMEAN/NAVWMEAN asset-weighted leverage means
exist only at the strategy level.
Authentication
None required. The API is fully open and free.
Datasets
| Key |
Dataset |
Update Frequency |
fpf |
SEC Form PF — aggregated stats from qualifying hedge fund filings |
Quarterly |
tff |
CFTC Traders in Financial Futures — futures market positioning |
Monthly |
scoos |
FRB Senior Credit Officer Opinion Survey on Dealer Financing Terms |
Quarterly |
ficc |
FICC Sponsored Repo Service Volumes |
Daily |
The /series/dataset index returns long_name: "FormPF" for every dataset (an upstream API
label quirk); the real source names are above. Confirm a series' true cadence via
schedule/observation_frequency in its metadata.
Data Categories
The HFM organizes data into six categories (each downloadable as CSV):
- size — Hedge fund industry size (AUM, count of funds, net/gross assets)
- leverage — Leverage ratios, borrowing, gross notional exposure
- counterparties — Counterparty concentration, prime broker lending
- liquidity — Financing maturity, investor redemption terms, portfolio liquidity
- complexity — Open positions, strategy distribution, asset class exposure
- risk_management — Stress test results (CDS, equity, rates, FX scenarios)
Core Endpoints
Metadata
| Endpoint |
Path |
Description |
| List mnemonics |
GET /metadata/mnemonics |
All series identifiers |
| Query series info |
GET /metadata/query?mnemonic= |
Full metadata for one series |
| Search series |
GET /metadata/search?query= |
Text search with wildcards (*, ?) |
Series Data
| Endpoint |
Path |
Description |
| Single timeseries |
GET /series/timeseries?mnemonic= |
Date/value pairs for one series |
| Full single |
GET /series/full?mnemonic= |
Data + metadata for one series |
| Multi full |
GET /series/multifull?mnemonics=A,B |
Data + metadata for multiple series |
| Dataset |
GET /series/dataset?dataset=fpf |
All series in a dataset |
| Category CSV |
GET /categories?category=leverage |
CSV download for a category |
| Spread |
GET /calc/spread?x=MNE1&y=MNE2 |
Difference between two series |
Common Parameters
| Parameter |
Description |
Example |
start_date |
Start date YYYY-MM-DD |
2020-01-01 |
end_date |
End date YYYY-MM-DD |
2024-12-31 |
periodicity |
Resample frequency |
Q, M, A, D, W |
how |
Aggregation method |
last (default), first, mean, median, sum |
remove_nulls |
Drop null values |
true |
time_format |
Date format |
date (YYYY-MM-DD) or ms (epoch ms) |
Key FPF Mnemonic Patterns
Mnemonics follow the pattern FPF-{SCOPE}_{METRIC}_{STAT}:
- Scope:
ALLQHF (all qualifying hedge funds), or a strategy such as STRATEGY_CREDIT,
STRATEGY_EQUITY, STRATEGY_MACRO, STRATEGY_RV (relative value), STRATEGY_FUTURES, etc.
ALLQHF leverage/cash metrics carry a gross-asset cohort segment: GAVN10 (10 largest funds),
GAVN11TO50, GAVN51 (rest).
- Metrics:
GAV (gross assets), NAV (net assets), GNE (gross notional exposure),
LEVERAGERATIO, CASHRATIO, COUNT, plus stress-test scenarios (CDSUP250BPS, etc.)
- Stats:
SUM, AVERAGE (equal-weighted, used for ALLQHF cohorts), GAVWMEAN/NAVWMEAN
(asset-weighted, strategy-level only), P5, P50, P95, PCTCHANGE
# Verified series examples (all return data as of 2026)
mnemonics = [
"FPF-ALLQHF_GAVN10_LEVERAGERATIO_AVERAGE", # 10 largest funds: leverage (equal-weighted)
"FPF-STRATEGY_EQUITY_LEVERAGERATIO_GAVWMEAN", # Equity strategy: leverage (GAV-weighted)
"FPF-ALLQHF_GAV_SUM", # All funds: gross assets (total $)
"FPF-ALLQHF_NAV_SUM", # All funds: net assets (total $)
"FPF-ALLQHF_GNE_SUM", # All funds: gross notional exposure
"FICC-SPONSORED_REPO_VOL", # FICC: sponsored repo volume (daily)
]
Reference Files
- references/api-overview.md — Base URL, versioning, protocols, response format
- references/endpoints-metadata.md — Mnemonics, query, and search endpoints with full parameter details
- references/endpoints-series-data.md — Timeseries, spread, and full data endpoints
- references/endpoints-combined.md — Full, multifull, dataset, and category endpoints
- references/datasets.md — Dataset descriptions (fpf, tff, scoos, ficc) and dataset-specific notes
- references/parameters.md — Complete parameter reference with periodicity codes, how values
- references/examples.md — Python examples: discovery, bulk download, spread analysis, DataFrame workflows
1---2name: alterlab-hedgefund-monitor3description: Queries the OFR (Office of Financial Research) Hedge Fund Monitor API for time series on hedge fund size, leverage, counterparties, liquidity, complexity, and risk management, including SEC Form PF aggregated statistics, CFTC Traders in Financial Futures, FICC Sponsored Repo volumes, and FRB SCOOS dealer financing terms (no API key or registration required). Use when working with hedge fund data, systemic risk monitoring, financial stability research, hedge fund leverage or leverage ratios, counterparty concentration, Form PF statistics, repo market data, or OFR financial research data. Part of the AlterLab Academic Skills suite.4license: MIT5---67# OFR Hedge Fund Monitor API89Free, open REST API from the U.S. Office of Financial Research (OFR) providing aggregated hedge fund time series data. No API key or registration required.1011**Base URL:** `https://data.financialresearch.gov/hf/v1`1213## Quick Start1415```python16import requests17import pandas as pd1819BASE = "https://data.financialresearch.gov/hf/v1"2021# List all available datasets22resp = requests.get(f"{BASE}/series/dataset")23datasets = resp.json()24# Returns: {"ficc": {...}, "fpf": {...}, "scoos": {...}, "tff": {...}}2526# Search for series by keyword27resp = requests.get(f"{BASE}/metadata/search", params={"query": "*leverage*"})28results = resp.json()29# Each result: {mnemonic, dataset, field, value, type}3031# Fetch a single time series32resp = requests.get(f"{BASE}/series/timeseries", params={33 "mnemonic": "FPF-STRATEGY_EQUITY_LEVERAGERATIO_GAVWMEAN",34 "start_date": "2015-01-01"35})36series = resp.json() # [[date, value], ...]37df = pd.DataFrame(series, columns=["date", "value"])38df["date"] = pd.to_datetime(df["date"])39```4041**Mnemonics are exact — guessing fails.** The API rejects unknown identifiers with a plain42`Invalid mnemonic` string (HTTP 200, not JSON). Always discover real mnemonics via43`/metadata/search` or `/metadata/mnemonics` before requesting data. Note in particular that44there is **no** `FPF-ALLQHF_LEVERAGERATIO_*` series: aggregate leverage is published per45gross-asset cohort (see below), while the `GAVWMEAN`/`NAVWMEAN` asset-weighted leverage means46exist only at the strategy level.4748## Authentication4950None required. The API is fully open and free.5152## Datasets5354| Key | Dataset | Update Frequency |55|-----|---------|-----------------|56| `fpf` | SEC Form PF — aggregated stats from qualifying hedge fund filings | Quarterly |57| `tff` | CFTC Traders in Financial Futures — futures market positioning | Monthly |58| `scoos` | FRB Senior Credit Officer Opinion Survey on Dealer Financing Terms | Quarterly |59| `ficc` | FICC Sponsored Repo Service Volumes | Daily |6061> The `/series/dataset` index returns `long_name: "FormPF"` for every dataset (an upstream API62> label quirk); the real source names are above. Confirm a series' true cadence via63> `schedule/observation_frequency` in its metadata.6465## Data Categories6667The HFM organizes data into six categories (each downloadable as CSV):68- **size** — Hedge fund industry size (AUM, count of funds, net/gross assets)69- **leverage** — Leverage ratios, borrowing, gross notional exposure70- **counterparties** — Counterparty concentration, prime broker lending71- **liquidity** — Financing maturity, investor redemption terms, portfolio liquidity72- **complexity** — Open positions, strategy distribution, asset class exposure73- **risk_management** — Stress test results (CDS, equity, rates, FX scenarios)7475## Core Endpoints7677### Metadata7879| Endpoint | Path | Description |80|----------|------|-------------|81| List mnemonics | `GET /metadata/mnemonics` | All series identifiers |82| Query series info | `GET /metadata/query?mnemonic=` | Full metadata for one series |83| Search series | `GET /metadata/search?query=` | Text search with wildcards (`*`, `?`) |8485### Series Data8687| Endpoint | Path | Description |88|----------|------|-------------|89| Single timeseries | `GET /series/timeseries?mnemonic=` | Date/value pairs for one series |90| Full single | `GET /series/full?mnemonic=` | Data + metadata for one series |91| Multi full | `GET /series/multifull?mnemonics=A,B` | Data + metadata for multiple series |92| Dataset | `GET /series/dataset?dataset=fpf` | All series in a dataset |93| Category CSV | `GET /categories?category=leverage` | CSV download for a category |94| Spread | `GET /calc/spread?x=MNE1&y=MNE2` | Difference between two series |9596## Common Parameters9798| Parameter | Description | Example |99|-----------|-------------|---------|100| `start_date` | Start date YYYY-MM-DD | `2020-01-01` |101| `end_date` | End date YYYY-MM-DD | `2024-12-31` |102| `periodicity` | Resample frequency | `Q`, `M`, `A`, `D`, `W` |103| `how` | Aggregation method | `last` (default), `first`, `mean`, `median`, `sum` |104| `remove_nulls` | Drop null values | `true` |105| `time_format` | Date format | `date` (YYYY-MM-DD) or `ms` (epoch ms) |106107## Key FPF Mnemonic Patterns108109Mnemonics follow the pattern `FPF-{SCOPE}_{METRIC}_{STAT}`:110- Scope: `ALLQHF` (all qualifying hedge funds), or a strategy such as `STRATEGY_CREDIT`,111 `STRATEGY_EQUITY`, `STRATEGY_MACRO`, `STRATEGY_RV` (relative value), `STRATEGY_FUTURES`, etc.112 ALLQHF leverage/cash metrics carry a gross-asset cohort segment: `GAVN10` (10 largest funds),113 `GAVN11TO50`, `GAVN51` (rest).114- Metrics: `GAV` (gross assets), `NAV` (net assets), `GNE` (gross notional exposure),115 `LEVERAGERATIO`, `CASHRATIO`, `COUNT`, plus stress-test scenarios (`CDSUP250BPS`, etc.)116- Stats: `SUM`, `AVERAGE` (equal-weighted, used for ALLQHF cohorts), `GAVWMEAN`/`NAVWMEAN`117 (asset-weighted, strategy-level only), `P5`, `P50`, `P95`, `PCTCHANGE`118119```python120# Verified series examples (all return data as of 2026)121mnemonics = [122 "FPF-ALLQHF_GAVN10_LEVERAGERATIO_AVERAGE", # 10 largest funds: leverage (equal-weighted)123 "FPF-STRATEGY_EQUITY_LEVERAGERATIO_GAVWMEAN", # Equity strategy: leverage (GAV-weighted)124 "FPF-ALLQHF_GAV_SUM", # All funds: gross assets (total $)125 "FPF-ALLQHF_NAV_SUM", # All funds: net assets (total $)126 "FPF-ALLQHF_GNE_SUM", # All funds: gross notional exposure127 "FICC-SPONSORED_REPO_VOL", # FICC: sponsored repo volume (daily)128]129```130131## Reference Files132133- **[references/api-overview.md](references/api-overview.md)** — Base URL, versioning, protocols, response format134- **[references/endpoints-metadata.md](references/endpoints-metadata.md)** — Mnemonics, query, and search endpoints with full parameter details135- **[references/endpoints-series-data.md](references/endpoints-series-data.md)** — Timeseries, spread, and full data endpoints136- **[references/endpoints-combined.md](references/endpoints-combined.md)** — Full, multifull, dataset, and category endpoints137- **[references/datasets.md](references/datasets.md)** — Dataset descriptions (fpf, tff, scoos, ficc) and dataset-specific notes138- **[references/parameters.md](references/parameters.md)** — Complete parameter reference with periodicity codes, how values139- **[references/examples.md](references/examples.md)** — Python examples: discovery, bulk download, spread analysis, DataFrame workflows